一大波可视化网页采集完整过程记录 新手也能一看就会

这几年工作中经常用到各种各样的网页爬虫,过年期间整理了一下,把一些比较实用的采集过程贴成动态GIF图片小视频,供以后自己使用。也希望方便到大家。

这里以八爪鱼为演示,没接触过可视化网页采集的话,不妨跟着动图动手做一做,理解起来更容易些。

下面都是些耗时在1~2分钟左右的演示,包括完整的规则配置过程、实时运行效果。和用代码实现爬虫相比,可视化的优点就是省时间,不是特别麻烦的情况,一般几分钟做出来很正常。下面开始:

先来做一个百度搜索结果的爪取规则:
* 点击查看百度某关键词所有搜索结果爪取演示
这个规则很简单,创建自动翻页循环,创建列表循环。需要注意的是,每个点击动作都是Ajax,所以要记得设置上ajax延时,就不会出错了。
要想获得真实链接,可以循环点开“百度快照”,在其中可以提取出来更多完整的信息,加载速度还很快。

论坛采集。这里以天涯论坛为例:
动图演示天涯论坛贴子和回贴的获取方法
按上面动图演示的,大概1分钟左右就能完成规则制作。
自动翻页的XPATH进行了自定义,因为智能识别的不准确,改成//a[text()=‘下页‘] 才能正确点击到翻页按钮。修改方法可以参考动图中的演示。
tips:一般不需要修改xpath,如果运行的时候数据爪不准确,可以自定义一下xpath校准。XPATH的使用方法可以参考另一篇文章《八爪鱼在哪里设置xpath

百度贴吧采集:
动图演示某贴吧贴子列表的获取方式
这里演示某个贴吧内所有贴子列表的抓取。
贴子内正文和回贴详情,也是一样的制作方法。
需要注意的是,给“点击翻页”设置上3-5秒的ajax延时,就不会出错了。规则制作大约耗时1分钟左右。
新手做网页采集,对于AJAX可能比较不好理解。但是有些AJAX动态加载的情况,必须要设置好延时才行。
有一个方法,可以让新手不受ajax影响:方法就是给每个点击动作设置3-5秒的ajax延时,如果这个点击是动态加载,设置了延时就不会出错;如果不是动态加载,还可以限制新网页的打开时间。
如果不想浪费时间在判断ajax上,就都设置上延时,就可以了。

文章的评论采集和分析:
动图演示网友评论的采集方法
以某篇某篇新闻文章读者评论为例,演示评论采集方法。从制作规则到完成采集耗时约1分10秒,实现了多个评论数据字段的抓取和自动翻页的效果。
实际使用中,可以在第一步填入多条网址批量处理。

对于抓到的评论,可以一键进入智能可视化分析,一键生成图表、对文本进行文本情感语义分析、关键词提取等。
动图演示对评论进行可视化分析的方法
后面举例获取的数据,都可以用相同的方法对数据进行分析。

动图演示今日头条文章列表的获取方法
上图演示的是今日头条首页,瀑布流文章列表的抓取。自动下翻10次,最终获取到77篇文章。规则制作耗时约40秒。

动图演示今日头条文章正文和标签的获取方法
第一步中,一次可以填写上万条文章网址。为了保证执行速度,给“打开网页”步骤设置了5秒延时限制,限制网页在5秒内加载完成。
这个规则中,正文文本和标签两个字段是手动添加的。正文文本都在section元素内,采集到Section中的p元素,就是干净的正文文本。所以手动向流程中拖拽一个“循环”步骤,在“不固定元素”中填写XPATH://section/p,意为section元素内的所有p元素。“提取数据”步骤中设置数据合并方式为:同一字段多次提取合并为一行。
标签的提取也是同样的原理。可以参考动图里的演示,试一试。
网页数据采集的方法多种多样,除了这样手动提取数据的方法,你也可以试试直接在下面内置浏览器中点选,说不定更方便更好用。

微博按关键词搜索:
动图演示微博某关键词搜索结果的获取方法
这个规则是内置现成的,叫“简易采集”。上面需要自己做流程的是自定义采集。
简易采集不需要自己制作,填上选项就行,一般30秒就能配置完成。
微博这个网页采集自己做规则不好做,登录页面有难度。所以用内置封装好的规则,不仅快而且准确不出错。

微博评论采集
这个规则制作起来有点麻烦,复杂一点的规则我都传到网盘了

,需要的话可以到我的百度网盘自己下载:https://pan.baidu.com/s/1d7thL0

运行效果:

点击从头播放完整动图

京东的商品评论:
动图演示京东评论的采集方法
这个规则是内置现成的,不需要自己制作。20秒就能配置完成。

* 百度知道某关键词最新提问
* 百家号某作者全部文章列表爪取演示 用这个获取同行作者的所有文章列表(包括标题和网址)
* 百家号文章正文爪取演示 简单筛选后,再用这个获取每篇文章的正文、标签
* 知乎某关键词搜索
* 点击查看百度搜索风云榜实时热点top50爪取演示
* 点击查看贴吧热议榜top20爪取演示
* 点击查看网易文章24小时排行榜爪取演示
* 点击查看新浪博客24小时排行榜爪取演示
* 点击查看新浪财经某个表格的爪取演示

总结一下,可视化的工具使用方便,不懂代码也可以做出爬虫。如果懂得一些网页知识、XPATH、正则表达式以等,熟能生巧,可以让采集结果更准确,更加贴合需求。

最最后,欢迎收藏、转载,希望对大家有帮助。

原文地址:https://www.cnblogs.com/lansexiatian/p/8485723.html

时间: 2024-10-11 07:43:32

一大波可视化网页采集完整过程记录 新手也能一看就会的相关文章

小白30分钟学会网页采集基础教程

首先,以某个多页(需要自动翻页)表格数据的采集为例,先演示一次网页采集的完整的过程: 点击从头播放完整动图 演示这里使用的是八爪鱼,依次点击表格某一行的每个字段,可以自动识别出其他所有数据行,并自动创建循环列表:点击翻页按钮,选择"循环点击下一页"动作,就能自动创建翻页循环. 网页信息爪取相关的工具有很多,有需要代码配合使用的,也有几乎不用代码的.其实实现网页采集所用的代码越少,效率越高,维护起来越简单.今天以八爪鱼为例,演示这个工具的一些基础知识: 1:基础操作1.1 新建任务 点击

【转】android 最新 NDK r8 在window下开发环境搭建 安装配置与使用 详细图文讲解,完整实际配置过程记录(原创)

原文网址:http://www.cnblogs.com/zdz8207/archive/2012/11/27/android-ndk-install.html android 最新 NDK r8 在window下开发环境搭建 安装配置与使用 详细图文讲解,完整实际配置过程记录(原创) 一直想搞NDK开发却一直给其他事情耽搁了,参考了些网上的资料今天终于把环境搭建起来了,把过程记录下来分享给大家. 内容目录: 1.默认基础环境 2.NDK下载与配置 3.安装Cygwin 4.用NDK编译 5.安装

一个网页从开始到最终显示的完整过程

一个网页从请求到最终显示的完整过程一般可分为如下7个步骤: 1.在浏览器中输入网址: 2.发送到DNS服务器并获得域名对应的web服务器的IP地址 3.与web服务器建立TCP连接: 4.浏览器向web服务器的IP地址发送相应的http请求: 5.web服务器相应请求并返回指定URL的数据,或错误信息,如果设定重定向,则 重定向到新的URL地址 6.浏览器下载数据后解析HTML源文件,解析的过程中实现对页面的排版,解析完成后再浏览器中显示基础页面 7.分析页面中的超链接并显示在当前页面,重复以上

一个问题完整解决过程记录

有时候一些东西不经意听见了,并不当回事,回头就忘了.人总是这么健忘! 学习hebernate的时候,看到一句话,对于需 要映射到数据库中的实体类需要满足几个要求,其中有一个是说对于重写了equals重写后要重写hashcode.相信这是一句老生常谈的话了,大家都不 陌生.当时我也一扫而过.后来看到一个短片说怎样验证一个cookie有效性也提到了hash算法.于是就想验证一下之前的两个重写. 当时随手就写了一段代码(没有用快捷键),如下: 1 public class hash { 2 publi

融资晚报:一大波创业公司获得融资

融资晚报:一大波创业公司获得融资 2015-03-16 25 公众小额捐赠平台路人甲完成200万天使融资,“路人甲”由友成基金会孵化,是北京汇涓时代网络科技有限公司旗下产品.路人甲亦是在猎云投融资对接平台挂牌的创业项目.路人甲之后可能会沉淀 积分系统等新的方式,近期会联合各个公益组织,结合阶段性热点,组织各类主题活动,将大量的零散存量捐赠人导入“路人甲”,形成核心用户群体. 3D虚拟试衣系统量体试衣获得来自浙商创投的天使投资,投资数额未透露.量体试衣亦是去年底在猎云投融资对接平台上挂牌的创业项目

URL 加载到页面的完整过程

(本图为:URL 加载到页面的完整过程) 今天小编带来这篇文章主要关于“从输入 URL 到页面加载完的过程中都发生了什么事情”这个主题来进行探讨下. 一个HTTP请求的过程 为了简化我们先从一个HTTP请求开始,简要介绍一下一个HTTP求情的网络传输过程,也就是所谓的“从输入 URL 到页面下载完的过程中都发生了什么事情” DNS Lookup 先获得URL对应的IP地址 Socket Connect 浏览器和服务器建立TCP连接 Send Request 发送HTTP请求 Content Do

一大波Java来袭(二)异常处理

概要解析: 本章的知识点可以记为:1图+5关键字+先逮小的.后逮大的  一.基础 (一)定义 1.异常 是指在程序运行的时候发生的一些异常事件.良好的程序设计应该在异常发生的时候提供处理异常的方法,使得程序不会因为异常的发生而中断.因此Java提供的用于处理程序中错误的一种机制. 2.抛出异常throw java程序的执行过程中如出现异常事件,可以生成一个异常类对象(封装了异常事件的信息),被提交给java运行时系统. 简单理解为:推卸责任.马路上遇到了交通事故,不需要自己处理,而是拨打110,

戴尔笔记本win8.1+UEFI下安装Ubuntu14.04过程记录

瞎扯:笔记本刚买不久就想装ubuntu来着,但结果发现BIOS启动方式为UEFI,网上一搜索发现跟以前的双系统安装方法不一样,看具体教程感觉相当复杂,而且也有点担心折腾跪了这新本本所以一直没有动手.但昨天又心血来潮,看了几个教程后于是决定开搞!虽然中间不是很顺利,但最后结果发现也没有多复杂. 环境:我的笔记本型号是戴尔Insprion 14R-5437,系统为原装Win8.1,BIOS启动方式为UEFI.用事先制作的启动U盘,安装的是Ubuntu14.04 64位. 本文不是完整教程,所以建议参

Oracle SQL语句执行完整过程:

SQL语句执行完整过程: 1. 用户进程提交一个sql 语句: update temp set a=a*2,给服务器进程. 2.服务器进程从用户进程把信息接收到后, 在PGA 中就要此进程分配所需内存,存储相关的信息,如在会话内存存储相关的登录信息等. 3.服务 器进程把这个sql  语句的字符转化为ASCII 等效数字码, 接着这个ASCII   码被传递给一个HASH 函数, 并返回一个hash 值,然后服务器进程将到shared pool  中的library cache 中去查找是否存在