![45a9dabc1010f526e25646963e36c72b.png](https://i-blog.csdnimg.cn/blog_migrate/b9151a389706a59904af763978abcbaf.jpeg)
初学爬虫时,如何正确的找到信息节点?
遇到的问题
上个月,有个朋友在初学爬虫的时候遇到了一个问题,给他解决问题的同时写了一个文档。今天给大家分享一下吧。也许你也会遇到相同的疑问。
在初学爬虫时,你可能会遇到一个问题,如何才能正确的从网页上分析出想要的节点呢?在此之前,你需要先了解一个知识点,HTML。
了解 HTML
W3C,地址:
HTML 教程www.w3school.com.cn乍一看,内容很多的样子,但是实际上你只需要花 20 分钟大致了解下 HTML 基本的元素组成即可。就像下图,了解红框即可:
![8f378991c3ab55f77fb1ec69c7699b02.png](https://i-blog.csdnimg.cn/blog_migrate/75c83c8dd51e5333827bc2bd1743b366.jpeg)
举个栗子
像笔者之前小课堂提到的熊猫直播,已经晾凉了,这次采用章鱼直播给大家举个栗子吧!(采用了他提供的直播站来讲解下)
章鱼直播地址:
直播-章鱼-全民原创互动的体育直播www.zhangyu.tv1.首先,明确要获取的信息,按下 F12,查看元素:
![f61bcb4d16e1160732c05a2d4af8302e.png](https://i-blog.csdnimg.cn/blog_migrate/0ba90b4e63bc0b7434f21903e73d1083.jpeg)
2.找到一组自己想要的数据:
![a90f9d0b69ac46963c8242ef4808d71f.png](https://i-blog.csdnimg.cn/blog_migrate/9f4b2f802e43efcb6cb88070cb5de5a6.jpeg)
3.观察多组数据,分析节点:
![72718af8c0b7933d5bde332ff7648a18.png](https://i-blog.csdnimg.cn/blog_migrate/46f13c1d123cba6de889796078f87603.jpeg)
4.分析节点,统计数据:
![2da6cb0165c2c96b89200ff8cd37950e.png](https://i-blog.csdnimg.cn/blog_migrate/aa7b14e8433c05f133a804632f5a43d2.jpeg)
找到爬取内容的前后节点信息,在 F12 中 Ctrl + F 搜索下 class ,看看有多少个,比如上面一共 94 个符合的class,说明基本符合房间数。
5.写正则匹配,将内容匹配出来即可。
![df815448edd660a33f23189ca3358684.png](https://i-blog.csdnimg.cn/blog_migrate/2219ce129e984b2994c18eeb657b52d2.jpeg)
具体正则写法,不赘述了,就是利用定界,分组原理即可。
结果如下:
![c006689e229bc41c5aee60ca9d104329.png](https://i-blog.csdnimg.cn/blog_migrate/22212b44605ba87fe09d5299e4f6b0c7.jpeg)
总结
入门级的爬虫学习,可以找有规律的网站去小试牛刀,上手之后可以尝试深入学习。
在程序的实现上,正则表达式并不是唯一提取信息的手段,还有其他的手段,比如 Python 的 BeautifulSoup 库等...要明白哪些是具有共同性的,分析节点的思维是亘古不变的,无非变得就是代码实现而已。