Мой проект состоит в том, чтобы создать данные из интернет-магазина, занимающегося автомобилями, используя rvest в R. Я ищу каждый узел, сохраняю его в вектор, а затем в конце объединяю его в информационный кадр. Однако не в каждом вагоне заполнены все переменные, и кадр данных не создается, поскольку «аргументы подразумевают различное количество строк: 24, 25». Как мне решить это?
for (i in 2:2){
cim <- paste("https://auto.jofogas.hu/magyarorszag/auto?o=", i, sep="")
lap <- read_html(cim)
brand <- html_nodes(lap, ".vehicle-brand")
brand <- html_text(brand)
model <- html_nodes(lap, ".vehicle-model")
model <- html_text(model)
price <- html_nodes(lap, ".price")
price <- html_text(price)
price <- str_squish(price)
price <- substr(price, 1, nchar(price)-3)
price <- str_replace_all(price, " ", "")
price <- as.numeric(price)
price
year <- html_nodes(lap, ".vehicle-reg-date")
year <- html_text(year)
#year <- as.Date(year)
fuel <- html_nodes(lap, ".vehicle-fuel")
fuel <- html_text(fuel)
location <- html_nodes(lap, ".cityname")
location <- html_text(location)
autoJofogas <- data.frame(brand, model, price, year, fuel, location)
}
Поскольку страница обновляется с новыми продажами каждую минуту, результат не всегда воспроизводится, но как только кто-то загрузит продажу без определенной переменной, результатом будет:
Error in data.frame(brand, model, price, year, fuel, location) :
arguments imply differing number of rows: 24, 25