scrapy的User-Agent中間件、代理IP中間件、cookies設置、多個爬蟲自定義settings設置


在scrapy的反爬中,常用的幾個配置,簡單總結了下:

 

User-Agent中間件:

from fake_useragent import UserAgent class RandomUserAgentMiddleware(object): def __init__(self, crawler): self.ua = UserAgent() def process_request(self, request, spider): request.headers.setdefault('User-Agent', self.ua.random) 

 

代理IP中間件:

class RandomProxyMiddleware(object):
'''
這只是一個簡單的演示
'''
def process_request(self, request, spider): ip = '' # 要用到的代理IP port = '' # 要使用的代理port request.meta['proxy'] = 'http://{}:{}'.format(ip, port)

 

cookies設置、多個爬蟲共用一個settings時,各自spider中的設置:

class BaiduSpider(scrapy.Spider): name = 'baidu' allowed_domains = ['baidu.com'] start_urls = ['https://www.baidu.com'] # custom_settings可以設置調整settings中的配置參數,以此來適配自己的spider。
    custom_settings = { 'COOKIES_ENABLED':True, # 在配置文件settings中可以設置成False, 在這個spider中這樣設置就可以開啟cookies了,其他的配置一樣適用 } def parse(self, response): pass

都是很簡單實用的配置

 

驗證碼:打碼平台比較簡單、省事、效率

 

注:每天進步一點點,或記錄或不記錄,都是自己的。記錄是怕遺忘,也是為了更好的想起!

 

 

 

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM