Есть 2 части моих вопросов, так как я исследовал 2 метода в этом упражнении, но мне это не удалось. Очень признателен, если кто-то может мне помочь.
, и вот что я связал:
library(rvest)
library(httr)
library(XML)
SGXurl <- "https://www2.sgx.com/derivatives/negotiated-large-trade"
SGXdata <- read_html(SGXurl, stringsASfactors = FALSE)
html_nodes(SGXdata,".table-container")
Однако код ничего не обнаружил, и я сомневаюсь, что я правильно использую этот код.
[ЧАСТЬ 2:]
Поскольку я понимаю, что на странице есть небольшая кнопка "скачать", которая может загрузить именно тот файл данных, который мне нужен, в формате .csv. Поэтому я подумал написать код, имитирующий кнопку загрузки, и нашел этот вопрос Использование R для «нажатия» кнопки загрузки файла на веб-странице , но я не могу заставить ее работать с некоторыми модификации этого кода.
На веб-странице есть несколько фильтров, в основном мне будет интересно загрузить данные за определенный рабочий день, оставив другие фильтры пустыми, поэтому я попробую написать следующую функцию:
library(httr)
library(rvest)
library(purrr)
library(dplyr)
crawlSGXdata = function(date){
POST("https://www2.sgx.com/derivatives/negotiated-large-trade",
body = NULL
encode = "form",
write_disk("SGXdata.csv")) -> resfile
res = read.csv(resfile)
return(res)
}
Я собирался поместить входную функцию "date" в аргумент "body", однако я не смог понять, как это сделать, поэтому я начал с "body = NULL", предполагая, что это не сработает. любая фильтрация. Однако результат все еще неудовлетворителен. Загрузка файла в основном пуста со следующей ошибкой:
Request Rejected
The requested URL was rejected. Please consult with your administrator.
Your support ID is: 16783946804070790400