scrapy随机更改User-Agent方法
发表于:2024-10-27 作者:千家信息网编辑
千家信息网最后更新 2024年10月27日,1 Scrapy设置User-Agent1.1 在settings.py文件中设置USER_AGENT参数即可实现1.1.1 使用固定User-Agent方法在settings.py文件中加入如下代码
千家信息网最后更新 2024年10月27日scrapy随机更改User-Agent方法
1 Scrapy设置User-Agent
1.1 在settings.py文件中设置USER_AGENT参数即可实现
1.1.1 使用固定User-Agent方法
在settings.py文件中加入如下代码即可(USER_AGENT是固定写法),具体使用什么agent可以自己更改下面蓝色字体内容。
USER_AGENT = 'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET CLR 2.0.50727; Media Center PC 6.0)
1.1.2 使用随机User-Agent方法
在settings.py文件中通过创建一个agent列表,然后通过从中随机取出1个赋值给USER_AGENT变量即可
代码如下:
import random
UserAgentList = [
"Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET CLR 2.0.50727; Media Center PC 6.0)",
"Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET CLR 1.0.3705; .NET CLR 1.1.4322)",
]
USER_AGENT = random.choice(UserAgentList)
1.1.3 使用第三方user-agent库(fake-useragent)实现设置agent方法
在settings.py文件中加入如下代码:
from fake_useragent import UserAgent
ua = UserAgent()
USER_AGENT = ua.random
1.2 通过写middleware方法实现
1.2.1 通过在setting文件中自己编写user-agent方法
在setting.py文件中写一个UserAgentList列表
UserAgentList = [
'Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1500.55 Safari/537.36',
'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_2) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1309.0 Safari/537.17'
]
在setting.py文件中启用DOWNLOADER_MIDDLEWARES,并且把默认的注释掉
DOWNLOADER_MIDDLEWARES = {
#'amazon.middlewares.MyCustomDownloaderMiddleware': 543,
'amazon.middlewares.MyUserAgentMiddleware': 543,
}
在middlewares.py文件中增加以下代码:
rom scrapy.downloadermiddlewares.useragent import UserAgentMiddleware
from amazon.settings import UserAgentList
import random
class MyUserAgentMiddleware(UserAgentMiddleware):
def __init__(self, user_agent=''):
self.user_agent = user_agent
def process_request(self, request, spider):
agent = random.choice(list(UserAgentList))
request.headers['User-Agent'] = agent
1.2.2 利用fake-useragent库设置User-Agent方法
安装fake-useragent库(useragent的库)
pip install fake-useragent
在middlewares.py文件中导入fake-useragent库
from fake_useragent import UserAgent
在middlewares.py文件中编写一个middleware中间件,
from fake_useragent import UserAgent
from scrapy.downloadermiddlewares.useragent import UserAgentMiddleware
class MyUserAgentMiddleware(UserAgentMiddleware):
def __init__(self, user_agent=''):
self.user_agent = user_agent
def process_request(self, request, spider):
ua = UserAgent()
request.headers['User-Agent'] = ua.random
在setting.py文件中启用DOWNLOADER_MIDDLEWARES,并且把默认的注释掉
DOWNLOADER_MIDDLEWARES = {
#'amazon.middlewares.MyCustomDownloaderMiddleware': 543,
'amazon.middlewares.MyUserAgentMiddleware': 543,
}
文件
方法
代码
注释
中加
中间件
从中
内容
写法
参数
变量
字体
第三方
蓝色
中导
中设
中通
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
搭建内网共享软件平台服务器
参观网络安全知识科普展活动
郧阳区互联网软件开发技术指导
回收矿机电脑服务器
入门软件开发进阶
数据库防伪技术方案
春雨服务器下载安装
上海优势软件开发服务价格
上位机用数据库
如何将程序分到云服务器
angular创建服务器
默认部署数据库连接配置在哪
电商服务器合法吗
网络技术服务公司成本
前瞻数据库包括什么数据
崩坏3其他服务器账号注销
网络安全运维服务包括
70tbc数据库
广西百旺网络服务器地址
第三届网络安全知识
庐江网络技术开发费用是多少
网络技术中的tap
河北电商软件开发哪家正规
数据库软件的不足之处
网络安全技术经验
惠普服务器开机马上掉电
软件开发团队有人不写代码吗
无法登陆谷歌服务器
简单万能数据库软件
dell服务器开机出错