base :: url читает веб-страницу, но xml2 :: read_html выдает ошибку 404 - PullRequest
3 голосов
/ 22 сентября 2019

Я столкнулся с очень странной проблемой при использовании rvest.Это один из примеров: https://politics.raisethemoney.com/cchristiansen. Эти страницы обычно открываются в любом веб-браузере и доступны для base::url.

A connection with                                                              
description "https://politics.raisethemoney.com/cchristiansen"
class       "url-libcurl"                                     
mode        "r"                                               
text        "text"                                            
opened      "closed"                                          
can read    "yes"                                             
can write   "no"  

Когда используется xml2::read_html, выдает ошибку 404.

Ошибка в open.connection (x, "rb"): ошибка HTTP 404.

Протестировано как на Rstudio Cloud, так и на локальном компьютере (Windows 10).Я сбит с толку.Есть идеи, почему это может происходить?

1 Ответ

2 голосов
/ 22 сентября 2019

Сервер ищет в заголовке определенный заголовок, т. Е.

'Accept' : ''

. Это необходимо предоставить, чтобы запрос был передан 200 с сервера.Этот заголовок является заголовком по умолчанию в httr, например, но я предполагаю, что у вас нет этого с методами, которые вы пытаетесь.

Вот несколько быстрых тестов, которые я запустил с Python requests (несколько похоже на rvest):

enter image description here

...