笔记-爬虫-去重/bloomfilter】的更多相关文章

笔记-爬虫-去重/bloomfilter 1.      去重 为什么要去重? 页面重复:爬的多了,总会有重复的页面,对已爬过的页面肯定不愿意再爬一次. 页面更新:很多页面是会更新的,爬取这种页面时就需要进行判断,是否有更新. 在爬虫中新页面或页面更新称为增量,爬取就叫增量爬取了. 识别增量,有以下几种可能的方法: url识别:适合旧页面不会改变,只会有新页面出现的网站: 解析后内容识别:适合页面内容会更新的网站: 写入前与已存储部分进行匹配:最后一道防线. 目前主要的方法是url过滤,大体上是…
笔记-爬虫-scrapy-srcapy-redis组件 1.      简介 scrapy是一个爬虫框架,但不支持分布式,scrapy-redis是为了更方便的实现scrapy分布式爬虫的组件. 可以在pypi上找到:https://pypi.org/project/scrapy-redis/ 1.1.    安装 可以使用pip安装 pip install scrapy-redis pip show scrapy-redis 目前最新版是0.6.8. 2.      使用 Scrapy-red…
一.正则表达式 二.深度和广度优先                                三.爬虫去重策略…
笔记-爬虫-selenium常用方法 1.      查找元素 常用的查找方法 find_element_by_name find_element_by_xpath find_element_by_link_text find_element_by_partial_link_text find_element_by_tag_name find_element_by_class_name find_element_by_css_selector 也可以使用通用的方法 from selenium i…
笔记-爬虫-js代码解析 1.      js代码解析 1.1.    前言 在爬取网站时经常会有js生成关键信息,而且js代码是混淆过的. 以瓜子二手车为例,直接请求https://www.guazi.com/bj/buy/会返回一个203状态大小为5324的包,核心是js代码. 它负责生成cookie及跳转,想要初始cookie,就需要解决它或绕过它. <!DOCTYPE html> <html lang="en"> <head> <met…
笔记-爬虫-XPATH 1.      xpath XPath是W3C的一个标准.它最主要的目的是为了在XML1.0或XML1.1文档节点树中定位节点所设计.目前有XPath1.0和XPath2.0两个版本.其中Xpath1.0是1999年成为W3C标准,而XPath2.0标准的确立是在2007年 XPath 是一门在 XML 文档中查找信息的语言 全称为XML Path Language 一种小型的查询语言 XPath 是一门在 XML 文档中查找信息的语言. XPath 是 XSLT 中的主…
笔记-爬虫-robots.txt 1.      robots.txt文件简介 1.1.    是什么 robots.txt是用来告诉搜索引擎网站上哪些内容可以被访问.哪些不能被访问.当搜索引擎访问一个网站的时候,它首先会检查网站是否存在robots.txt,如果有则会根据文件命令访问有权限的文件. 每个网站需要根据自身的要求写好robots.txt文件,以CSDN为例: 访问https://www.csdn.net/robots.txt User-agent: * Disallow: /scr…
笔记-爬虫部署及运行工具-scrapydweb 1.      简介 scrapyd是爬虫部署工具,但它的ui比较简单,使用不是很方便. scrapydweb以scrapyd为基础,增加了ui界面和监控,使用非常方便. 2.      部署-scrapyd 使用scrapyd部署. 注意:在windows下无法部署,因为不能执行scrapyd-deploy命令. 2.1.    部署 第一步:修改scrapy.cfg为下列样式: # Automatically created by: scrap…
master:一.spider文件1.需要更改继承的类from scrapy_redis.spiders import RedisSpider 2.注释掉start_urls 3.在爬虫目录下新创建一个redis_urls.py文件,放所有的URL到redis数据库的列表中 4.回到爬虫文件中,写一个redis_key = '列表的key' 二.settings.py文件 1 #配置分布式的主要配置选项 2 #1.配置调度器: 3 SCHEDULER = 'scrapy_redis.schedu…
1 urllib概述 1.1 urllib库中的模块类型 urllib是python内置的http请求库 其提供了如下功能: (1)error 异常处理模块 (2)parse url解析模块 (3)request 请求模块 (4)robotparser robots.txt解析模块 1.2 模块的引用方式 以下应用引用urllib库中的模块时均以 parse模块 为例 (1)引用方式一(正确) import urllib from urllib import parse (2)引用方式二(正确)…