scrapy突破反爬的几种方式(三)

简介: 一些小的技巧配置,让我们的爬虫被识别的概率降低。cookies 的禁用在settings.py 文件中有一个参数是:COOKIES_ENABLED = False默认情况下是禁用的,request 就不会把 cookies 带进去。

一些小的技巧配置,让我们的爬虫被识别的概率降低。

cookies 的禁用

在settings.py 文件中有一个参数是:

COOKIES_ENABLED = False

默认情况下是禁用的,request 就不会把 cookies 带进去。在一些不需要登录就能访问的网站来说,这种方式是很好用的。

限速

scrapy 默认情况下在下载网页的空隙是 0 的,也就是返回一个页面,立刻就去下载了。
在 settings.py 文件中有一个参数是:

DOWNLOAD_DELAY = 0

这个参数的意思是下载器在下载同一个网站下一页面需要等待的时间,该选项可以用来限制爬取速度,减轻服务器压力。同时也支持小数。
那我们就知道了,在爬取过快的时候,适当限一下速,别让翻车了就不好。
还有更多的限速相关的文档请参考scrapy官方文档 点这里

settings

有些情况下,我们创建了几个 spider ,共用一个 setting 文件,可能有些spider 需要登录才能实现爬取,这是需要用到cookies 而另一些 spider 不需要登录就可以爬取到数据。这时我们可以在需要用cookies的spider文件中重写方法覆盖settings里的方法就可以了。
具体实现:在需要用cookies的spider中,添加以下代码:

custom_settings = {
          "COOKIES_ENABLED" : True
}
目录
相关文章
|
关系型数据库 MySQL 数据库
scrapy突破反爬的几种方式(二)
上回说到设置随机 User-Agent ,这次来一个随机代理 ip 的设置。 代理ip 在爬虫中,为了避免网站将我们的 ip 封掉,我们就要使用代理 ip 。
1525 0
|
4月前
|
数据采集 存储 数据处理
Scrapy:Python网络爬虫框架的利器
在当今信息时代,网络数据已成为企业和个人获取信息的重要途径。而Python网络爬虫框架Scrapy则成为了网络爬虫工程师的必备工具。本文将介绍Scrapy的概念与实践,以及其在数据采集和处理过程中的应用。
50 1
|
4月前
|
数据采集 调度 Python
Scrapy爬虫中合理使用time.sleep和Request
Scrapy爬虫中合理使用time.sleep和Request
|
4月前
|
数据采集 中间件 Python
Scrapy爬虫:利用代理服务器爬取热门网站数据
Scrapy爬虫:利用代理服务器爬取热门网站数据
|
24天前
|
数据采集 中间件 调度
Scrapy 爬虫框架的基本使用
Scrapy 爬虫框架的基本使用
|
2月前
|
数据采集 存储 NoSQL
Redis 与 Scrapy:无缝集成的分布式爬虫技术
Redis 与 Scrapy:无缝集成的分布式爬虫技术
|
3月前
|
数据采集 存储 中间件
Scrapy,作为一款强大的Python网络爬虫框架,凭借其高效、灵活、易扩展的特性,深受开发者的喜爱
【6月更文挑战第10天】Scrapy是Python的高效爬虫框架,以其异步处理、多线程及中间件机制提升爬取效率。它提供丰富组件和API,支持灵活的数据抓取、清洗、存储,可扩展到各种数据库。通过自定义组件,Scrapy能适应动态网页和应对反爬策略,同时与数据分析库集成进行复杂分析。但需注意遵守法律法规和道德规范,以合法合规的方式进行爬虫开发。随着技术发展,Scrapy在数据收集领域将持续发挥关键作用。
90 4
|
4月前
|
数据采集 存储 中间件
Python高效爬虫——scrapy介绍与使用
Scrapy是一个快速且高效的网页抓取框架,用于抓取网站并从中提取结构化数据。它可用于多种用途,从数据挖掘到监控和自动化测试。 相比于自己通过requests等模块开发爬虫,scrapy能极大的提高开发效率,包括且不限于以下原因: 1. 它是一个异步框架,并且能通过配置调节并发量,还可以针对域名或ip进行精准控制 2. 内置了xpath等提取器,方便提取结构化数据 3. 有爬虫中间件和下载中间件,可以轻松地添加、修改或删除请求和响应的处理逻辑,从而增强了框架的可扩展性 4. 通过管道方式存储数据,更加方便快捷的开发各种数据储存方式
|
3月前
|
数据采集 NoSQL MongoDB
使用多进程和 Scrapy 实现高效的 Amazon 爬虫系统
在这篇博客中,将展示如何使用多进程和 Scrapy 来构建一个高效的 Amazon 爬虫系统。通过多进程处理,提高爬虫的效率和稳定性,同时利用 Redis 进行请求调度和去重。
|
3月前
|
数据采集 中间件 调度
Scrapy:高效的网络爬虫框架
Scrapy是Python的网络爬虫框架,用于快速构建和开发爬虫。它提供简单API和全功能环境,包括请求调度、HTML解析、数据存储等,让开发者专注爬虫逻辑。Scrapy工作流程包括发起请求、下载响应、解析数据、处理数据和发送新请求。其核心组件有调度器、下载器、解析器(Spiders)和Item Pipeline,广泛应用于数据挖掘、信息监测、搜索引擎和自动化测试。有效技巧包括合理设置请求参数、编写高效解析器、使用代理和防反爬策略,以及利用中间件。随着大数据和AI的发展,Scrapy在爬虫领域的地位将持续巩固。【6月更文挑战第6天】
80 0