随笔分类 - 爬虫
摘要:简介 Scrapy-Redis则是一个基于Redis的Scrapy分布式组件。它利用Redis对用于爬取的请求(Requests)进行存储和调度(Schedule), 并对爬取产生的项目(items)存储以供后续处理使用。scrapy-redi重写了scrapy一些比较关键的代码, 将scrapy变
阅读全文
摘要:整体流程 - 引擎找到要执行的爬虫,并执行爬虫的 start_requests 方法,并的到一个 迭代器。- 迭代器循环时会获取Request对象,而request对象中封装了要访问的URL和回调函数。- 将所有的request对象(任务)放到调度器中,用于以后被下载器下载。- 下载器去调度器中获取
阅读全文
摘要:简介 Django、Flask、scrapy都包含了一个“信号分配器”,使得当一些动作在框架的其他地方发生的时候,解耦的应用可以得到提醒。 通俗来讲,就是一些动作发生的时候,信号允许特定的发送者去提醒一些接受者,这是特别有用的设计因为有些代码对某些事件是特别感兴趣的,比如删除动作。 下面,分别介绍一
阅读全文
摘要:单爬虫运行 import sys from scrapy.cmdline import execute if __name__ == '__main__': execute(["scrapy","crawl","chouti","--nolog"]) 然后右键运行py文件即可运行名为‘chouti‘
阅读全文
摘要:中间件的简介 1.中间件的作用 在scrapy运行的整个过程中,对scrapy框架运行的某些步骤做一些适配自己项目的动作. 例如scrapy内置的HttpErrorMiddleware,可以在http请求出错时做一些处理. 2.中间件的使用方法 配置settings.py.详见scrapy文档 ht
阅读全文
摘要:XPath介绍 XPath 是一门在 XML 文档中查找信息的语言。XPath 可用来在 XML 文档中对元素和属性进行遍历。 XPath 是 W3C XSLT 标准的主要元素,并且 XQuery 和 XPointer 都构建于 XPath 表达之上。 因此,对 XPath 的理解是很多高级 XML
阅读全文
摘要:前戏 os.environ()简介 os.environ()可以获取到当前进程的环境变量,注意,是当前进程。 如果我们在一个程序中设置了环境变量,另一个程序是无法获取设置的那个变量的。 环境变量是以一个字典的形式存在的,可以用字典的方法来取值或者设置值。 os.environ() key字段详解 w
阅读全文
摘要:twisted介绍 Twisted是用Python实现的基于事件驱动的网络引擎框架,scrapy正是依赖于twisted, 从而基于事件循环机制实现爬虫的并发。 scrapy的pipeline文件和items文件 这两个文件有什么作用 先看看我们上篇的示例: # -*- coding: utf-8
阅读全文
摘要:简介 Scrapy是一个高级的Python爬虫框架,它不仅包含了爬虫的特性,还可以方便的将爬虫数据保存到csv、json等文件中。 首先我们安装Scrapy。 其可以应用在数据挖掘,信息处理或存储历史数据等一系列的程序中。其最初是为了页面抓取 (更确切来说, 网络抓取 )所设计的, 也可以应用在获取
阅读全文
摘要:requests Python标准库中提供了:urllib、urllib2、httplib等模块以供Http请求,但是,它的 API 太渣了。它是为另一个时代、另一个互联网所创建的。它需要巨量的工作,甚至包括各种方法覆盖,来完成最简单的任务。 Requests 是使用 Apache2 License
阅读全文
摘要:错误信息: 错误信息如下: requests.exceptions.SSLError: ("bad handshake: Error([('SSL routines', 'tls_process_server_certificate', 'certificate verify failed')],)
阅读全文
摘要:requests简介 简介 Requests是用python语言基于urllib编写的,采用的是Apache2 Licensed开源协议的HTTP库 ,使用起来比urllib简洁很多 因为是第三方库,所以使用前需要cmd安装 pip install requests 安装完成后import一下,正常
阅读全文
摘要:简介 虽然CookieJar模块能够做到给请求设置cookie,但是它的cookie是保存在内存里的,每次用都需要重新设置, 这就衍生了一个它的子类 FileCookieJar,它可以将cookie保存在文件中,然后直接使用就可了 示例 cookie的保存 from urllib import re
阅读全文
摘要:简介 有时候我们需要爬一些需要登录才能进入网页,这个时候就要用到cookie相关的一些模块来操作了 内置的http包里包含了cookie相关的一些模块,通过她们我们可以自动使用cookie CookieJar 管理储存cookie,像传出的http请求添加cookie cookie存储在内存中,Co
阅读全文
摘要:proxy简介 proxy即为代理,我们爬虫的时候肯定会有频繁访问某一网站的情况,这个时候有些服务器会识别到我们是非正常访问,就会把我们的IP禁掉,这个时候就需要用代理了。 就好比现实生活中,我需要向A借一件东西,但是我跟A是仇人,直接向他借的话他不会借给我,这个时候我就让B帮我像A借,就说他要用,
阅读全文
摘要:UserAgent简介 UserAgent中文名为用户代理,是Http协议中的一部分,属于头域的组成部分,UserAgent也简称UA。它是一个特殊字符串头,是一种向访问网站提供你所使用的浏览器类型及版本、操作系统及版本、浏览器内核、等信息的标识。通过这个标识,用户所访问的网站可以显示不同的排版从而
阅读全文
摘要:error模块简介 我们在爬虫的时候发请求的时候难免出现错误,如访问不到服务器或者访问被禁止等等, 出错了之后urllib将错误信息封装成了一个模块对象中,这个模块就叫error模块 error的分类 分为URLError和HTTPError。 URLError是OSError的一个子类 有以下错误
阅读全文
摘要:urllib简介 简介 Python3中将python2.7的urllib和urllib2两个包合并成了一个urllib库 Python3中,urllib库包含有四个模块: urllib.request 主要用来打开或者读取url urllib.error 主要用来存放返回的错误信息 urllib.
阅读全文
摘要:爬虫的定义 爬虫:按照一定的规则,自动抓取互联网信息的程序或者脚本,从而获取对于我们有价值的信息。 爬虫的两大特征 能够按照作者的要求下载数据或者内容 能自动在网络上流窜 爬虫的三大步骤 下载网页 提取正确的信息 根据一定的规则自动跳到另外的网页上执行上两步 爬虫的分类 通用爬虫 专用爬虫(聚焦爬虫
阅读全文

浙公网安备 33010602011771号