Scrapy进阶-防ban策略
发布日期:2021-08-22 06:43:19
浏览次数:1
分类:技术文章
本文共 1234 字,大约阅读时间需要 4 分钟。
在中我们学会了如何下载图片。但是在大批量爬取的时候我们最怕的就是被网站ban了。官网提供了几种方法:
1. download_delay
因为我们要大批量爬取网页,为了防止过分密集影响到别人的服务器,建议在setting.py中设置DOWNLOAD_DELAY=2,最好是在晚上睡觉的时候跑,这样虽然速度慢了一点,但是被dan的几率会降低很多哦。
2. 禁止cookies
cookies,是指某些网站为了辨别用户身份而储存在用户本地终端(Client Side)上的数据(通常经过加密),有的时候我们需要登录网站进行爬取数据,所以cookies很重要,但是当我们不需要让网站记住我们的是谁的时候,那么禁止cookies也就防止了可能使用cookies识别爬虫轨迹的网站得逞。
在settings.py中设置COOKIES_ENABLES=False。也就是不启用cookies middleware,不想web server发送cookies。3. 变换user agent
user agent是指包含浏览器信息、操作系统信息等的一个字符串,也称之为一种特殊的网络协议。服务器通过它判断当前访问对象是浏览器、邮件客户端还是网络爬虫。之前爬取豆瓣的时候我们就把原来自表爬虫身份的user agent改了。
如果只用一个user agent 爬取太多次也会让服务器产生怀疑的,所以我们需要大量的user agent用来建立user agent pool。并通过DOWNLOADER_MIDDLEWARES切换agent。
建立一个middlewares.py, 内容如下:
# -*- coding: utf-8 -*-import randomfrom scrapy.conf import settingsclass RandomUserAgent(object): """Randomly rotate user agents based on a list of predefined ones""" def __init__(self, agents): self.agents = agents @classmethod def from_crawler(cls, crawler): return cls(crawler.settings.getlist('USER_AGENTS')) def process_request(self, request, spider): ua = random.choice(self.agents) request.headers.setdefault('User-Agent', ua)
下面两个方法目前不会,先占位
4. 使用proxy
5. 分布式爬取
转载地址:https://blog.csdn.net/weixin_33738555/article/details/89616035 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
不错!
[***.144.177.141]2024年02月29日 18时09分48秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
PHP实现基于文本的莫斯电码生成器
2019-04-21
系统更新不及时 87%的Android设备易受攻击
2019-04-21
Web前端知识技能大汇总
2019-04-21
Python中异常重试解决方案
2019-04-21
Apache Spark 2.0 最快4月亮相 预计效能翻九倍
2019-04-21
索尼澄清:地震关闭非主产智能机图像传感器工厂
2019-04-21
瑞星发布今年上半年中国信息安全报告
2019-04-21
英特尔大裁员,芯片巨头将向终端渗透
2019-04-21
广告客户支出重点转向网络 广告催肥社交网站
2019-04-21
直指电网:比Stuxnet更具威胁的基建设施恶意软件Industroyer
2019-04-21
大数据让人看到更真实的历史
2019-04-21
印度智慧城市五年内规模达500亿美元 各大厂商奋力争抢
2019-04-21
黑客无聊会干啥?破解特斯拉来看电影
2019-04-21
IDC:2017年第一季度全球企业存储市场保持平稳
2019-04-21
CIO的IT战略:盖川崎创新艺术十步曲
2019-04-21
智能安防一只脚落地 或将成为人工智能“着陆场”
2019-04-21
CloudCC :移动时代CRM的竞争力来自何方?
2019-04-21
前FBI局长:虚拟货币妨碍了犯罪调查
2019-04-21
解决方案出发监控设备多维度提高竞争力
2019-04-21