php抓取网页数据实例(【数据获取】爬虫利器Rvest包(JS渲染页面))
优采云 发布时间: 2021-09-19 14:05php抓取网页数据实例(【数据获取】爬虫利器Rvest包(JS渲染页面))
本文的所有内容都基于Windows系统
前言
对于静态页面爬虫,rvest、rcurl和XML包可以实现此功能。这里我推荐两个由brother@Wen编写的文件,它们介绍了如何抓取静态页面数据。我还使用了这两个文章入门级爬虫程序
门户:[数据采集]爬虫武器rvest包[数据采集]爬虫基本rcurl和XML包
几天前,我遇到了一个问题。我需要抓取动态页面(JS呈现页面)。通过网络采集知识并不断整理,问题终于得到初步解决。因为相关的中文资料不多,所以我写这篇文章文章与大家分享
为了解决抓取动态页面的问题,我们需要一个相对强大的R包——rselenium
硒简介
Rselenium用于使用R调用selenium服务器
什么是selenium服务器
Selenium server是一个独立的Java程序,允许您在不同的浏览器上打开web地址、操作web页面和抓取web页面元素
因此,通过selenium服务器,我们可以对web页面进行操作,然后对操作后的数据进行抓取,从而抓取动态页面
Selenium服务器安装
下载列表:
JAVA JDK1.8(门户网站)。Selenium server是一个需要java环境的java程序。Selenium服务器*敏*感*词*3.0.1(门户网站)。selenium服务器的Java文件。铬。Chrome驱动程序(需要爬墙入口)(不爬墙入口)。Selenium服务器调用Chrome的驱动程序
安装过程:
首先,安装javajdk1.8
然后,安装Chrome(最新版本)
然后,将解压后的chromedriver.exe(最新版本)放在chrome的安装路径下。请确保将其与chrome.exe放在同一目录中。例如:
chrome.exe和chromedriver.exe都位于C:\program files(x86)\Google\chrome\application目录。(通常,chrome的默认安装路径在此处)
最后,将此路径放入C:\program files(x86)\Add Google\chrome\application到环境变量path的路径中。具体的添加过程请参见此处(门户)
基本配置已完成
硒的使用及实例
通过示例了解更多关于硒的使用
目标:从网贷家园数据平台(/)上爬升近7天各P2P平台的投资者数量、人均投资额、平均回报率和交易量。下图中红色框的内容
过程:
启动selenium服务器。在selenium服务器*敏*感*词*中-3.@K231.jar在文件所在的位置,通过shift+鼠标右键选择“在此处打开命令行”。在命令行上运行以下代码以启动selenium服务器
java -jar selenium-server-standalone-3.0.1.jar
运行后,最小化并不要关闭。通过R调用selenium服务器并打开网页。单击该页面并选择相应的条件。通过rselenium和rvest抓取数据。通过逐步解释rcode来解释此过程
<p>################调用R包#########################################
library(rvest) # 为了read_html函数
library(RSelenium) # 为了使用JavaScript进行网页抓取
###############连接Server并打开浏览器############################
remDr