1、基础知识chrome
1.网络爬虫编程
(1)爬虫的分类json
通用网络爬虫:又称全网爬虫,常见的有百度和Google等搜索引擎,爬行对象从一些初始URL扩充到整个网络,主要为门户站点搜索引擎和大型网站服务采集数据,这在网络上一般称为搜索引擎浏览器
聚焦网络爬虫、增量式网络爬虫、深层网络爬虫:这类爬虫比较有目的,也就是网络上常常说的网络爬虫网络
(2)反爬虫技术及解决方案app
2.chrome分析网站scrapy
(1)五大主流浏览器:IE,Opera,Google chrome,Firefox,Safari,其中chrome和Firefox是编程开发首选,主要是二者的运行速度、扩展性和用户体验都符合开发人员所需,其中chrome对HTML5和CSS3的支持也比较完善。ide
(2)开发者工具的界面共有9个标签页,分别是:Elements, console,source,network,performance,memory,application,security,audits,其中爬虫要掌握network和elements就能知足大多数爬虫的需求,其中network是最核心的部分函数
2、json文件函数工具
1. json.dumps():将Python对象编码成JSON字符串
json.dumps(obj, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, encoding="utf-8", default=None, sort_keys=False, **kw)
2. json.loads():将已编码的JSON字符串解码成Python对象
json.loads(s[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, **kw]]]]]]]])
3、scrapy函数
1、scrapy.Request(url,callback,method,meta,headers)
其中callback指定一个回调函数,该回调函数一这个request的response做为第一个参数,若是未指定callback,则默认使用spider的parse()方法;
meta(dict):指定Request.meta属性的初始值,若是给了该参数,dict将会浅拷贝;一个dict,包含request的任意元数据。该dict在新Requests中为空,当Scrapy的其余扩展启用的时候填充数据。dict在传输是浅拷贝。(浅拷贝只是增长了一个好指针指向已经存在的内存,而深拷贝就是增长一个指针而且 申请一个新的内存,使这个指针指向新的内存,采用深拷贝的状况下,释放内存的时候就不会出如今浅拷贝是重复释放同一内存的错误);
method(string):HTTP请求的方法,默认为GET,headers(dict):request的头信息。