实时抓取网页数据(清明假期第二天更新R至最新版包2.处理网页地址 )
优采云 发布时间: 2022-04-13 00:21实时抓取网页数据(清明假期第二天更新R至最新版包2.处理网页地址
)
清明节的第二天,天阴沉沉的,风凉凉的,我们还是宅在家里,继续学习R. . .
这是我第一次学习爬虫,我尝试通过各种方式进行探索。花了三四天的时间,终于把东西拿出来了。
代码只有几行,是我各种摸索后最精简的方法。
虽然还有一些bug没有解决,但还是先记录一下这几天的烧脑产品吧!
本文的目的是抓取猎聘在线杭州数据分析师招聘[URL]的相关数据(下图中红框内的四个部分),并将结果以csv表格的形式导出。同时使用 R Markdown 展示爬取过程。
如果还没想好怎么导出html,先来一张R Markdown的截图:
我尽力做到最清晰,但还是要下载图片才能看清楚
详细步骤如下所述。
一、关于 rvest 包
一个网页数据抓取的包,包的介绍是“更容易抓取网页”。
相关函数用法:
-read_html() 读取html文件,其输入可以是在线url或本地html文件。
-html_nodes() 查找标签。本文与 SelectorGadget 插件配合使用。
-html_text() 提取标签内的文本。
二、准备
1.将 R 更新到最新版本。rvest 包的一些新特性需要在最新版本中可用。为方便起见,请在开始时更新到最新版本。代码:
install.packages(“installr”)
library(installr)
updateR()
2.安装 SelectorGadget 插件。用于获取网页某些部分的相关标签。如果你不懂 HTML 和 CSS,强烈推荐这个插件。插件的使用请参考R爬虫小白示例教程-基于rvest包。我用的是SelectorGadget插件+UC浏览器,亲测可行!
三、启动R爬虫
1.加载rvest包
install.packages(‘rvest’)
library(‘rvest’)
library(xml2)
2.处理网址
第 1 页:
第 10 页:
观察地址,发现地址有规律可循。它可以由以下框架组成:
[]+[i]+[&ka=page-]+[i]
地址中只有第i页在变化,其余的都是固定的,所以后面通过设置循环来捕获所有的页信息。
3.捕获数据
<p>#for循环,抓取第1到10页数据
i