网页文章自动采集(鼠标选中页面中的超链接抓取图片网址的属性(图) )
优采云 发布时间: 2021-09-13 22:00网页文章自动采集(鼠标选中页面中的超链接抓取图片网址的属性(图)
)
网页上的数据类型非常丰富:文本、图片、链接、源代码等。在数据采集过程中,不同类型的数据类型对应不同的抓取方式。本文将解释常见的数据类型以及如何捕获它们。
示例网址:#!type=movie&tag=%E7%BB%8F%E5%85%B8&sort=recommend&page_limit=20&page_start=0
1、Grab text:抓取页面显示的文字
操作:用鼠标选中页面上的文字,在弹出的操作提示框中选择【采集元素的文字】,目标文字会被采集向下。
同时将鼠标移动到字段名[text],点击
按钮,选择【自定义抓取方式】,可以看到优采云自动为我们选择了【抓取文本】。
2、Capture image URL:捕获图像的URL
操作:用鼠标选中页面上的图片,在弹出的操作提示框中选择【采集这张图片地址】,就会提取图片网址。
同时将鼠标移动到字段名[图片地址],点击
按钮,选择【自定义捕获方式】,可以看到优采云自动为我们选择了【捕获图片URL(IMG标签的src属性)】。
为什么是【IMG标签的src属性】?在IMG标签中,图片地址会放在IMG标签的src属性中。
所以,当我们要提取图片URL时,我们本质上是使用XPath来定位Img标签,然后从IMG标签中提取src属性。 src 属性的值是图像 URL。
这里仅介绍捕获图像时使用的捕获方法。具体图片采集请看教程:
3、抓取链接网址,抓取网页上超链接的网址
操作:用鼠标选中页面中的超链接(一般放在标题文字、图片中,点击跳转),在弹出的操作提示框中选择【采集这个链接地址】,网址为超链接被提取出来了。
同时将鼠标移动到字段名[链接地址]点击
按钮,选择【Customize Fetch Method】,可以看到优采云自动为我们选择了【fetch link URL(A标签的href属性)】。
为什么是[A标签的href属性]?在A标签中,超链接会放在IMG标签的href属性中。
所以,当我们要提取超链接URL时,本质上是使用XPath定位A标签,然后从A标签中提取href属性。 href 属性的值是超链接 URL。
4、 抓取输入框的值:抓取文本输入框中的文字
示例网址:
%E9%9C%B8%E7%8E%8B%E5%88%AB%E5%A7%AC&cat=1002
操作:用鼠标选中页面上的文本输入框(文本输入有输入值),在弹出的操作提示框中选择【采集文本框的值】,关键词在文本输入框中将被提取出来。
同时将鼠标移动到字段名[文本框值],点击
按钮,选择【Custom Capture Method】,可以看到优采云自动为我们选择了【Capture Value(INPUT标签的值属性)】。
为什么是[INPUT标签的value属性]?在XPath教程中,我们讲了网页Html相关知识。网页上的文本输入框一般用INPUT标签表示。在文本框中输入的关键词会显示在INPUT标签的value属性中。
所以,当我们想要在文本框中提取关键词时,我们本质上是使用XPath来定位INPUT标签,然后从INPUT标签中提取value属性。 value 属性的值为输入框中的关键词。 .
5、抓取网页源码:抓取网页元素对应的源码
示例网址:%E5%B0%8F%E8%AF%B4
抓取网页源代码外层 Html
操作:在页面上用鼠标选中要抓取的元素,在弹出的操作提示框中选择【采集outer Html of the element】,对应的源代码(Outer Html)元素被 采集 关闭。
同时将鼠标移动到字段名[OuterHtml]上点击
按钮,选择【自定义获取方式】,可以看到优采云已经自动为我们选择了【外层Html】。
抓取网页源代码内层 Html
操作:在页面上用鼠标选中要抓取的元素,在弹出的操作提示框中选择【采集This element's Inner Html】,该元素对应的源代码(InnerHtml)为被采集击倒。
同时将鼠标移动到字段名[InnerHtml]上点击
按钮,选择【自定义爬取方式】,可以看到优采云自动为我们选择了【获取元素网页源码(Inner Html)】。
外层 Html 和内层 Html 有什么区别?
外部 Html:收录当前元素
Inner Html:不收录当前元素,从当前元素的下一层开始
6、Grab 元素属性值
首先使用XPath查找当前元素的源代码,观察当前源代码中存在哪些属性值,需要提取哪些属性值,然后提取现有的和需要的属性值。
示例网址:%E6%89%8B%E6%9C%BA&enc=utf-8&qrst=1&rt=1&stop=1&vt=2&wq=%E6%89%8B%E6%9C%BA&page=7&s=177&click=0
步骤:
如图所示,是京东商品列表页面。每个产品都有一个产品ID,现在我们需要采集这个产品ID。
第一个商品列表的定位XPath为.//*[@id='J_goodsList']/ul/li[1],对应的网页源码包括class、data-sku、data-spu、data- pid 四个属性。商品ID在属性data-pid中,我们需要抓取它,就是属性data-pid的属性值。
我们先选择第一个产品列表,在弹出的操作提示框中选择【采集元素的文字】。这一步只是获取列表的XPath。
我们真正要抓取的是data-pid的属性值,所以将鼠标移到字段名[text]上点击
按钮,选择[Customize Capture Mode],将捕获模式改为[Capture Element Attribute Value],在下拉框中选择[data-pid],这样我们就设置了data-pid attribute 值采集down,这个值就是我们需要的产品ID。最后点击【应用】保存配置。