网页上的数据类型十分丰富:文本、图片、链接、源码等。在数据采集过程中,不同类型的数据类型,对应的抓取方式是不同的。本文将讲解常见的数据类型与其抓取方式。

示例网址:https://movie.douban.com/explore#!type=movie&tag=%E7%BB%8F%E5%85%B8&sort=recommend&page_limit=20&page_start=0

1、抓取文本:抓取显示在页面中的文本

操作:鼠标选中页面中的文本,在弹出的操作提示框中选择【采集该元素的文本】,目标文本就被采集下来了。

同时,将鼠标移动到字段名【文本】上,点击

按钮,选择【自定义抓取方式】,可以看到八爪鱼自动为我们选择了【抓取文本】。

2、抓取图片网址:抓取图片的网址

操作:鼠标选中页面中的图片,在弹出的操作提示框中选择【采集该图片地址】,图片网址就被提取下来了。

同时,将鼠标移动到字段名【图片地址】上,点击

 按钮,选择【自定义抓取方式】,可以看到八爪鱼自动为我们选择了【抓取图片网址(IMG标签的src属性)】。

为什么是【IMG标签的src属性】?在 IMG标签表示,其图片地址会放在IMG标签的src属性中。

所以,当我们要提取图片网址时,本质上是用XPath定位到Img标签,再从IMG标签中提取src属性,src属性的值,就是图片网址。

这里演示的只是抓取图片时使用的抓取方式,具体的图片采集,请看教程:

3、抓取链接网址,抓取网页上超链接的网址

操作:鼠标选中页面中的超链接(一般是放在标题文本、图片中,可点击跳转),在弹出的操作提示框中选择【采集该链接地址】,超链接的网址就被提取下来了。

同时,将鼠标移动到字段名【链接地址】上,点击

 按钮,选择【自定义抓取方式】,可以看到八爪鱼自动为我们选择了【抓取链接网址(A标签的href属性)】。

为什么是【A标签的href属性】?在 A标签表示,超链接会放在IMG标签的href属性中。

所以,当我们要提取超链接网址时,本质上是用XPath定位到A标签,再从A标签中提取href属性,href属性的值,就是超链接网址。

4、抓取输入框的值:抓取文本输入框中的文本

示例网址:

https://search.douban.com/movie/subject_search?search_text=%E9%9C%B8%E7%8E%8B%E5%88%AB%E5%A7%AC&cat=1002

操作:鼠标选中页面中文本输入框(文本输入已有输入值),在弹出的操作提示框中选择【采集该文本框的值】,文本输入框中的关键词就被提取下来了。

同时,将鼠标移动到字段名【文本框值】上,点击

 按钮,选择【自定义抓取方式】,可以看到八爪鱼自动为我们选择了【抓取值(INPUT标签的value属性)】。

为什么是【INPUT标签的value属性】?在 XPath教程 中,我们讲过网页Html相关知识,网页上的文本输入框一般都是用INPUT标签表示,在文本框中输入的关键词,会显示在INPUT标签的value属性中。

所以,当我们要提取文本框中的关键词时,本质上是用XPath定位到INPUT标签,再从INPUT标签中提取value属性,value属性的值,就是输入框中的关键词。

5、抓取网页源码:抓取网页元素对应的源码

示例网址:https://book.douban.com/tag/%E5%B0%8F%E8%AF%B4

抓取网页源码Outer Html

操作:鼠标选中页面中要抓取的元素,在弹出的操作提示框中选择【采集该元素的Outer Html】,该元素对应的源码(Outer Html)就被采集下来了。

同时,将鼠标移动到字段名【OuterHtml】上,点击

 按钮,选择【自定义抓取方式】,可以看到八爪鱼自动为我们选择了【抓取元素的网页源码(Outer Html】。

抓取网页源码Inner Html

操作:鼠标选中页面中要抓取的元素,在弹出的操作提示框中选择【采集该元素的Inner Html】,该元素对应的源码(InnerHtml)就被采集下来了。

同时,将鼠标移动到字段名【InnerHtml】上,点击

 按钮,选择【自定义抓取方式】,可以看到八爪鱼自动为我们选择了【抓取元素的网页源码(Inner Html】。

Outer Html 和 Inner Html有何区别?

Outer Html:包含当前元素

Inner Html:不包含当前元素,从当前元素的下一级开始

6、抓取元素属性值

先用XPath找到当前元素的源码,观察当前源码中存在什么属性值、需要提取哪个属性值,然后提取存在且需要的属性值即可。

示例网址:https://search.jd.com/Search?keyword=%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。

第1个商品列表的定位XPath为.//*[@id='J_goodsList']/ul/li[1],对应的网页源码中,有class、data-sku、data-spu、data-pid四个属性。商品ID在data-pid这个属性里,我们需要抓取,就是data-pid这个属性的属性值。

我们先选中第一个商品列表,在弹出的操作提示框中,选择【采集该元素的文本】,这个步骤只是为了获得定位到列表的XPath。

我们真正想抓取的,是data-pid的属性值,所以将鼠标移动到字段名【文本】上,点击

 按钮,选择【自定义抓取方式】,将抓取方式更改为【抓取元素属性值】,并在下拉框中,选择【data-pid】,这样,我们就将data-pid属性的值采集下来了,这个值就是我们需要的商品ID。最后,点击【应用】,保存配置即可。

html 抓取移动,网页采集提取数据教程,以自定义抓取方式为例 - 八爪鱼采集器...相关推荐

  1. 如何去除网页噪声提取数据(02) —— 汽车之家(字体反爬)

    如何去除网页噪声提取数据(02) -- 汽车之家(字体反爬) 1. 需求介绍 继去哪儿网之后,我又盯上了汽车之家这个网站,这个网站的反爬策略挺有意思的,采用了时下最流行的字体反爬技术,让我心神荡漾,对 ...

  2. python网页数据存入数据库_python网络爬虫抓取动态网页并将数据存入数据库MySQL...

    简述 以下的代码是使用python实现的网络爬虫,抓取动态网页 http://hb.qq.com/baoliao/ .此网页中的最新.精华下面的内容是由JavaScript动态生成的.审查网页元素与网 ...

  3. python网站数据写入mysql_python网络爬虫抓取动态网页并将数据存入数据库MySQL

    简述 以下的代码是使用python实现的网络爬虫,抓取动态网页 http://hb.qq.com/baoliao/ .此网页中的最新.精华下面的内容是由JavaScript动态生成的.审查网页元素与网 ...

  4. 实用干货:7个实例教你从PDF、Word和网页中提取数据

    导读:本文的目标是介绍一些Python库,帮助你从类似于PDF和Word DOCX 这样的二进制文件中提取数据.我们也将了解和学习如何从网络信息源(web feeds)(如RSS)中获取数据,以及利用 ...

  5. Python爬虫实例(2)-用BeautifulSoup爬取一个网页上的多张照片(以百度贴吧为例)

    上一篇博客,实现了下载一张图片的简单爬虫.但是其代码,仅仅能下载一张图片.爬虫作为数据分析的第一步工作,需要爬取的是海量数据:假设我想下载一个网站几十张图片,那怎么实现呢? 首先,我们利用框图或者伪代 ...

  6. 利用charles 抓取ios app的https数据包-----软件配置和抓取步骤

    背景:最近在做数据缓存相关的工作:我们的设备是放在高铁里面的,主要是提供wifi服务.然而我们的wifi是由sim卡4g网络拨号提供的,用户在上网时需要下载我们的APP:掌上高铁:所以领导提出一个要求 ...

  7. VBA之正则表达式(33)-- 网页表格提取数据

    实例需求:示例数据如下所示. <td><a href="javascript:;" data-url="/gstdHb/queryInfo" ...

  8. python如何从列表中提取数据_Python 从列表中取值和取索引的方法

    如下所示: name_list["zhangsan","lisi","wangwu"] #1.取值 print(name_list[0]) ...

  9. 八爪鱼批量爬取html中的数据,网页数据如何批量采集_视频教程 - 八爪鱼采集器...

    本视频介绍循环方式中的URL循环和文本循环. URL循环适用场景: 在多个同类型的网页中,需要采集的字段相同. 例如: https://movie.douban.com/subject/2638793 ...

最新文章

  1. 世界杯决赛不好看,有点像假球,被裁判黑了?
  2. JavaScript模板引擎原理,几行代码的事儿
  3. 真实的linux系统是怎样的,只使用Linux系统是怎样一种体验?_科技数码通
  4. 传统公司部署OpenStack(t版)简易介绍(九)——控制台部署
  5. deepin编译Linux内核,为Deepin编译Linux 5.10内核的悲伤故事经历:从入门到卸载
  6. LeetCode 1805. 字符串中不同整数的数目(哈希set)
  7. 数据库中的索引原理阅读
  8. Linux搜狗输入法候选词乱码
  9. 【Computer Organization笔记07】实验课:可编程逻辑器件介绍,硬件编程方法与原则,硬件编程流程
  10. java高级面试题及答案
  11. 使用激活工具后主页被篡改为hao123
  12. [PHP]全国省市区信息,mysql数据库记录
  13. MODI中的OCR模块
  14. dns和私人dns是什么意思?企业如何预防dns劫持?
  15. 计算机一级office选择题必背知识点,2017年计算机一级MSOffice考试复习知识点
  16. IDA Pro基本简介
  17. 神舟电脑董事长吴海军作客CNET中国,笑谈国货08怎夺江山
  18. 我薅了四年的国内外免费服务器
  19. MATLAB R2019b利用Application Compiler打包文件无法识别runtime问题(亲测可行)
  20. Makefile 语法入门

热门文章

  1. 硬件设计基础——电阻、电容、电感、磁珠
  2. K8S以及Kubesphere离线部署方案
  3. spring 代码执行 (CVE-2018-1273)
  4. TIM1_CH1N和TIM1_CH1的区别和控制
  5. SkyForm CMP同Mirantis OpenStack兼容测试
  6. 医学院交换去计算机学院,皖南医学院学生2018年赴台湾元培医事科技大学参加交换生项目交流心得...
  7. php处理抢购类功能的高并发请求,php处理抢购类
  8. 【Linux】监控实时网速 查看实时网速
  9. 中山大学计算机类专业是什么,中山大学2017年计算机类专业自主招生条件及专业优势...
  10. Link第一次打包与部署笔记