python fake_useragent模块 user-agent的获取
1. UserAgent 模块使用
from fake_useragent import UserAgent ua = UserAgent() # 实例化,实例化时需要联网但是网站不太稳定 print(ua.ie) # 随机打印一个 ie 浏览器的头
print(ua.random) # 随机打印 User-Agent
2. 模块下载
pip install fake-useragent
3. 查看 fake-useragent 模块下载 User-Agent 的下载地址
下载地址:
http://d2g6u4gh6d9rq0.cloudfront.net/browsers/fake_useragent_0.1.10.json 最后的 fake_useragent_0.1.10.json 中的 0.1.10 指的是版本 查看版本
https://pypi.org/project/fake-useragent/
// 也是模块,文档
4. 查看 fake-useragent 模块下载 User-Agent 的下载地址
下载地址:
http://d2g6u4gh6d9rq0.cloudfront.net/browsers/fake_useragent_0.1.10.json 最后的 fake_useragent_0.1.10.json 中的 0.1.10 指的是版本 查看版本
https://pypi.org/project/fake-useragent/
// 也是模块,文档
如何查看:
F:\pyenv\pa_chong_env\Lib\site-packages\fake_useragent\settings.py
就在 模块的 fake_useragent
的配置文件settings.py
文件中
5. 将User-Agent 全部下载
5.1. 下载
import requests url = "http://d2g6u4gh6d9rq0.cloudfront.net/browsers/fake_useragent_0.1.10.json" response = requests.get(url) with open("user_agent.json", 'w') as fp:
fp.write(response.text)
5.2. 封装一个随机类
从文件中筛选出指定的值
import json
import random class User_Agent(object):
"""
直接将 网页的源码复制下载之后, 可以使用此类进行解析
self.user_agent_data 是 读取 文件的,
"""
def __init__(self, json_file="user_agent.json"):
"""
:param json_file: 下载后内容保存的文件
"""
self.json_file = json_file
self.ua_data = self.user_agent_data().get("browsers")
self.b = ['chrome', 'opera', 'firefox', 'safari', 'internetexplorer']
# -------
self.chrome = lambda: random.choice(self.ua_data.get("chrome"))
self.opera = lambda: random.choice(self.ua_data.get("opera"))
self.firefox = lambda: random.choice(self.ua_data.get("firefox"))
self.safari = lambda: random.choice(self.ua_data.get("safari"))
self.ie = lambda: random.choice(self.ua_data.get("internetexplorer"))
self.random = lambda: random.choice(self.ua_data.get(random.choice(self.b))) def user_agent_data(self):
with open(self.json_file, "r") as fp:
data = fp.read()
return json.loads(data) ua = User_Agent() for i in range(10):
print(ua.random())
python fake_useragent模块 user-agent的获取的更多相关文章
- python-网络安全编程第十天(web目录扫描&&fake_useragent模块&&optionParser模块)
前言 昨天的内容没有完成今天花了点时间继续完成了 感觉自己的学习效率太低了!想办法提高学习效率吧 嗯 ,再制定下今天的目标 开始健身. python fake_useragent模块 1.UserAg ...
- Python tldextract模块准确获取域名和后缀
Python tldextract 模块 - 功能说明 tldextract准确地从URL的域名和子域名分离通用顶级域名或国家顶级域名. 例如,http://www.google.com,你只想取出连 ...
- Python(phone)模块获取手机号归属地、区号、运营商等
Python(phone)模块获取手机号归属地.区号.运营商等 一.我使用的是python3,可以自行搜索下载 二.安装phone模块, pip install phone 三.测试代码如下: fro ...
- python xlrd 模块(获取Excel表中数据)
python xlrd 模块(获取Excel表中数据) 一.安装xlrd模块 到python官网下载http://pypi.python.org/pypi/xlrd模块安装,前提是已经安装了pyt ...
- Python标准模块--threading
1 模块简介 threading模块在Python1.5.2中首次引入,是低级thread模块的一个增强版.threading模块让线程使用起来更加容易,允许程序同一时间运行多个操作. 不过请注意,P ...
- python基础-模块
一.模块介绍 ...
- Python Paramiko模块与MySQL数据库操作
Paramiko模块批量管理:通过调用ssh协议进行远程机器的批量命令执行. 要使用paramiko模块那就必须先安装这个第三方模块,仅需要在本地上安装相应的软件(python以及PyCrypto), ...
- Python常用模块之sys
Python常用模块之sys sys模块提供了一系列有关Python运行环境的变量和函数. 常见用法 sys.argv 可以用sys.argv获取当前正在执行的命令行参数的参数列表(list). 变量 ...
- Python time模块学习
Python time模块提供了一些用于管理时间和日期的C库函数,由于它绑定到底层C实现,因此一些细节会基于具体的平台. 一.壁挂钟时间 1.time() time模块的核心函数time(),它返回纪 ...
随机推荐
- tesseract系列(4) -- tesseract训练问题总结
1. 每次训练模型删除目录下,上述重复的名字 2. 生成inttemp.pffmtable文件的时候,如果下述命令(1)不行的话,或者报错,使用命令(2) (1)mftraining -F font_ ...
- 吴裕雄--天生自然python学习笔记:python 文件批量查找
在多个文本文件中查找 我们首先来学习文本文件的查找字符 . 我们通过 os.walk 扩大查找范围, 查找指定目录和子目录下的文件. 应用程序总览 读取 当 前目录及子目录下的所有 PY 和 txt ...
- mean|mode|median|sample的表达方式
Measures of Center measures of central tendency:the center or most typical value:average Mean:its ar ...
- python之golb模块
golb模块可以查找符合特定规则的文件路径名,查找文件名使用三种不同的匹配符:‘*’,‘?’,‘[]’.'*'匹配0个或多个字符,'?‘匹配单个字符,’[]‘匹配指定范围内的字符,比如[A-Z] 1. ...
- django框架基础-django模板语言-长期维护
################## 常用的模板语言 ####################### # django的模板语言, # # 只需要记两种特殊符号: # # {{ } ...
- 源码中TODO、FIXME和XXX的含义
前言: 今天在阅读Qt Creator的源代码时,发现一些注释中有FIXME英文单词,用英文词典居然查不到其意义! 实际上,在阅读一些开源代码时,我们常会碰到诸如:TODO.FIXME和XXX的单词 ...
- 深入JVM内核--GC参数
堆 GC参数 - 串行收集器 最古老,最稳定 效率高 可能会产生较长的停顿 -XX:+UseSerialGC 新生代.老年代使用串行回收 新生代复制算法 老年代标记-压缩 0.844: [GC 0.8 ...
- Nginx笔记:支持对用户提交URL和服务的URL不一致时,保持对POST提交的支持
用户访问的URL和服务的URL不一致,需要对URL修改,同时使用的是POST提交方式 location ~* ^/portalproxy/([-]*)/portal$ { #rewrite '^/po ...
- 0-1背包问题-DP
中文理解: 0-1背包问题:有一个贼在偷窃一家商店时,发现有n件物品,第i件物品价值vi元,重wi磅,此处vi与wi都是整数.他希望带走的东西越值钱越好,但他的背包中至多只能装下W磅的东西,W为一整数 ...
- 基于Dockerfile制作tomcat镜像
Docker 概述: 在前面的例子中,我们从下载镜像,启动容器,在容器中输入命令来运行程序,这些命令都是手工一条条往里输入的,无法重复利用,而且效率很低.所以就需要一种文件或脚本,我们把想执行的操 ...