问题描述
我正尝试从https://old.nasdaq.com/screening/companies-by-name.aspx?letter=0&exchange=nyse&render=download下载文件 在R中具有download.file()函数。事实证明,该请求已被主机拒绝。然后我尝试了
httr::GET(url=url,add_headers("User-Agent"="Mozilla/5.0"))
伪造标题,但仍然无法正常工作。这很奇怪,因为在Python中应用了相同的技巧,并以200的状态代码通过了测试。
我该如何解决?谢谢。
解决方法
欢迎堆积如山的雨白。
代替使用download.file()
,您可以简单地将文件url作为read.csv()
的参数插入,如下所示:
file_url = 'https://old.nasdaq.com/screening/companies-by-name.aspx?letter=0&exchange=nyse&render=download'
df = read.csv(file_url,header = FALSE)
如果出于任何原因要下载文件,可以执行以下操作:
file_url = 'https://old.nasdaq.com/screening/companies-by-name.aspx?letter=0&exchange=nyse&render=download'
file_path = '~/Downloads/companylist.csv'
download.file(file_url,file_path)
read.csv(file_path,header = FALSE)
让我们知道您的问题是否已解决。