我正在尝试获取有关停车场中未占用的停车位的信息。网站上的信息正在不断更新免费停车位的数量。
由于我开始学习使用R进行网络抓取,因此我开始学习基础知识。 因此,我尝试使用代码获取《 IMDB电影年》
url2 <- "https://www.imdb.com/search/title/?count=100&release_date=2016,2016&title_type=feature"
page2 <- read_html(url2)
data2 <- page2 %>%
html_node(".lister-item-year") %>%
html_text
data2
此代码运行正常。
现在,我在网站上尝试了有关停车位的相同操作,并且由于HTML代码与上面的示例几乎相同,因此我认为这样做并不难。
url <- "https://www.rosenheim.de/stadt-buerger/verkehr/parken.html"
page <- read_html(url)
data <- page %>%
html_node('.jwGetFreeParking-8') %>%
html_text
data
但是,结果我没有得到有关免费停车位的信息。我得到的结果是“”。没事。
是因为第二个网页上的数字不时更新吗?
答案 0 :(得分:0)
此页面使用javascript呈现,因此您示例中的技术不适用。如果使用浏览器中的开发人员工具并检查“网络”选项卡上加载的文件,则会找到一个名为“ index.php”的文件。这是一个包含停车信息的JSON文件。
下载此文件将提供所需的信息。 {json}库的fromJSON
函数将访问该文件并将其转换为数据框。
library(jsonlite)
answer<-fromJSON("https://www.rosenheim.de/index.php?eID=jwParkingGetParkings")
answer
uid title parkings occupied free isOpened link
1 4 Reserve 0 0 --- FALSE 0
2 7 Reserve 0 0 --- FALSE 0
3 13 Reserve 0 0 --- FALSE 0
4 14 Reserve 0 0 --- FALSE 0
5 0 P1 Zentrum 257 253 4 TRUE 224
6 1 P2 KU'KO 138 133 5 TRUE 225
7 2 P3 Rathaus 31 29 2 TRUE 226
8 3 P4 Mitte 275 275 0 TRUE 227
9 5 P6 Salinplatz 232 148 84 TRUE 228
10 6 P7 Altstadt-Ost 82 108 0 TRUE 229
11 10 P8 Beilhack-Citydome 160 130 30 TRUE 230
12 8 P9 Am Klinikum 426 424 2 TRUE 1053
13 9 P10 Stadtcenter 56 54 2 TRUE 231
14 11 P11 Beilhack-Gießereistr. 155 155 --- FALSE 1151
15 12 P12 Bahnhof Nord 148 45 103 TRUE 1203