作者:fbysss
QQ:溜酒酒吧酒吧吾散
blog:blog.youkuaiyun.com/fbysss
声明:本文由fbysss原创,转载请注明出处
前言
网页爬取,是一项既费脑子又繁琐的工作。因为网页格式不一,很难完全靠机器自动识别。
通常,我们可以采用css选择器来选取DOM节点,从整个网页中抽取我们需要的内容。
前端大家最熟悉的应该是JQuery了。如果JQuery不好用,可以直接使用原生的document.querySelectorAll,现在的浏览器大多也都支持了。
如果是Nodejs爬虫,一般采用cheerio模块(可以理解为后端的JQuery)来解析DOM。
cheerio虽然高仿JQuery,但还是有些差异,而且一些特性尚未实现。尽量更新到最新版本。
这里并不罗列所有的表达式,而是重点记录一些DOM选择和相关工作方法。
前端的例子中也都是cheerio都支持的表达式,测试环境都是chrome。
表达式
1.简单表达式
document.querySelectorAll("div");//标签
document.querySelectorAll(".classA");//单个类
document.querySelectorAll("#idA");//id选择器
2.层级关系
document.querySelectorAll("div span");
document.querySelectorAll("div span .classA");

本文介绍了网页爬取中DOM节点选择的实用技巧,包括使用JQuery、document.querySelectorAll和Cheerio模块。强调了Cheerio在Nodejs爬虫中的应用,以及它与JQuery的差异。文章列举了多种CSS选择器的用法,如层级关系、类选择、特殊符号处理等,并提供了实际示例。此外,还提到了在不同浏览器环境下选择文本节点和注释节点的问题,以及如何检查JQuery版本来解决兼容性问题。
最低0.47元/天 解锁文章
169





