精选文章 分布式爬虫

分布式爬虫

作者:aixie0138 时间: 2021-02-07 01:32:15
aixie0138 2021-02-07 01:32:15
【摘要】pip install scrapy-redisscrapy genspider -t crawl xxx www.xxx.com
 class ChoutiSpider(RedisCrawlSpider): name = 'chouti' # allowed_domains = ['www.chouti.com'] # start_urls = ['http://www.chouti.co...
pip install scrapy-redis

scrapy genspider -t crawl xxx www.xxx.com

class ChoutiSpider(RedisCrawlSpider):
name = 'chouti'
# allowed_domains = ['www.chouti.com']
# start_urls = ['http://www.chouti.com/']
redis_key = 'chouti'
rules = (
Rule(LinkExtractor(allow=r'/hot/\d+'), callback='parse_item', follow=True),
)
#setting 中设置


使用组件中封装好的可以被共享的管道类: ITEM_PIPELINES = { 'scrapy_redis.pipelines.RedisPipeline': 400 }

配置调度器(使用组件中封装好的可以被共享的调度器) # 增加了一个去重容器类的配置, 作用使用Redis的set集合来存储请求的指纹数据, 从而实现请求去重的持久化
DUPEFILTER_CLASS = "scrapy_redis.dupefilter.RFPDupeFilter" # 使用scrapy-redis组件自己的调度器 SCHEDULER = "scrapy_redis.scheduler.Scheduler" # 配置调度器是否要持久化, 也就是当爬虫结束了, 要不要清空Redis中请求队列和去重指纹的set。如果是True, 就表示要持久化存储, 就不清空数据, 否则清空数据 SCHEDULER_PERSIST = True 指定存储数据的redis: REDIS_HOST = 'redis服务的ip地址' REDIS_PORT = 6379


配置redis数据库的配置文件 取消保护模式:protected-mode no bind绑定: #bind 127.0.0.1 - 启动redis 6.执行分布式程序 scrapy runspider xxx.py 7.向调度器队列中仍入一个起始url: 在redis-cli中执行:

 

转载于:https://www.cnblogs.com/ls1997/p/10878209.html

勿删,copyright占位
您找到想要的结果了吗?
分布式爬虫
提交成功!非常感谢您的反馈,我们会继续努力做到更好
分享文章到微博
分享文章到朋友圈

上一篇:Weex--条形码生成

下一篇:leetcode第四题:寻找两个有序数组的中位数

您可能感兴趣

  • 爬虫cookiejar模块使用,cookie管理

    简介 有时候我们需要爬一些需要登录才能进入网页,这个时候就要用到cookie相关的一些模块来操作了 内置的http包里包含了cookie相关的一些模块,通过她们我们可以自动使用cookie CookieJar 管理储存cookie,像传出的http请求添加cookiecookie存储在内存中,CookieJar示例回收后cookie将自动...

  • 第一次写爬虫

    2019独角兽企业重金招聘Python工程师标准>>> 准备工作 http请求头概念 1、Accept :请求报头域,用于指定客户端可接受哪些类型的信息。 2、Accept-Language :指定客户端可接受的语言类型。 3、Accept-Encoding :指定客户端可接受的内容编码。 4、Host :用于指定...

  • Python爬虫项目,获取所有网站上的新闻,并保存到数据库中,解析html网页等

    1、需求说明 需求: 爬取虎嗅网站的所有新闻,并保存到数据库中。 http://www.huxiu.com 技术: 1、爬虫 获取服务器的资源(urllib) 解析html网页(BeautifulSoup) 2、数据库技术 数据库 MySQLdb 业务逻辑的分析: (1)、虎嗅网站的新闻,包括首页和分页信息(下一页) (2)、需要从首页的...

  • 分布式版本控制系统Git的安装与使用

       作业要求来自于:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/2097  1.下载安装配置用户名和邮箱。 (1)下载安装Github配置 (2)配置用户名命令:$git config --global user.name "ShumeiHe" (3)配置邮箱...

  • JAVA爬虫模拟执行页面点击事件

    所需依赖: <dependency> <groupId>net.sourceforge.htmlunit</groupId> <artifactId>com.springsource.com.gargoylesoftware.htmlunit</artifactId> <version>2.6.0</version...

  • python爬虫-使用xpath方法

    #coding=utf-8 import re from lxml import etree import requests response = requests.get("http://yeves.cn/") content = response.content.decode() html = etree.HTML(conte...

  • 分布式锁redis和zookeeper实现区别

    分布式锁redis和zookeeper实现区别 一.分布式锁解决方案 1.采用数据库 不建议 性能不好 jdbc 2.基于Redis实现分布式锁(setnx)setnx也可以存入key,如果存入key成功返回1,...

  • Java爬虫HTTPClient -- 连接池

    如果每次请求都要创建HTTPClient,会有频繁创建和销毁的问题,可以使用连接池来解决这个问题。 测试一下代码,并断点查看每次获取的HTTPClient都是不一样的。 直接上代码 package xxx.xxx...

CSDN

CSDN

中国开发者社区CSDN (Chinese Software Developer Network) 创立于1999年,致力为中国开发者提供知识传播、在线学习、职业发展等全生命周期服务。
分布式爬虫介绍:华为云为您免费提供分布式爬虫在博客、论坛、帮助中心等栏目的相关文章,同时还可以通过 站内搜索 查询更多分布式爬虫的相关内容。| 移动地址: 分布式爬虫 | 写博客