首页 > 技术文章 > scrapy——中间件UserAgent代理

shouzhong 2017-11-13 16:34 原文

pip install fake-useragent

使用说明:
from fake_useragent import UserAgent
# 实例化一个UserAgent对象
ua = UserAgent()

# 调用相应的浏览器类型属性就可以生成相应的User-Agent
ua.chrome
ua.firefox
ua.ie
ua.random

  在scrapy下载中间件中设置自动切换指定类型User-Agent代理

from fake_useragent import UserAgent
from .settings import USER_AGETN_TYPE

class RandomUserAgentMiddleware(object):
# 随机更换User-Agent
def __init__(self):
super(RandomUserAgentMiddleware, self).__init__()
self.ua = UserAgent()
self.ua_type = USER_AGENT_TYPE # 在settings中配置指定的ua类型:USER_AGETN_TYPE = 'chrome',任何想要的类型都可以,也可以是随机类型random
    def process_request(self, request, spider):
def get_ua():
return getattr(self.ua, self.ua_type)
if get_ua():
request.headers.setdefault('User-Agent', get_ua())

  

推荐阅读