早上好,我已尝试使用下面的代码解析网页,但最后一行显示了
的输出无法加载HTTP资源
谁能告诉我如何处理它?谢谢!代码是:
url3<- "http://www.atb.com.tn/devise"
getdata3<- readHTMLTable(url3, stringAsFactor = FALSE, isURL = TRUE)
答案 0 :(得分:1)
不需要Selenium。只需在浏览器开发人员工具中挖掘一下。它动态加载资源/devise
。那是数据表。该站点还尝试使用浏览器用户代理字符串来防止抓取(虽然抓取不违反其使用条款)和会话cookie以确保您首先访问其他页面。您可以使用rvest
:
library(rvest)
sess <- html_session("http://www.atb.com.tn/",
user_agent("Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.39 Safari/537.36"))
pg <- jump_to(sess, "http://www.atb.com.tn/devise")
dat <- content(pg$response, as="parsed")
html_table(html_nodes(dat, "table")[[2]], header=TRUE)
## Monnaies NA Sigle Unité Achat Vente
## 1 NA DOLLAR CANADIEN CAD 1 1.438 1.459
## 2 NA COURONNE DANOISE DKK 100 29.625 30.072
## 3 NA YEN JAPONAIS JPY 1000 16.910 17.165
## 4 NA DINAR KOWEITIEN KWD 1 6.569 6.668
## 5 NA COURONNE NORVEGIENNE NOK 100 23.201 23.551
## 6 NA RYAL DE QATAR QAR 10 5.424 5.505
## 7 NA RYAL SAOUDIEN SAR 10 5.266 5.345
## 8 NA COURONNE SUEDOISE SEK 10 2.350 2.386
## 9 NA FRANC SUISSE CHF 10 19.858 20.158
## 10 NA DIRHAM DES EAU AED 10 5.377 5.458
## 11 NA LIVRE STERLING GBP 1 2.871 2.914
## 12 NA DOLLAR DES USA USD 1 1.974 2.004
## 13 NA EURO EUR 1 2.211 2.245
## 14 NA DINAR BAHREINI BHD 1 5.237 5.316
## 15 NA DINAR LIBYEN LYD 1 1.424 1.445