【发布时间】:2019-03-06 04:38:13
【问题描述】:
你好 R 狂热分子...
一段时间以来,我一直在使用 R 从各种网站上抓取数据,但是这个让我很困惑。
我正在尝试从下表中抓取数据: http://www.vigimeteo.com/PREV/obs/obs_seul.html?a=07005&b=
但是到目前为止我的努力都失败了。
我已经尝试了以下
- 简单的 wget,它会生成来自站点的 html,以及一些用于填充表格的 javascript 函数,但我无法真正查看它并找到可以用来抓取的部分使用一些 R 的 JS 实用程序的数据。可能是我对 JS 的体验很差
- 我在这里尝试了解决方案 Reading data from iframe,b/c 看起来原始网站在 iframe 中有表格,但还是没有运气
-
getURL 和 readHTMLTable 的组合
thisURL = http://www.vigimeteo.com/PREV/obs/obs_seul.html?a=07005&b= theURL = getURL(thisURL,.opts = list(ssl.verifypeer = FALSE) ) tables = readHTMLTable(theURL)
这会导致一个空表
- 我花了大约一个小时浏览我能找到的 html 和 javascript 代码的每个部分,但成功率有限,详见 1。
看起来可能是R's Selenium package could have a potential solution,但是我这里还没弄明白怎么用,可能是不熟悉
我觉得我只是在这里遗漏了一个重要的部分......也许是因为我缺乏 JS 和 XML 知识?
更新:
我注意到,如果我右键单击表格元素并使用 Chrome 的“检查”功能,它会生成包含所有表格值的 HTML,并且非常易于抓取……我仍然没有确定如何在 R 中达到这一点。有人提示在“检查”屏幕中的何处查看以尝试指导我的进度吗?
【问题讨论】:
-
只是复制粘贴到电子表格中似乎很有效。
-
复制粘贴不是一个选项,这是需要自动化的工作流程的一部分,最好在 R 中
标签: javascript r web-scraping