setting.py
FEED_EXPORT_ENCODING = 'utf-8' # 解决保存的数据乱码的问题
HTTPERROR_ALLOWED_CODES = [301] #解决301重定向问题
MEDIA_ALLOW_REDIRECTS =True # 解决302重定向问题
解决反爬虫问题
方法一:设置下载延迟,防止访问过于频繁
DOWNLOAD_DELAY = 2 # 下载延迟为2s
方法二:禁用Cookies,防止网站通过cookie识别爬虫行为
COOKIES_ENABLED = False # 防止网站使用cookies识别爬虫
方法三:动态设置User-Agent,模拟不同用户的浏览器信息 详见:Scrapy研究探索(七)——如何防止被ban之策略大集合方法四:使用代理IP,模拟不同ip的访问 使用快代理 进入快代理官网-购买代理,短期可按如下设置购买: 在个人的私密代理订单下保存用户名、密码(后续会用到),点击生成API链接 根据个人需求生成链接 快代理提供了不同编程请求http代理服务器的基础代码样例:快代理SDK&代码样例,找到下图内容,根据提示进行操作 需要修改的部分:
myextend.py:
api_url = '替换为你的api链接'
middlewares.py
request.headers['Proxy-Authorization'] = basic_auth_header('用户名', '密码') # 白名单认证可注释此行
推荐链接
发表评论