PythonのScrapy爬虫実戦--サイトの逆登りを迂回
1569 ワード
1、ランダムUAの設定
修正py
修正するpy
2、IPエージェントプールの設置
テストWebサイト:http://icanhazip.comWebサイトは、プロキシipが正常に設定されているかどうかを確認するために、現在要求されているipアドレスを返すことができます.
修正するpy
ここではオープンソースの無料ipエージェントプールをお勧めします.もちろん、これはテストを学ぶためのものです.需要量が大きいのは、各エージェントipプラットフォームに行って買いましょう.
https://github.com/jhao104/proxy_pool
3、referの追加
皆さん、伝言討論を歓迎します.三人でいいです.必ず私の先生がいます.
修正py
from fake_useragent import UserAgent
class RandomUserAgentMiddleware(object):
def process_request(self, request, spider):
ua = UserAgent()
request.headers['User-Agent'] = ua.random
修正するpy
# Enable or disable downloader middlewares
# See https://docs.scrapy.org/en/latest/topics/downloader-middleware.html
DOWNLOADER_MIDDLEWARES = {
# 'csdn_xila.middlewares.CsdnXilaDownloaderMiddleware': 543,
'scrapy_test.middlewares.RandomUserAgentMiddleware': 543,
}
2、IPエージェントプールの設置
テストWebサイト:http://icanhazip.comWebサイトは、プロキシipが正常に設定されているかどうかを確認するために、現在要求されているipアドレスを返すことができます.
class ProxyMiddleware(object):
def process_request(self, request, spider):
request.meta["proxy"] = "http://" + ip( )
修正するpy
# Enable or disable downloader middlewares
# See https://docs.scrapy.org/en/latest/topics/downloader-middleware.html
DOWNLOADER_MIDDLEWARES = {
# 'csdn_xila.middlewares.CsdnXilaDownloaderMiddleware': 543,
'csdn_xila.middlewares.RandomUserAgentMiddleware': 543,
'csdn_xila.middlewares.ProxyMiddleware': 542,
}
ここではオープンソースの無料ipエージェントプールをお勧めします.もちろん、これはテストを学ぶためのものです.需要量が大きいのは、各エージェントipプラットフォームに行って買いましょう.
https://github.com/jhao104/proxy_pool
3、referの追加
default_headers = {
'referer': 'https://www.baidu.com/',
}
皆さん、伝言討論を歓迎します.三人でいいです.必ず私の先生がいます.