使用 XPath 提取网页信息

以1024举例,使用XPath提取图片链接以及磁力链接地址。更多见:iii.run


学习XPath的基本知识

推荐 Xpath教程 很容易理解。
推荐可以将常用的语法记下来,不常用的可以等用的时候再查。

推荐使用Chrome浏览器中的XPath Helper良心之作.

  • 左边输入XPath表达式,右侧会自动展示结果。

  • 选择元素之后按下ctrl + shift + x,可以自动提取该元素的XPath表达式。

使用Xpath Helper自带提取功能

常用语法

  • / 从根节点选取。
  • // 从匹配选择的当前节点选择文档中的节点,而不考虑它们的位置。
  • @ 选取属性,常见使用方法为[@class = "title"]

举例,比如在双面胶-淘宝搜索 页面

输入: //[@class="m-itemlist"]//a[@trace-price<20]/@href*,用来提取出class为itemlist里边a标签里边所有price 小于20的产品,并将其href(即超链接)输出

结果展示

需要结合Chrome浏览器的F12一起使用,先选定大致的框架,比如itemlist这个class,然后逐渐加上更多的要求,具体见文首给出的链接学习。

知道这些就可以抓取1024上的图片和磁力链接了,目测是不是很简单


挑选网页实验一下

作为一名1024资深游客,首先在技术讨论区选择一篇好文,这里用的是[榴民资讯]11月精品主题推荐(49期)

还是熟悉的味道

使用F12查看网页的结构

有两个主要标签 header 和 main 鼠标移动到main上,可以看到内容页面都被包含起来,所以第一个节点应该选main。


main标签

使用XPath表达式筛选图片链接

我们看到图片前边都有一个属性src,这个src后边就是我们所需的图片链接。

综上,使用XPath表达式: //[@id="main"]//@src*

mark

输入XPath代码,获得图片链接。
mark

使用XPath表达式筛选磁力链接

同理,我们可以发现,磁力链接前边都有一个blockquote,与上一条处理方式类似,使用XPath表达式: //[@id="main"]//blockquote*

磁力链接

以上

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,198评论 19 139
  • 20170531 这几天重新拾起了爬虫,算起来有将近5个月不碰python爬虫了。 对照着网上的程序和自己以前写的...
    八神苍月阅读 14,279评论 3 44
  • 1,今天早上花了三个小时时间把自己的书桌,床铺,宿舍全部清理了一遍,小小的柜子里全都是不重要的塞满了,全部扔掉,收...
    橘子侠阅读 132评论 0 0
  • 很早听说过一句话,怕麻烦就要麻烦一辈子,当时我也只是听听,当然也认同这个道理,但也只是想想而已,并没有放在心上。而...
    amazing2017阅读 590评论 3 1
  • 男:“我要骑着摩托带你走遍中国,并且还要用摄像机做个记录,等八十岁了,我坐在床上,你挂在墙上,我讲给你听。”
    9e0c0a76a7ff阅读 170评论 1 1