腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
首页
学习
活动
专区
工具
TVP
最新优惠活动
返回腾讯云官网
小怪聊职场
专栏成员
举报
115
文章
303815
阅读量
62
订阅数
订阅专栏
申请加入专栏
全部文章(115)
爬虫(40)
python(29)
其他(19)
java(18)
数据库(10)
云数据库 SQL Server(9)
api(7)
scrapy(6)
分布式(5)
sql(4)
编程算法(4)
hadoop(4)
大数据(4)
云数据库 Redis(3)
tomcat(3)
spring(3)
微信(3)
ios(2)
json(2)
ajax(2)
android(2)
git(2)
nginx(2)
存储(2)
网络安全(2)
数据结构(2)
https(2)
创业(2)
管理(2)
ruby(1)
servlet(1)
node.js(1)
xml(1)
memcached(1)
mvc(1)
maven(1)
linux(1)
apache(1)
腾讯云测试服务(1)
人工智能(1)
网站(1)
电商(1)
企业(1)
http(1)
容器(1)
开源(1)
缓存(1)
运维(1)
shell(1)
jvm(1)
mybatis(1)
spring boot(1)
hashmap(1)
zookeeper(1)
seo(1)
二叉树(1)
jenkins(1)
kernel(1)
安全(1)
数据处理(1)
架构设计(1)
sas(1)
腾讯云开发者社区(1)
bat(1)
google(1)
ip(1)
mysql(1)
ps(1)
web开发(1)
搜索文章
搜索
搜索
关闭
爬虫总结 | 爬虫的那点事第一篇一、在(反)爬虫路上的心得和解决方案二、分布式爬虫的经验三、对于后期的内容精准推送有什么建议四、爬虫中遇到的一些坑五、视频落地和精准推送六、数据落地,后期做用户画像考虑
爬虫
分布式
现在慢慢开始对爬虫的一些工作做一个总结,这是第一篇文章,整理聊下做一个爬虫系统时的一些感悟。 一、在(反)爬虫路上的心得和解决方案 在讲反爬之前,先说阐明我的一个观点:反反爬的过程其实是一个和我们的客
黄小怪
2018-06-22
1.3K
0
爬虫架构 | 消息队列应用场景及ActiveMQ、RabbitMQ、RocketMQ、Kafka对比
爬虫
python
前言:在之前的业务中,使用了Kafka和RabbitMQ两种消息队列,这篇文章来做一个总结。 消息队列中间件是分布式系统中重要的组件,主要实现异步消息,应用解耦,流量削峰及消息通讯等功能。 下面举例
黄小怪
2018-05-21
4.9K
0
爬虫架构|利用Kafka处理数据推送问题(3)架构图
爬虫
python
一、需求 1、对于所有任务产生的实时数据,通过Kafka及时推送。 2、对于新加任务需要去历史全量数据表中获取该任务已有的历史数据。 3、爬虫集群在生产数据时需要去全量数据中进行下匹配,如果不存在
黄小怪
2018-05-21
1.2K
0
爬虫课堂(二十八)|Spider和CrawlSpider的源码分析
爬虫
python
我在爬虫课堂(二十五)|使用CrawlSpider、LinkExtractors、Rule进行全站爬取章节中说将对CrawlSpider的源码进行一个讲解,这篇文章就是来还账的,你们如果觉得好请点个赞。 一、Spider源码分析 在对CrawlSpider进行源码分析之前,先对Spider源码进行一个分析。 1.1、Spider介绍及主要函数讲解 Spider类定义了如何爬取某个(或某些)网站。包括了爬取的动作(是否跟进链接)以及如何从网页的内容中提取结构化数据(提取Item)。 Spider就是定义爬取的
黄小怪
2018-05-21
1.8K
0
爬虫课堂(二十七)|使用scrapy-redis框架实现分布式爬虫(2)源码分析
爬虫
python
我们在说Scrapy之所以不支持分布式,主要是因为有三大问题没有解决: requests队列不能集中管理。 去重逻辑不能集中管理。 保持数据逻辑不能集中管理。 scrapy-redis结合了分布式数据库Redis,重写了Scrapy一些比较关键的代码,将Scrapy变成一个可以在多个主机上同时运行的分布式爬虫。 scrapy-redis是github上的一个开源项目,可以直接下载到它的源代码 。 但是scrapy-redis的官方文档写的比较简洁,没有提及其运行原理。如果想全面的理解分布式爬虫的运行原理
黄小怪
2018-05-21
1.6K
0
爬虫架构|Celery+RabbitMQ快速入门(四)整合版本
爬虫
python
前面用三篇文章断断续续写了Celery+RabbitMQ相关的文章。 爬虫架构|Celery+RabbitMQ快速入门(一)用工作任务分配的案例介绍了它们是如何配合工作的,如下图4-1所示: 图
黄小怪
2018-05-21
2.1K
0
爬虫架构|利用Kafka处理数据推送问题(1)
python
爬虫
如下图1-1所示,我们之前爬虫集群在采集完数据之后是直接插入到MySQL数据库中,分发服务再消费MySQL里面的数据。这样的设计会有两个主要的问题: 随着数据量越来越大,数据保存和数据存取的响应效率是
黄小怪
2018-05-21
1.9K
0
爬虫架构|利用Kafka处理数据推送问题(2)
爬虫
java
apache
sas
在前一篇文章爬虫架构|利用Kafka处理数据推送问题(1)中对Kafka做了一个介绍,以及环境搭建,最后是选择使用阿里云的Kafka,这一篇文章继续说使用阿里云的Kafka的一些知识。 一、发布者最佳实践 发布的完整代码(根据自己的业务做相应处理): package com.yimian.controller.kafka; import java.util.Date; import java.util.Properties; import java.util.concurrent.Future; impo
黄小怪
2018-05-21
1.6K
0
爬虫课堂(二十四)|使用Splash爬取京东商城的动态信息(2)
python
爬虫
在前面的二十三章节,我们讲解搭建了Splash的环境,这一章节通过一个实战来讲解Splash的使用。 一、分析页面的数据是否是动态加载的数据 以https://item.jd.com/260024
黄小怪
2018-05-21
1.3K
0
爬虫课堂(二十五)|使用CrawlSpider、LinkExtractors、Rule进行全站爬取
爬虫
python
在爬虫课堂(二十二)|使用LinkExtractor提取链接中讲解了LinkExtractor的使用,本章节来讲解使用CrawlSpider+LinkExtractor+Rule进行全站爬取。 一、CrawlSpider介绍 Scrapy框架中分两类爬虫,Spider类和CrawlSpider类。Spider类的使用已经讲解了很多,但是如果想爬取某个网站的全站信息的话,CrawlSpider类是个非常不错的选择。CrawlSpider继承于Spider类,CrawlSpider是爬取那些具有一定规则网站
黄小怪
2018-05-21
1.3K
0
爬虫课堂(二十六)|使用scrapy-redis框架实现分布式爬虫(1)
爬虫
scrapy
云数据库 Redis
分布式
到了讲scrapy-redis框架的时候啦,在讲它之前先提出三个问题: 我们要使用分布式,那么分布式有什么优点? Scrapy不支持分布式,是为什么? 如果要使Scrapy支持分布式,需要解决哪些问题? scrapy-redis是怎么解决这些问题的? 接下来,我们逐个回答: 分布式的主要优点包括如下两种: 1)充分利用多机器的宽带加速爬取。 2)充分利用多机的IP加速爬取速度。 在爬虫课堂(十六)|Scrapy框架结构及工作原理章节中,我们已经讲解过Scrapy运行流程,如下图26-1所示: 1)当爬
黄小怪
2018-05-21
1.5K
0
爬虫课堂(二十二)|使用LinkExtractor提取链接
爬虫
python
在爬取一个网站时,要爬取的数据通常不全是在一个页面上,每个页面包含一部分数据以及到其他页面的链接。比如前面讲到的获取简书文章信息,在列表页只能获取到文章标题、文章URL及文章的作者名称,如果要获取文章的详细内容和文章的评论只能去到文章的详情页中获取。 获取数据的方法在前面章节中已经讲解过,当然也使用Selector获取过文章URL,那么LinkExtractor又有什么特别之处呢?为什么说LinkExtrator非常适合整站抓取?下面将对LinkExtrator做一个介绍。 一、LinkExtracto
黄小怪
2018-05-21
2.2K
0
爬虫课堂(二十一)|使用FilesPipeline和ImagesPipeline下载文件和图片
爬虫
python
在上一章节,我们学会了使用Item Pipeline处理数据,而有时候我们可能需要下载爬虫网站中的文件信息,比如图片、视频、WORD文档、PDF文档、压缩包等。 Scrapy提供了两个Item Pipeline来下载文件和图片,它们分别是FilesPipeline和ImagesPipeline。 一、FilesPipeline和ImagesPipeline 这两个管道都实现了: 避免重复下载。 可以指定下载后保存的目录。 图片也是文件,下载图片本质上也是下载文件,Images Pipeline是Fil
黄小怪
2018-05-21
1K
0
爬虫架构|Celery+RabbitMQ快速入门(三)
爬虫
python
在之前两章节中,简单介绍了Celery+RabbitMQ,以及它们之间的协作过程(见文章爬虫架构|Celery+RabbitMQ快速入门(一)和爬虫架构|Celery+RabbitMQ快速入门(二))。 我们一直在说“Celery是一个基于Python开发的分布式异步消息队列,可以轻松实现任务的异步处理。它的基本工作就是管理分配任务到不同的服务器,并且取得结果”,可以得知,我们之所以使用它是看中了它的分布式,我们使用的场景也是用它做分布式爬虫架构(为什么不选用scrapy-redis?以及它们之间的区别,
黄小怪
2018-05-21
2.1K
0
爬虫课堂(二十三)|使用Splash爬取动态页面(1)
python
爬虫
在之前的章节中,爬取的都是静态页面中的信息,随着越来越多的网站开始用JS在客户端浏览器动态渲染网站,导致很多需要的数据并不能在原始的HTML中获取,再加上Scrapy本身并不提供JS渲染解析的功能,那么如何通过Scrapy爬取动态网站的数据呢?这一章节我们将学习这些知识。 通常对这类网站数据的爬取采用如下两种方法: 通过分析网站,找到对应数据的接口,模拟接口去获取需要的数据(一般也推荐这种方式,毕竟这种方式的效率最高),但是很多网站的接口隐藏的很深,或者接口的加密非常复杂,导致无法获取到它们的数据接口,此
黄小怪
2018-05-21
2.3K
0
爬虫课堂(十九)|编写Spider之使用Item封装数据
爬虫
python
在前面的章节我们学习了使用Selector提取数据,那么接下来要做的就是如何封装这些数据。以提取简书文章信息为例,我们需要获取文章标题,文章URL和文章的作者名称信息字段。应该用怎样的数据结构来封装这些零散的信息字段呢?最简单的方式就是使用Python字典(dict),如下。 jianshu = ----{ --------'title': '文章标题', --------'url': '文章URL', --------'author_name':'文章的作者' ----} 但是使用Python字典存
黄小怪
2018-05-21
925
0
爬虫课堂(十六)|Scrapy框架结构及工作原理
python
爬虫
Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中。其最初是为了页面抓取 (更确切来说, 网络抓取 )所设计的, 也可以
黄小怪
2018-05-21
1.6K
0
爬虫课堂(十七)|Scrapy爬虫开发流程
爬虫
python
Scrapy爬虫开发流程一般包括如下步骤: 1)确定项目需求。 2)创建Scrapy项目。 3)定义页面提取的Item。 4)分析被爬对象页面。 5)编写爬取网站的Spider并提取Item
黄小怪
2018-05-21
1.3K
0
爬虫课堂(十八)|编写Spider之使用Selector提取数据
爬虫
python
上个章节说到从Spider的角度来看,爬取的运行流程如下循环: 以初始的URL初始化Request,并设置回调函数。当该Request下载完毕并返回时,将生成Response,并作为参数传给该回调函数。 在回调函数内分析返回的(网页)内容,返回Item对象或者Request或者一个包括二者的可迭代容器。返回的Request对象之后会经过Scrapy处理,下载相应的内容,并调用设置的callback函数(函数可相同)。 在回调函数内,可以使用选择器(Selectors) 来分析网页内容,并根据分析的数据生成I
黄小怪
2018-05-21
1.2K
0
爬虫课堂(二十)|编写Spider之使用Item Pipeline处理数据
爬虫
python
在前面的章节中,讲解了提取数据和使用Item封装数据,接下来讲解如何处理爬取到的数据。 在Scrapy框架中,Item Pipeline是处理数据的组件,如下图20-1所示,当Item在Spider
黄小怪
2018-05-21
622
0
点击加载更多
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
立即查看
Python精品学习库
代码在线跑,知识轻松学
立即查看
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
立即体验
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
立即查看
领券
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档