获取txt文件的请求在本地主机上不起作用,但在google colab上起作用

2024-04-16 13:13:02 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试从exchange下载txt/csv文件。
我已确定此url包含该信息。
该代码在google colab上有效,但在本地Jupiter笔记本上无效。
如果没有中断,单元将继续运行而没有结果,并返回中断。
该站点限制尝试次数

import requests 
import pandas as pd
import io
url = 'http://www.cffex.com.cn/quote_IO.txt'

data = requests.get(url)
CSI300_option = pd.read_csv(io.StringIO(data.content.decode('utf-8')))
CSI300_option

下面是我从开发工具收到的HTTP请求

GET /quote_IO.txt HTTP/1.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Upgrade-Insecure-Requests: 1
Host: www.cffex.com.cn
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.0 Safari/605.1.15
Accept-Language: en-GB,en;q=0.9
Accept-Encoding: gzip, deflate
Connection: keep-alive

1条回答
网友
1楼 · 发布于 2024-04-16 13:13:02

似乎您需要能够在HTTP GET上指定超时

这是我用来取得成功的最低限度的代码:-

import pandas as pd
import requests
import io

URL = 'http://www.cffex.com.cn/quote_IO.txt'

with requests.Session() as session:
    response = session.get(URL, timeout=5)
    response.raise_for_status()
    df = pd.read_csv(io.StringIO(response.text))
    print(df)

相关问题 更多 >