- 博客(25)
- 收藏
- 关注
转载 Scrapy、Scrapy-redis组件
目录Scrapy一、安装二、基本使用1. 基本命令2.项目结构以及爬虫应用简介3.小试牛刀4. 选择器5. 格式化处理6.中间件7. 自定制命令8. 自定义扩展9. 避免重复访问10.其他11.TinyScrapyscrapy-redis组件1. URL去重2. 调度器3. 数据持久化4. 起...
2019-03-27 09:57:00 129
转载 爬虫案例(js动态生成数据)
需求:爬取https://www.xuexi.cn/f997e76a890b0e5a053c57b19f468436/018d244441062d8916dd472a4c6a0a0b.html页面中的新闻数据。分析: 1.首先通过分析页面会发现该页面中的新闻数据都是动态加载出来的,并且通过抓包工具抓取数据可以发现动态数据也不是ajax请求获取的动态数据(因为没有捕获到ajax请求...
2019-03-26 16:22:00 438
转载 UA池和代理池
scrapy下载中间件UA池代理池一.下载中间件先祭出框架图:下载中间件(Downloader Middlewares) 位于scrapy引擎和下载器之间的一层组件。- 作用:(1)引擎将请求传递给下载器过程中, 下载中间件可以对请求进行一系列处理。比如设置请求的 User-Agent,设置代理等(2)在下载器完成将Response传递给引擎中,下载...
2019-03-26 08:43:00 187
转载 增量式爬虫(简易)
增量式爬虫引言: 当我们在浏览相关网页的时候会发现,某些网站定时会在原有网页数据的基础上更新一批数据,例如某电影网站会实时更新一批最近热门的电影。小说网站会根据作者创作的进度实时更新最新的章节数据等等。那么,类似的情景,当我们在爬虫的过程中遇到时,我们是不是需要定时更新程序以便能爬取到网站中最近更新的数据呢?一.增量式爬虫概念:通过爬虫程序监测某网站数据更新...
2019-03-25 12:47:00 172
转载 基于scrapy-redis分布式爬虫(简易)
redis分布式部署1.scrapy框架是否可以自己实现分布式? - 不可以。原因有二。 其一:因为多台机器上部署的scrapy会各自拥有各自的调度器,这样就使得多台机器无法分配start_urls列表中的url。(多台机器无法共享同一个调度器) 其二:多台机器爬取到的数据无法通过同一个管道对数据进行统一的数据持久出存储。(多台机器无法共享同一...
2019-03-25 09:44:00 132
转载 全栈爬取-Scrapy框架(CrawlSpider)
引入提问:如果想要通过爬虫程序去爬取”糗百“全站数据新闻数据的话,有几种实现方法?方法一:基于Scrapy框架中的Spider的递归爬取进行实现(Request模块递归回调parse方法)。方法二:基于CrawlSpider的自动爬取进行实现(更加简洁和高效)。概要CrawlSpider简介CrawlSpider使用基于CrawlSpider爬虫文件的创建...
2019-03-24 23:28:00 143
转载 scrapy中selenium的应用
引入在通过scrapy框架进行某些网站数据爬取的时候,往往会碰到页面动态数据加载的情况发生,如果直接使用scrapy对其url发请求,是绝对获取不到那部分动态加载出来的数据值。但是通过观察我们会发现,通过浏览器进行url请求发送则会加载出对应的动态加载出的数据。那么如果我们想要在scrapy也获取动态加载出的数据,则必须使用selenium创建浏览器对象,然后通过该浏览器对象进行请求发...
2019-03-24 17:55:00 82
转载 scrapy框架的日志等级和请求传参
日志等级请求传参如何提高scrapy的爬取效率一.Scrapy的日志等级 - 在使用scrapy crawl spiderFileName运行程序时,在终端里打印输出的就是scrapy的日志信息。 - 日志信息的种类: ERROR : 一般错误 WARNING : 警告 INFO : 一般的信息 ...
2019-03-23 20:08:00 78
转载 scrapy框架之递归解析和post请求
递归爬取解析多页页面数据scrapy核心组件工作流程scrapy的post请求发送1.递归爬取解析多页页面数据- 需求:将糗事百科所有页码的作者和段子内容数据进行爬取切持久化存储- 需求分析:每一个页面对应一个url,则scrapy工程需要对每一个页码对应的url依次发起请求,然后通过对应的解析方法进行作者和段子内容的解析。实现方案: 1.将每一个页码...
2019-03-22 19:27:00 123
转载 scrapy框架持久化存储
基于终端指令的持久化存储基于管道的持久化存储1.基于终端指令的持久化存储保证爬虫文件的parse方法中有可迭代类型对象(通常为列表or字典)的返回,该返回值可以通过终端指令的形式写入指定格式的文件中进行持久化操作。执行输出指定格式进行存储:将爬取到的数据写入不同格式的文件中进行存储 scrapy crawl 爬虫名称 -o xxx.json ...
2019-03-22 09:29:00 126
转载 scrapy框架简介和基础应用
scrapy框架介绍环境安装基础使用一.什么是Scrapy? Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,非常出名,非常强悍。所谓的框架就是一个已经被集成了各种功能(高性能异步下载,队列,分布式,解析,持久化等)的具有很强通用性的项目模板。对于框架的学习,重点是要学习其框架的特性、各个功能的用法即可。二.安装 Linux:...
2019-03-20 13:25:00 128
转载 移动端数据爬取
前言 随着移动市场的火热,各大平台都陆陆续续的推出了自己的移动端APP来拉拢吸引和便捷其广大的用户。那么在移动端的平台当时势必会出现大量有价值的信息和数据,那这些数据我们是否可以去享用一下呢?那么接下来就进入我们的移动端APP数据的爬虫中来吧。今日概要fiddler简介手机APP抓包设置fiddler设置安装证书下载安全证书安装局域网设置...
2019-03-18 21:53:00 86
转载 Python网络爬虫之图片懒加载技术、selenium和PhantomJS
引入图片懒加载seleniumphantomJs谷歌无头浏览器知识点回顾验证码处理流程动态数据加载处理一.图片懒加载什么是图片懒加载?案例分析:抓取站长素材http://sc.chinaz.com/中的图片数据#!/usr/bin/env python# -*- coding:utf-8 -*-import req...
2019-03-18 15:54:00 120
转载 验证码处理
引入相关的门户网站在进行登录的时候,如果用户连续登录的次数超过3次或者5次的时候,就会在登录页中动态生成验证码。通过验证码达到分流和反爬的效果。使用云打码平台识别验证码session的创建方式session的作用proxies参数的作用高匿,透明代理的区别云打码平台处理验证码的实现流程:云打码平台处理验证码的实现流程:- 1.对携...
2019-03-16 13:11:00 160
转载 Python网络爬虫之requests模块(2)
session处理cookieproxies参数设置请求代理ip基于线程池的数据爬取xpath的解析流程bs4的解析流程常用xpath表达式常用bs4解析方法引入有些时候,我们在使用爬虫程序去爬取一些用户相关信息的数据(爬取张三“人人网”个人主页数据)时,如果使用之前requests模块常规操作时,往往达不到我们想要的目的,例如:#!/u...
2019-03-13 16:28:00 123
转载 Python网络爬虫之三种数据解析方式
引入回顾requests实现数据爬取的流程指定url基于requests模块发起请求获取响应对象中的数据进行持久化存储其实,在上述流程中还需要较为重要的一步,就是在持久化存储之前需要进行指定数据解析。因为大多数情况下的需求,我们都会指定去使用聚焦爬虫,也就是爬取页面中指定部分的数据值,而不是整个页面的数据。因此,本次课程中会给大家详细介绍讲解三种聚焦爬虫中的数据...
2019-03-12 23:03:00 139
转载 Python网络爬虫之requests模块(1)
引入Requests 唯一的一个非转基因的 Python HTTP 库,人类可以安全享用。警告:非专业使用其他 HTTP 库会导致危险的副作用,包括:安全缺陷症、冗余代码症、重新发明轮子症、啃文档症、抑郁、头疼、甚至死亡。今日概要基于requests的get请求基于requests模块的post请求基于requests模块ajax的get请求基于requests...
2019-03-11 12:06:00 222
转载 Python网络爬虫第一弹《Python网络爬虫相关基础概念》
爬虫介绍引入之前在授课过程中,好多同学都问过我这样的一个问题:为什么要学习爬虫,学习爬虫能够为我们以后的发展带来那些好处?其实学习爬虫的原因和为我们以后发展带来的好处都是显而易见的,无论是从实际的应用还是从就业上。我们都知道,当前我们所处的时代是大数据的时代,在大数据时代,要进行数据分析,首先要有数据源,而学习爬虫,可以让我们获取更多的数据源,并且这些数据源可以按我们的目的进行...
2019-03-06 19:18:00 97
转载 Python网络爬虫第二弹《http和https协议》
一.HTTP协议 1.官方概念: HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。(虽然童鞋们将这条概念都看烂了,但是也没办法,毕竟这就是HTTP的权威官方的概念解释,要想彻底理解,请客观目移下侧......) 2.白话概念:...
2019-03-04 21:45:00 83
转载 Python网络爬虫第三弹《爬取get请求的页面数据》
一.urllib库 urllib是Python自带的一个用于爬虫的库,其主要作用就是可以通过代码模拟浏览器发送请求。其常被用到的子模块在Python3中的为urllib.request和urllib.parse,在Python2中是urllib和urllib2。二.由易到难的爬虫程序: 1.爬取百度首页面所有数据值 1 #!/usr/bin/env python ...
2019-03-04 09:55:00 88
转载 jupyter环境安装
jupyter notebook环境安装一、什么是Jupyter Notebook?1. 简介Jupyter Notebook是基于网页的用于交互计算的应用程序。其可被应用于全过程计算:开发、文档编写、运行代码和展示结果。——Jupyter Notebook官方介绍简而言之,Jupyter Notebook是以网页的形式打开,可以在网页页面中直接编写代码和运行代码,...
2019-03-02 19:31:00 135
转载 Mysql安装和基本使用
MySQL的介绍安装、启动windows上制作服务MySQL破解密码MySQL中统一字符编码MySQLMySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下公司。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 RDBMS (Relational Datab...
2019-01-25 19:39:00 204
转载 JsonWebToken
概述如果各位不了解 JWT,不要紧张,它并不可怕。JSON Web Token(JWT)是一个非常轻巧的规范。这个规范允许我们使用JWT在用户和服务器之间传递安全可靠的信息。让我们来假想一下一个场景。在A用户关注了B用户的时候,系统发邮件给B用户,并且附有一个链接“点此关注A用户”。链接的地址可以是这样的https://www.xxxx.com/make-friend/?f...
2019-01-24 21:45:00 119
转载 前端之jQuery
知识预览一 jQuery是什么?二 什么是jQuery对象?三 寻找元素(选择器和筛选器)四 操作元素(属性,css,文档处理)扩展方法 (插件机制)回到顶部一 jQuery是什么?[1] jQuery由美国人John Resig创建,至今已吸引了来自世界各地的众多 javascript高手加入其...
2019-01-23 20:48:00 49
转载 Redis快速入门
Redis介绍Redis是什么redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string、list、set、zset(sorted set)和hash。这些数据类型都支持push/pop、add/remove、取交集、并集和差集及其他更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与m...
2019-01-22 10:39:00 74
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人