setting.py
FEED_EXPORT_ENCODING = 'utf-8'
HTTPERROR_ALLOWED_CODES = [301]
MEDIA_ALLOW_REDIRECTS =True
解决反爬虫问题
DOWNLOAD_DELAY = 2
- 方法二:禁用Cookies,防止网站通过cookie识别爬虫行为
COOKIES_ENABLED = False
- 方法三:动态设置User-Agent,模拟不同用户的浏览器信息
详见:Scrapy研究探索(七)——如何防止被ban之策略大集合 - 方法四:使用代理IP,模拟不同ip的访问
使用快代理
进入快代理官网-购买代理,短期可按如下设置购买:
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/fb45d255596995a971d32a55454082ba.png#pic_center)
在个人的私密代理订单下保存用户名、密码(后续会用到),点击生成API链接
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/6bf655e6836bffb6dcc05bc2ced319a4.png#pic_center)
根据个人需求生成链接
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/9c9efedd2707119a862a7e403b0cfba0.png#pic_center)
快代理提供了不同编程请求http代理服务器的基础代码样例:快代理SDK&代码样例,找到下图内容,根据提示进行操作
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/f5b0b0ffd3a6ea98966d8f332757ee56.png#pic_center)
需要修改的部分:
myextend.py:
api_url = '替换为你的api链接'
middlewares.py
request.headers['Proxy-Authorization'] = basic_auth_header('用户名', '密码')