本文的文字及图片来源于网络,仅供学习、交流使用,不具备任何商业用途,若有问题请及时联系咱们以做处理。css
当咱们爬取不一样的网站时,每一个网站页面的实现方式各不相同,咱们须要对每一个网站都进行分析。那是否有一些通用的分析方法?我分享下本身爬取分析的“套路”。在某个网站上,分析页面以及抓取数据,我用得最多的工具是 Chrome 开发者工具。web
Chrome 开发者工具是一套内置于 Google Chrome 中的 Web 开发和调试工具,可用来对网站进行迭代、调试和分析。由于国内不少浏览器内核都是基于 Chrome 内核,因此国产浏览器也带有这个功能。例如:UC 浏览器、QQ 浏览器、360 浏览器等。ajax
接下来,咱们来看看 Chrome 开发者工具一些比较牛逼的功能。chrome
经过元素(Element)面板,咱们能查看到想抓取页面渲染内容所在的标签、使用什么 CSS 属性(例如:class=“middle”)等内容。例如我想要抓取我知乎主页中的动态标题,在网页页面所在处上右击鼠标,选择“检查”,可进入 Chrome 开发者工具的元素面板。浏览器
经过这种方法,咱们能快速定位出页面某个 DOM 节点,而后能够提取出相关的解析语句。鼠标移动到节点,而后右击鼠标,选择 “Copy”,能快速复制出 Xpath 、CSS elector 等内容解析库的解析语句。缓存
网络(Network)面板记录页面上每一个网络操做的相关信息,包括详细的耗时数据、HTTP 请求与响应标头和 Cookie,等等。这就是咱们一般说的抓包。服务器
其中的 Filters 窗格,我常用其来过滤出一些 HTTP 请求,例如过滤出使用 Ajax 发起的异步请求、图片、视频等。cookie
最大的窗格叫 Requests Table,此表格会列出了检索的每个 HTTP 请求。默认状况下,此表格按时间顺序排序,最先的资源在顶部。点击资源的名称能够显示更多信息。网络
all:全部请求数据(图片、视频、音频、js代码、css代码)异步
XHR:XMLHttpRequest 的缩写,是ajax技术的核心,动态加载完成常常分析的一个内容
CSS: css样式文件
JS:JavaScript文件,js解密是常分析的一个页面
Img: Images 图片文件
Font: 字体文件(字体反扒)
DOC : Document,文档内容
WS: WebSocket,web端的socket数据通讯,通常用于一些实时更新的数据
Headers 是显示 HTTP 请求的 Headers,咱们经过这个能看到请求的方式,以及携带的请求参数等。
Preview 是请求结果的预览。通常用来查看请求到的图片,对于抓取图片网站比较给力。
Response 是请求返回的结果。通常的内容是整个网站的源代码。若是该请求是异步请求,返回的结果内容通常是 Json 文本数据。
此数据与浏览器展现的网页可能不一致,由于浏览器是动态加载的
清空全部数据,每一次从新分析时都须要清空以前的数据
搜索框,只要在 ALL 里面出现的过的内容,就能够被直接搜索到。经常使用与数据检索与 JS 解密
保留日志。当分析在多个页面跳转的内容时,必定要勾上,否则当页面发生新的跳转时,历史数据所有都会被清空。
清空 JavaScript、css 文件的缓存,获取最新的。
保留日志,作爬虫是必定须要勾上
https://mp.weixin.qq.com/s/aSwXVrz47lAvQ4k0o4VcZg