【发布时间】:2021-10-31 22:08:32
【问题描述】:
我正在尝试从网站https://www.nseindia.com/option-chain
提取安全选项表IOC包含数据的 JSON 链接是 https://www.nseindia.com/api/option-chain-equities?symbol=IOC
当我尝试将数据导入 R 时,出现错误,
library(jsonlite)
dat=fromJSON("https://www.nseindia.com/api/option-chain-equities?symbol=IOC")
Error in open.connection(con, "rb") : HTTP error 401.
但令人惊讶的是,当我在 Chrome/Firefox 中打开 webiste https://www.nseindia.com/option-chain 并选择 IOC 股票然后使用 fromJSON 时,它可以工作。
为什么会有这样的行为?和 不打开浏览器如何获取数据?
【问题讨论】:
-
您看到的行为很可能是试图停止抓取。查看他们的robots.txt,您还可以看到,他们不希望人们在“/api/”路径中抓取任何内容。他们确实有一个 CSV 下载选项,也许这适合您的目的?
-
谢谢,CSV 文件可以正常工作,但可以通过
rvest或httr获取? -
CSV 的下载链接受 Javascript “保护”。
标签: r http-error jsonlite fromjson