网页文章自动采集(鼠标选中页面中的超链接抓取图片网址的属性(图) )

优采云 发布时间: 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。最后点击【应用】保存配置。

  

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线