对每个请求使用假用户代理提供的随机用户代理

scrapy-fake-useragent的Python项目详细描述


PyPI versionRequirements Status

垃圾假冒用户代理

基于 fake-useragent。它 基于usage statistics提取User-Agent字符串 来自real world database

安装

最简单的方法是通过pip安装

pip install scrapy-fake-useragent

配置

关闭内置的UserAgentMiddleware并添加 RandomUserAgentMiddleware

在scrapy中>;=1.0:

DOWNLOADER_MIDDLEWARES={'scrapy.downloadermiddlewares.useragent.UserAgentMiddleware':None,'scrapy_fake_useragent.middleware.RandomUserAgentMiddleware':400,}

在scrapy<;1.0中:

DOWNLOADER_MIDDLEWARES={'scrapy.contrib.downloadermiddleware.useragent.UserAgentMiddleware':None,'scrapy_fake_useragent.middleware.RandomUserAgentMiddleware':400,}

配置用户代理类型

有一个配置参数RANDOM_UA_TYPE默认为random,它被逐字传递给伪用户代理。因此,可以将其设置为firefox,以仅模拟firefox浏览器。不过,最有用的方法是使用desktopmobile值分别发送桌面或移动字符串。

使用 FLASY代理< EH3>

要与随机代理(如scrapy-proxies)的中间件一起使用,您需要:

  1. RANDOM_UA_PER_PROXY设置为true以允许每个代理进行切换
  2. RandomUserAgentMiddleware的优先级设置为大于scrapy-proxies,以便在句柄ua之前设置代理

配置假用户代理回退

有一个配置参数FAKEUSERAGENT_FALLBACK默认为 None。可以将其设置为字符串值,例如MozillaYour favorite browser,此配置可以完全禁用任何 讨厌的例外。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
从方法名创建java查询无效。正在尝试筛选可分页的   构造函数中的java异常消息   java为什么我在MAC OS X 10.11上看不到java_主路径?   java如何澄清用户的输入是否是二进制数?   java在ant脚本中将JVM参数传递给clover   从txt文件读取调查结果并输出每个调查答案频率的Java程序   java进程引擎。getDefaultProcessEngine()空点异常   java SpringSecurity:忽略服务器名的别名并强制重新登录   java pythonsocket[Errno 57]socket未连接,尽管响应良好   使用Commons或Guava将文本文件转换为Java列表<String>   在hadoop中使用相同的输入文件为两个不同的任务创建两个输出文件   java方法toArray()不处理列表   我的应用程序中的java试图在Web服务器中更新数据库时获取通知。如何做到这一点?   java无法选择ListView项   java如何将变量传递给扩展类的方法   java使用片段中的数据绑定和相关活动的不同包   java出现读入文件问题,并将其设置为变量   JavaJSF2。0@EJB注入@ViewScoped导致MyFaces成为CFNE   java如何创建spring0boot项目?