需要 IE 才能与该页面进行有效交互是不正确的。在 Mac 上使用 Firefox 或 Chrome 时,数据列上方和左侧的小打印机图标提供“打印此报告”,当鼠标悬停时,单击会导致下载名为“CrystalReportViewer1.pdf”的文件。如果使用名为 Tabula 的跨平台浏览器插件应用程序,您可以提取 csv 格式的数据。提取数据的顶部(2016 年 4 月 1 日)如下所示:
Syndication ,Gilt Name ,Amount Sold ,Issue ,Issue ,Announcement ,Results
Date ,"",(£ million ,Price (£) ,Yield ,Press Release ,Press Release
"","",nominal),"","","",""
23 Feb 2016 ,0 1/8% Index-linked Treasury Gilt 2065 ," 2,750.0 ", 163.73 ,-0.8905% ,Announcement ,Results
01 Dec 2015 ,0 1/8% Index-linked Treasury Gilt 2046 ," 3,250.0 ", 129.74 ,-0.7475% ,Announcement ,Results
20 Oct 2015 ,2½% Treasury Gilt 2065 ," 4,750.0 ", 98.40 , 2.5570% ,Announcement ,Results
22 Sep 2015 ,0 1/8% Index-linked Treasury Gilt 2068 ," 2,500.0 ", 166.00 ,-0.8655% ,Announcement ,Results
21 Jul 2015 ,3½% Treasury Gilt 2068 ," 4,000.0 ", 121.31 , 2.7360% ,Announcement ,Results
与其尝试从该页面提取 pdf(据我所知,它不是 pdf 格式),不如使用 RSelenium 将 pdf 文件下载到本地驱动器并从那里处理它。
这是按钮 ID:
{'id':'CrystalReportViewer1_toptoolbar_print'}
RSelenium 帮助页面中有演示。一个名为:selDownloadZip.R。它显示了如何在“页面元素”上执行“点击”:
webElem <- remDr$findElement("id", "CrystalReportViewer1_toptoolbar_print")
webElem$clickElement()
然后查看 Firefox 的 ViewSource 面板中的“元素检查器”,我看到了按钮的名称(“id”、“theBttnbobjid_1459536946505_dialog_submitBtn”),因此需要进一步单击。但是,该数字会随着每次页面访问而变化,因此请使用 webElem <- remDr$findElement("link text", "Export")
webElem <- remDr$findElement("link text", "Export")
webElem$clickElement()
查看 webElement-class 帮助页面是个好主意。
