我是 python 的新手,所以在这里需要一些帮助。我有一个带有 url 列的数据框和一个链接,允许我为每个链接下载 CSV。我的目标是创建一个循环/任何有效的方法,以便我可以运行一个命令,该命令允许我下载、读取 csv 并为每一行创建一个数据框。任何帮助,将不胜感激。我在下面附上了部分数据框。如果链接不起作用(它可能不会,您可以将其替换为来自“ https://finance.yahoo.com/quote/GOOG/history?p=GOOG ”(任何其他公司)的链接,并且导航以下载 csv 并使用该链接。
数据框:
Symbol Link
YI https://query1.finance.yahoo.com/v7/finance/download/YI?period1=1383609600&period2=1541376000&interval=1d&events=history&crumb=PMHbxK/sU6E
PIH https://query1.finance.yahoo.com/v7/finance/download/PIH?period1=1383609600&period2=1541376000&interval=1d&events=history&crumb=PMHbxK/sU6E
TURN https://query1.finance.yahoo.com/v7/finance/download/TURN?period1=1383609600&period2=1541376000&interval=1d&events=history&crumb=PMHbxK/sU6E
FLWS https://query1.finance.yahoo.com/v7/finance/download/FLWS?period1=1383609600&period2=1541376000&interval=1d&events=history&crumb=PMHbxK/sU6E
再次感谢。
原文由 cloudly lemons 发布,翻译遵循 CC BY-SA 4.0 许可协议
有多种方法可以从 URL 获取 CSV 数据。从您的示例,即 Yahoo Finance,您可以复制
Historical
数据链接并在 Pandas 中调用它一般模式可能涉及工具,如
requests
或httpx
发出 GET|POST 请求,然后将内容获取到io
为了获得参数,我只是跟随喜欢的并复制“?”之后的所有内容。检查它们是否匹配 ;)
结果:
更新:
如果您可以直接在 url 中看到原始 csv 内容,只需将 url 传递到
pd.read_csv
示例数据直接来自 url: