从 url 下载 csv 并将其设为数据框 python pandas

2024-01-16

我是 python 新手,所以在这里需要一些帮助。我有一个带有 url 列的数据框,其中包含一个链接,允许我为每个链接下载 CSV。我的目标是创建一个循环/任何有效的方法,以便我可以运行一个命令来下载、读取 csv 并为每一行创建一个数据框。任何帮助,将不胜感激。我在下面附上了部分数据框。如果链接不起作用(可能不会,您可以将其替换为来自 'https://finance.yahoo.com/quote/GOOG/history?p=GOOG 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

再次感谢。


有多种方法可以从 URL 获取 CSV 数据。从您的示例中,即雅虎财经,您可以复制Historical 数据链接并在 Pandas 中调用它

...
HISTORICAL_URL = "https://query1.finance.yahoo.com/v7/finance/download/GOOG?period1=1582781719&period2=1614404119&interval=1d&events=history&includeAdjustedClose=true"

df = pd.read_csv(HISTORICAL_URL)

一般模式可能涉及诸如requests or httpx发出 GET|POST 请求,然后将内容获取到io.

import pandas as pd
import requests
import io

url = 'https://query1.finance.yahoo.com/v7/finance/download/GOOG'
params ={'period1':1538761929,
         'period2':1541443929,
         'interval':'1d',
         'events':'history',
         'crumb':'v4z6ZpmoP98',
        }

r = requests.post(url,data=params)
if r.ok:
    data = r.content.decode('utf8')
    df = pd.read_csv(io.StringIO(data))

为了获取参数,我只是按照喜欢并复制“?”之后的所有内容。检查它们是否匹配;)

Results: enter image description here

Update:


如果你可以直接在url中看到原始csv内容,只需将url传入pd.read_csv直接来自 url 的示例数据:

data_url ='https://raw.githubusercontent.com/pandas-dev/pandas/master/pandas/tests/data/iris.csv'

df = pd.read_csv(data_url)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从 url 下载 csv 并将其设为数据框 python pandas 的相关文章

  • 地图与星图的性能?

    我试图对两个序列进行纯Python 没有外部依赖 逐元素比较 我的第一个解决方案是 list map operator eq seq1 seq2 然后我发现starmap函数来自itertools 这看起来和我很相似 但事实证明 在最坏的情
  • Python MySQL 模块

    我正在开发一个需要与 MySQL 数据库交互的 Web 应用程序 但我似乎找不到任何真正适合 Python 的模块 我特别寻找快速模块 能够处理数十万个连接 和查询 所有这些都在短时间内完成 而不会对速度产生重大影响 我想我的答案将是游戏领
  • 更改Python pylab玫瑰/极坐标图中图例标题的字体大小

    我正在尝试更改玫瑰图或 极地 图上现有图例标题的字体大小 大部分代码是由不在的其他人编写的 我已经添加 ax legend title legend title setp l get title fontsize 8 添加标题 legend
  • numpy 数组最快的保存和加载选项

    我有一个生成二维的脚本numpy数组与dtype float和形状的顺序 1e3 1e6 现在我正在使用np save and np load对数组执行 IO 操作 然而 这些函数对于每个数组都需要几秒钟的时间 是否有更快的方法来保存和加载
  • 如何最好地将包含列表或元组的 Pandas 列提取到多个列中[重复]

    这个问题在这里已经有答案了 我不小心用错误重复的链接关闭了这个问题 这是正确的 Pandas 将列表的列拆分为多列 https stackoverflow com questions 35491274 pandas split column
  • Python变量赋值问题

    a b 0 1 while b lt 50 print b a b b a b 输出 1 2 4 8 16 32 wheras a b 0 1 while b lt 50 print b a b b a b 输出 正确的斐波那契数列 1 1
  • Cython:为什么 size_t 比 int 快?

    更改某些 Cython 变量的类型int输入size t可以显着减少某些功能的时间 30 但我不明白为什么 例如 cimport numpy as cnp import numpy as np def sum int cnp int64 t
  • 为图例中的点设置固定大小

    我正在制作一些散点图 我想将图例中的点的大小设置为固定的相等值 现在我有这个 import matplotlib pyplot as plt import numpy as np def rand data return np random
  • Python3.1中的视图?

    Python3 1中的视图到底是什么 它们的行为方式似乎与迭代器类似 并且它们也可以具体化为列表 迭代器和视图有何不同 据我所知 视图仍然附加到创建它的对象上 对原始对象的修改会影响视图 来自docs http docs python or
  • 多线程写入文件

    前几天刚开始使用 python 对多线程的整个概念还很陌生 我在多线程时写入文件时遇到问题 如果我按照常规方式执行此操作 它会不断覆盖正在写入的内容 使用 5 个线程写入文件的正确方法是什么 不降低性能的最佳方法是在所有线程之间使用队列 每
  • 在Python中引用不带换行符的长字符串

    我正在尝试在 Python 中编写一个长字符串 该字符串显示为 OptParser 选项的帮助项 在我的源代码 py 文件中 我想放置换行符 以便我的代码不会花费新行 但是 我不希望这些换行符影响代码运行时该字符串的显示方式 例如 我想写
  • Beautiful Soup 获取动态表数据

    我有以下代码 url https www basketball reference com leagues NBA 2017 standings html all expanded standings html urlopen url so
  • 安排 Asyncio 任务每 X 秒执行一次?

    我正在尝试创建一个 python 不和谐机器人 它将每隔 X 秒检查一次活跃会员 并根据会员的在线时间奖励积分 我正在使用 asyncio 来处理聊天命令 这一切都正常 我的问题是找到一种方法来安排每隔 X 秒异步检查一次活动成员 我已经阅
  • python 函数返回 javascript date.getTime()

    我正在尝试创建一个简单的 python 函数 它将返回与 javascript 相同的值new Date getTime 方法 如所写here http www w3schools com js js dates asp javascrip
  • 使用 Pandas 和 Group By 绘制堆叠直方图

    我正在使用如下所示的数据集 Gender Height Width Male 23 4 4 4 Female 45 4 4 5 我想可视化高度和宽度的堆叠直方图 我希望每个图有两个堆叠的直方图 每个性别一个 这是文档中的堆叠直方图 如果存在
  • 在 python 中使用递归替代 len()

    作为 CS1301 问题的一部分 我正在尝试使用递归编写一个函数 该函数将执行与 len 完全相同的操作 但是 我有两个问题 我正在使用全局变量 但我在课程中还没有学到这一点 cs1301 自动评分器告诉我 我的函数返回 26 而不是 13
  • 用于桌面数据库应用程序的 Python 框架

    是否有一个框架可以为Python开发桌面数据库应用程序 一些带有CRUD屏幕的屏幕 我正在寻找类似于 Windows 窗体的东西 能够将 TextField Combos 和其他 UI 隐喻与datasets连接到关系数据库例如 MySQL
  • python pandas如何在多个条件下过滤字符串

    我有以下数据框 import pandas as pd data 5Star FiveStar five star fiv estar data pd DataFrame data columns columnName 当我尝试用一 种条件
  • 连接运算符 + 或 ,

    var1 abc var2 xyz print literal var1 var2 literalabcxyz print literal var1 var2 literal abc xyz 除了带有 的自动空格之外 两者有什么区别 哪个通
  • PyQt QFileDialog exec_ 很慢

    我正在使用自定义QFileDialog因为我想选择多个目录 但是exec 功能非常慢 我不明白为什么 我正在使用最新版本的 PyQt 代码片段 from PyQt4 import QtGui QtCore QtNetwork uic cla

随机推荐

  • 无法运行 ipad 应用程序 [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我需要一些帮助 我从 App Store 免费 下载了一个 ipad 应用程序 现在我想在任何模拟器上运行该应用程序 我尝试了很多模拟器 但都失败了
  • 获取 MP4 流长度

    我正在一个应用程序中工作 我们使用 IMediaDet 来获取流长度 现在我们开始使用 MP4 容器 问题是 当我尝试使用 MP4 文件使用 IMediaDet put fileName 时 我得到 HRESULT 2147024770 E
  • 如何从 openlibrary api 解析 Json 数据? (适当地)

    如果这个问题已经得到解答 请原谅我 我看到了有关 json 数据和 openlibrary 的各种答案 到目前为止 我从 openlibrary 获取的 json 数据和我在示例中看到的 json 数据似乎格式不同 我的问题是 使用 php
  • 使用“AUTO”策略时使用 Doctrine 显式设置 Id

    我的实体使用此注释作为其 ID orm Id orm Column type integer orm GeneratedValue strategy AUTO protected id 我从一个干净的数据库导入旧数据库中的现有记录并尝试保留
  • Athena 在 S3 上查询数据的替代方案

    我身边有300 GBs的数据S3 假设数据如下 S3 Bucket Country Month Day 1 csv S3 Countries Germany 06 01 1 csv S3 Countries Germany 06 01 2
  • 解释一下这个 UTF-8 检测正则表达式

    这个问题询问如何检测 UTF 8 字符串 如何检测是否必须对字符串应用 utf8 解码或编码 https stackoverflow com questions 4407854 解决方案是这样的 if preg match u string
  • Laravel .htaccess 子文件夹

    我现在已经安装了具有默认文件夹结构的 Laravel 在我的根文件夹中 有一个像这样的 htaccess 文件 Options FollowSymLinks
  • 将元素添加到 rxjsBehaviorSubject 或 Angular2+ 中数组的主题

    我正在阅读本教程的 不相关组件 与服务共享数据 部分 了解如何在 Angular 中的不相关组件之间共享数据here https angularfirebase com lessons sharing data between angula
  • 删除 Chrome 中音频播放器的最大宽度

    我希望默认的 HTML5 音频播放器适合其父容器的宽度 我将其显示设置为 块 宽度设置为 100 然而 Chrome 似乎在超过一定的窗口大小后开始在左侧和右侧添加填充 Firefox 的行为符合我的预期 播放器的边缘恰好到达父 div 的
  • 如何编写多行字符串文字

    有没有办法在 C 中使用 Perl 那样的多行纯文本 常量文字 也许有一些解析技巧 include正在读取一个文件 我知道你可以用 C 11 中的原始字符串来做到这一点 嗯 有点 最简单的方法是仅使用相邻字符串文字由编译器连接的事实 con
  • 关于 Team Foundation 中的功能和积压项目,Epics 是什么? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 From 这个链接 https stackoverflow com questions 16698363 difference betwe
  • 收到远程通知后重新加载/刷新场景 swiftUI

    我有这个问题 我在 AppDelegate 中使用 application didReceiveRemoteNotification 收到来自 CloudKit 的通知 我能够接收 recordId 获取它并成功保存它 问题是 场景没有刷新
  • 比较两个 NumPy 数组是否相等(按元素)

    比较两个 NumPy 数组是否相等的最简单方法是什么 其中相等定义为 A B iff 对于所有索引 i A i B i 只需使用 给我一个布尔数组 gt gt gt numpy array 1 1 1 numpy array 1 1 1 a
  • 在 Javascript 中将 ISO/Windows 字符集转换为 UTF-8

    我正在开发一个火狐插件 我获取网页来为用户做一些分析 问题是当我尝试获取不是 utf 8 编码的 XMLHttpRequest 页面时 我看到的字符串是混乱的 例如 带有 windows 1125 的希伯来语页面或带有 gb2312 的中文
  • 在 JavaScript 中分配内存

    我们在深入研究 JavaScript 时遇到了麻烦 请帮助我们 提前致谢 下面的代码 为什么 samurai 仍然无法调用函数 yell gt var ninja yell function yell n return n gt 0 yel
  • 如何在我的数据库中实现 Twitter 转发操作

    我正在实现类似于 Twitter 的网络应用程序 我需要实施 转发 操作 并且一条推文可以被一个人转发多次 我有一个基本的 推文 表 其中包含以下列 Tweets tweet id 推文文本 tweet date created 推文用户
  • 为什么 SQL Server 2000 将 SELECT test.* 和 SELECT t.est.* 视为相同?

    我在 SQL Server 2000 中做了一个查询 并在表名中间添加了一个句点 SELECT t est FROM test 代替 SELECT test FROM test 并且查询仍然完美执行 Even SELECT t e st F
  • 域特定的 htpasswd 条件

    我正在使用通配符 dns 系统 该系统通过单个 Web 应用程序路由所有子域 并根据 URL 的第一部分 X domain com 其中 X 是用户名 设置用户 ID 我现在想要编辑 htaccess 文件 以针对特定域使用 htpassw
  • 如何按周对日期字段进行分组(每周从周六开始)?

    我知道当我看到这个问题的答案时我会 呃 但尽管如此 如何按周对日期字段进行分组 每周从周六开始 你需要先使用日期优先 http msdn microsoft com en us library ms181598 aspx to set Sa
  • 从 url 下载 csv 并将其设为数据框 python pandas

    我是 python 新手 所以在这里需要一些帮助 我有一个带有 url 列的数据框 其中包含一个链接 允许我为每个链接下载 CSV 我的目标是创建一个循环 任何有效的方法 以便我可以运行一个命令来下载 读取 csv 并为每一行创建一个数据框