抓包分析、多线程爬虫及xpath学习

一、抓包分析html

1.1 Fiddler安装及基本操做微信

  因为不少网站采用的是HTTPS协议,而fiddler默认不支持HTTPS,先经过设置使fiddler能抓取HTTPS网站,过程可参考(https://www.cnblogs.com/liulinghua90/p/9109282.html)。使用clear能够将当前fiddler清屏。多线程

1.2 经过抓包爬取腾讯视频评论scrapy

  unicode转码:在Python中转码能够直接输入u'须要转码的内容'ide

  因为每一个视频后面的评论须要自动加载,在源代码中未发现有关评论的相关连接,此时就须要使用fiddler进行抓包分析,打开视频网站后,能够先使用clear清屏,找到JS包,能够复制它的url,打开后发现评论都是使用的Unicode编码,此时就须要解码。因为须要自动加载后面的评论,此时须要分析网页的构成。再使用一次clear,在网页上点击加载更多评论,在fiddler中找到JS包,复制url,将之与以前的url进行对比,重复几回该操做,构造评论url。网站

  下面给出爬取腾讯视频中权力的游戏第八季评论:编码

1.3 微信文章爬取url

  进入weixin.sougou.com,搜索关键词为“Python”,也采起抓包分析,不过增长了代理,其他操做步骤与1.2相似。命令行

 

二、多线程爬虫线程

  多线程,即程序中的某些程序段并行执行,合理地设置多线程,可让爬虫的效率更高。

 

  运行以后的结果为:

  能够看出两个线程是同时开始工做的,那么若是用多线程爬取多个网页的话,就能够更加高效。下面将用多线程爬取糗事百科的文字内容:

  首先须要分析网页的构造,经过翻页将规律找出来,实如今程序中实现自动翻页加载文本,其次须要将内容解码输出,最后须要加上异常处理。

 

三、scrapy xpath

  /标签名:从顶端开始,如/html从顶端开始寻找html这个标签,找到的是这个标签内的内容

  //标签名:寻找全部该标签

  text():提取文本信息

  @属性:提取属性信息

  

  命令行输入:scrapy startproject 爬虫名,表示新建一个爬虫;若是新建一个自动爬虫,则先输入:scrapy startproject 爬虫名,再输入:scrapy genspider -t crawl 爬虫名 网址 

  items.py主要用来设置爬取的目标

  pipelines.py设置后续的处理

  settings.py主要用于配置信息

相关文章
相关标签/搜索