scrapy爬虫的User-Agent是在下载器中间件中设置的,即middlewares.py文件。
具体步骤如下:
1.在settings.py中设置MY_USER_AGENT列表,列表中包含可选的user-agents;
2.在middlewares.py中自定义一个类RandomUserAgentMiddleware(名字自取);
3.在该类中通过from_crawler方法获取settings.py中设置好的User-Agent即crawler.settings.get()或者通过spider.settings.get()方法获取;
4.从获取的User-Agent中通过随机函数random.choice()随机选择并赋予request.headers[‘User-Agent’];
5.最后,将该自定义的类添加到settings.py文件中的DOWNLOADMIDDLEWARES中。
class RandomUserAgentMiddleware(object):
def __init__(self,user_agent):
self