open.connection(x,"rb") 中的错误:HTTP 错误 406

Error in open.connection(x,"rb") : HTTP error 406

我正在尝试使用 read_htmlin R 读取网站的内容。但是,对于某些网站,如 http://benchmarkrealestate.com/,我收到此错误。 Error in open.connection(x,"rb") : HTTP error 406

这个错误是什么意思?这只发生在某些网站上。我试图在网上查找它,但无法找到我收到此错误的确切原因。

我该如何解决这个问题?

406 不可接受

The requested resource is capable of generating only content not acceptable according to the Accept headers sent in the request.

上面的句子直接从维基百科摘录。

基本上,每当网络爬虫向网站发出请求时,它通常会通过向其操作对等方(即网络服务器)提交特征标识字符串来标识自身、其应用程序类型和其他信息。在这种情况下,此标识在名为 User-Agent.

的 header 字段中传输

将网页内容返回到您的控制台的一种方法是将您的 user-agent 信息设置为在 curl 包的帮助下可以识别的东西:

library(xml2)
library(rvest)
library(curl)

web_content <- read_html(curl('http://benchmarkrealestate.com/', handle = new_handle("useragent" = "Mozilla/5.0")))

您可能还想继续阅读 header fields