admin管理员组

文章数量:1532176

  目前很多网站的数据采用异步加载的方式呈现,以进口商品统计月报为例,当我们点击下一页时,表格中的数据会更新,但是网站的URL不会发生变化。对于这种网站,如果使用rvest包或RCurl包进行爬取,只能抓到第一页的数据。不过不用担心,对付这种情况,可以使用R语言中RSelenium包。

  RSelenium包可以通过调用Selenium Server来模拟浏览器环境,它可以模拟浏览器的点击、滚动、滑动以及文字输入等操作,抓取经过浏览器渲染过的页面。但是Selenium是Java程序,因此在使用RSelenium包之前必须为计算机设置Java环境,具体前期准备工作可以参考R语言爬取动态网页:使用RSelenium包和Rwebdriver包的前期准备。

  使用RSelenium包控制浏览器主要依靠remoteDriver系列函数:

  remoteDriver( remoteServerAddr,

         port,

         browserName,

         path,

         version,

         platform,

         javascript,

         nativeEvents,

         serverURL,

         sessionInfo)

  其中,参数remoteServerAddr,表示远程服务器的IP地址,默认值是本机地址,是character型

  参数port,表示远程服务器连接端口,

本文标签: 动态网页语言RSelenium包爬取