scrapy随机设置user-agent与代理ip

Scrapy框架 2019-01-02 1255

1.随机User-Agent设置

前言:设置User-Agent或者代理都需要使用scrapy的DownloaderMiddleware中的process_request方法。

process_request:# 每个交给下载器的request对象都会经过该方法,并期望返回response.当需要请求网站服务器时,可以在此方法中
设置一些参数。

from fake_useragent import UserAgent

class RandomUserAgentMiddleware(object):  
    def process_request(self, request, spider):  
        ua = UserAgent()  
        useragent = ua.random  
        request.headers['User-Agent'] = useragent  

2.动态设置代理

import random

class RandomIpMiddleware(object):  
    ips = [  
        'http://119.101.117.39:9999',  
        'http://121.61.44.149:9999',  
        'http://119.101.114.151:9999',  
    ]  

    def process_request(self, request, spider):  
        request.meta["proxy"] = random.choice(self.ips)  

 

标签:Scrapy框架

文章评论

评论列表

已有0条评论