摘要: [TOC] 增量式爬虫 当我们在浏览相关网页的时候会发现,某些网站定时会在原有网页数据的基础上更新一批数据,例如某电影网站会实时更新一批最近热门的电影。小说网站会根据作者创作的进度实时更新最新的章节数据等等。那么,类似的情景,当我们在爬虫的过程中遇到时,我们是不是需要定时更新程序以便能爬取到网站中最 阅读全文
posted @ 2019-05-04 18:24 孔辉 阅读(920) 评论(0) 推荐(0) 编辑
摘要: [TOC] 基于scrapy redis两种形式的分布式爬虫 1.scrapy框架是否可以自己实现分布式? 不可以。原因有二。 其一:因为多台机器上部署的scrapy会各自拥有各自的调度器,这样就使得多台机器无法分配start_urls列表中的url。(多台机器无法共享同一个调度器) 其二:多台机器 阅读全文
posted @ 2019-05-04 18:23 孔辉 阅读(299) 评论(0) 推荐(0) 编辑
摘要: [TOC] scrapy框架的日志等级和请求传参, 优化效率 Scrapy的日志等级 在使用scrapy crawl spiderFileName运行程序时,在终端里打印输出的就是scrapy的日志信息。 日志信息的种类: ERROR : 一般错误 WARNING : 警告 INFO : 一般的信息 阅读全文
posted @ 2019-05-04 18:22 孔辉 阅读(318) 评论(0) 推荐(0) 编辑
摘要: [TOC] UA池和代理池 一. 下载代理池 下载中间件(Downloader Middlewares) 位于scrapy引擎和下载器之间的一层组件。 作用: (1)引擎将请求传递给下载器过程中, 下载中间件可以对请求进行一系列处理。比如设置请求的 User Agent,设置代理等 (2)在下载器完 阅读全文
posted @ 2019-05-04 18:22 孔辉 阅读(366) 评论(0) 推荐(0) 编辑
摘要: [TOC] Python网络爬虫之Scrapy框架(CrawlSpider) 提问:如果想要通过爬虫程序去爬取”糗百“全站数据新闻数据的话,有几种实现方法? 方法一:基于Scrapy框架中的Spider的递归爬取进行实现(Request模块递归回调parse方法)。 方法二:基于CrawlSpide 阅读全文
posted @ 2019-05-04 18:21 孔辉 阅读(430) 评论(0) 推荐(0) 编辑
摘要: [TOC] scrapy框架之递归解析和post请求 递归爬取解析多页页面数据 需求:将糗事百科所有页码的作者和段子内容数据进行爬取切持久化存储 需求分析:每一个页面对应一个url,则scrapy工程需要对每一个页码对应的url依次发起请求,然后通过对应的解析方法进行作者和段子内容的解析。 实现方案 阅读全文
posted @ 2019-05-04 18:20 孔辉 阅读(337) 评论(0) 推荐(0) 编辑
摘要: [TOC] scrapy中selenium的应用 1.案例分析: 需求:爬取网易新闻的国内板块下的新闻数据 需求分析:当点击国内超链进入国内对应的页面时,会发现当前页面展示的新闻数据是被动态加载出来的,如果直接通过程序对url进行请求,是获取不到动态加载出的新闻数据的。则就需要我们使用seleniu 阅读全文
posted @ 2019-05-04 18:19 孔辉 阅读(282) 评论(0) 推荐(0) 编辑
摘要: [TOC] scrapy框架持久化存储 1. 基于终端指令的持久化存储 保证爬虫文件的parse方法中有可迭代类型对象(通常为列表or字典)的返回,该返回值可以通过终端指令的形式写入指定格式的文件中进行持久化操作。 执行输出指定格式进行存储:将爬取到的数据写入不同格式的文件中进行存储 scrapy 阅读全文
posted @ 2019-05-04 18:18 孔辉 阅读(380) 评论(0) 推荐(0) 编辑
摘要: [TOC] scrapy框架简介和基础应用 什么是Scrapy? Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,非常出名,非常强悍。所谓的框架就是一个已经被集成了各种功能(高性能异步下载,队列,分布式,解析,持久化等)的具有很强通用性的项目模板。对于框架的学习,重点是要学习其框 阅读全文
posted @ 2019-05-04 18:17 孔辉 阅读(296) 评论(0) 推荐(0) 编辑
摘要: [TOC] 浏览器控制之 selenium,phantomJs谷无头浏览器 selenium 什么是selenium? 是Python的一个第三方库,对外提供的接口可以操作浏览器,然后让浏览器完成自动化的操作。 环境搭建 安装selenum:pip install selenium 获取某一款浏览器 阅读全文
posted @ 2019-05-04 18:16 孔辉 阅读(677) 评论(0) 推荐(0) 编辑
摘要: [TOC] 移动端数据爬取 移动端抓包工具fiddler 什么是Fiddler Fiddler是位于客户端和服务器端的HTTP代理,也是目前最常用的http抓包工具之一 。 它能够记录客户端和服务器之间的所有 HTTP请求,可以针对特定的HTTP请求,分析请求数据、设置断点、调试web应用、修改请求 阅读全文
posted @ 2019-05-04 18:16 孔辉 阅读(282) 评论(0) 推荐(0) 编辑
摘要: [TOC] 图片懒加载技术 一. 案例分析:抓取站长素材http://sc.chinaz.com/中的图片数据 !/usr/bin/env python coding:utf 8 import requests from lxml import etree if __name__ == "__mai 阅读全文
posted @ 2019-05-04 18:14 孔辉 阅读(1206) 评论(0) 推荐(0) 编辑
摘要: [TOC] 验证码处理 云打码平台处理验证码的实现流程: 1.对携带验证码的页面数据进行抓取 2.可以将页面数据中验证码进行解析,验证码图片下载到本地 3.可以将验证码图片提交给三方平台进行识别,返回验证码图片上的数据值 云打码平台: 1.在官网中进行注册(普通用户和开发者用户) 2.登录开发者用户 阅读全文
posted @ 2019-05-04 18:13 孔辉 阅读(267) 评论(0) 推荐(0) 编辑
摘要: [TOC] 基于requests模块的cookie,session和线程池爬取 有些时候,我们在使用爬虫程序去爬取一些用户相关信息的数据(爬取张三“人人网”个人主页数据)时,如果使用之前requests模块常规操作时,往往达不到我们想要的目的,例如: !/usr/bin/env python cod 阅读全文
posted @ 2019-05-04 18:12 孔辉 阅读(565) 评论(0) 推荐(0) 编辑