Questionrvest question de déchirage contenu web/site web commercial de voiture
Je voulais rvest parties spécifiques des sites (la plate-forme de vente de voiture).
Le CSS est franchement trop confus pour moi de comprendre ce qui ne va pas moi-même.
#### scraping the website www.otomoto.pl with used cars #####
baseURL_otomoto = "https://www.otomoto.pl/osobowe/?page="
i <- 1
for (i in 1:7000)
{
link = paste0(baseURL_otomoto,i)
out = read_html(link)
print(i)
print(link)
### building year
build_year = html_nodes(out, xpath = '//*[@id="body-container"]/div[2]/div[1]/div/div[6]/div[2]/article[1]/div[2]/div[3]/ul/li[1]') %>%
html_text() %>%
str_replace_all("\n","") %>%
str_replace_all("\r","") %>%
str_trim()
mileage = html_nodes(out, xpath = '//*[@id="body-container"]/div[2]/div[1]/div/div[6]/div[2]/article[1]/div[2]/div[3]/ul/li[2]') %>%
html_text() %>%
str_replace_all("\n","") %>%
str_replace_all("\r","") %>%
str_trim()
volume = html_nodes(out, xpath = '//*[@id="body-container"]/div[2]/div[1]/div/div[6]/div[2]/article[1]/div[2]/div[3]/ul/li[3]') %>%
html_text() %>%
str_replace_all("\n","") %>%
str_replace_all("\r","") %>%
str_trim()
fuel_type = html_nodes(out, xpath = '//*[@id="body-container"]/div[2]/div[1]/div/div[6]/div[2]/article[1]/div[2]/div[3]/ul/li[4]') %>%
html_text() %>%
str_replace_all("\n","") %>%
str_replace_all("\r","") %>%
str_trim()
price = html_nodes(out, xpath = '//div[@class="offer-item__price"]') %>%
html_text() %>%
str_replace_all("\n","") %>%
str_replace_all("\r","") %>%
str_trim()
link = html_nodes(out, xpath = '//div[@class="offer-item__title"]') %>%
html_text() %>%
str_replace_all("\n","") %>%
str_replace_all("\r","") %>%
str_trim()
offer_details = html_nodes(out, xpath = '//*[@id="body-container"]/div[2]/div[1]/div/div[6]/div[2]/article[1]/div[2]/div[3]/ul') %>%
html_text() %>%
str_replace_all("\n","") %>%
str_replace_all("\r","") %>%
str_trim()
Les suppositions ce qui pourrait être la raison de ce comportement?
PS # 1.
Comment récupérer toutes les données build_type, kilométrage et fuel_type des offres disponibles sur le site Web analysé en même temps que data.frame? l'utilisation de classes (xpath = '// div [@class = ...) ne fonctionnait pas dans mon cas
PS # 2.
Je voulais rvest les détails des offres réelles à l'aide f.i.
gear_type = html_nodes(out, xpath = '//*[@id="parameters"]/ul[1]/li[10]/div') %>%
html_text() %>%
str_replace_all("\n","") %>%
str_replace_all("\r","") %>%
str_trim()
les arguments
- dans ul [a] sont dans une (1: 2) &
- dans li [b] sont pour b dans (01:12)
Malheureusement, ce concept échoue car la trame de données résultante est vide. Tout devine pourquoi?
Merci Mirosław. Vos commentaires et suggestions sont définitivement d'une valeur ajoutée énorme. Revenir avec les résultats finaux dès que possible (faisable). –