Python 从网站上抓取表格?

2024-03-30

我想了解 treasury.gov 网站上提供的所有国债收益率。

https://www.treasury.gov/resource-center/data-chart-center/interest-rates/Pages/TextView.aspx?data=yieldAll https://www.treasury.gov/resource-center/data-chart-center/interest-rates/Pages/TextView.aspx?data=yieldAll

我将如何获取这些信息?我假设我必须使用 BeautifulSoup 或 Selenium 或类似的东西(最好是 BS4)。我最终想将这些数据放入 Pandas DataFrame 中。


这是使用 requests 和 beautifulsoup 获取表中数据的一种方法

import pandas as pd
import requests
from bs4 import BeautifulSoup

url = 'https://www.treasury.gov/resource-center/data-chart-center/interest-rates/Pages/TextView.aspx?data=yieldAll'

r = requests.get(url)
html = r.text

soup = BeautifulSoup(html)
table = soup.find('table', {"class": "t-chart"})
rows = table.find_all('tr')
data = []
for row in rows[1:]:
    cols = row.find_all('td')
    cols = [ele.text.strip() for ele in cols]
    data.append([ele for ele in cols if ele])

result = pd.DataFrame(data, columns=['Date', '1 Mo', '2 Mo', '3 Mo', '6 Mo', '1 Yr', '2 Yr', '3 Yr', '5 Yr', '7 Yr', '10 Yr', '20 Yr', '30 Yr'])

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

Python 从网站上抓取表格? 的相关文章

随机推荐

  • Spring Boot中无法拦截和操作HttpServletResponse

    我有一个要求Base64解码我的 Spring Boot 服务收到的每个 JSON 请求负载 JSON 有效负载将是Base64在使用 HTTP 发布之前在客户端进行编码POST方法 此外 我还需要Base64在呈现给调用客户端应用程序之前
  • 结构体接口

    当你定义一个新的struct最好也定义该类型的接口 即 setter 和 getter 函数 或直接通过 and gt 运营商 EDIT纯 C 编程 这取决于您的结构是否是抽象数据类型 如果您在标头中公开结构定义 则定义访问器没有任何意义
  • 如何使用简单注入器将依赖项注入到 WCF 属性中

    我有一堆与 REST 和 SOAP 配合使用的 WCF 服务 我创建了一个 WCF 属性 用于检查当前 httpcontext 是否存在 如果存在 则使用 cookie 身份验证 否则使用自定义 WCF 身份验证 我的属性如下所示 Publ
  • Android 颜色通知图标

    我正在开发一个为用户创建通知的应用程序 我希望图标在状态栏中显示为白色 但在下拉通知菜单中显示时显示为蓝色 以下是 Google Store 应用执行相同操作的示例 状态栏中的白色通知 下拉菜单中的彩色通知 我怎样才能复制这个 我必须设置哪
  • pjax :HTML 链接,其工作方式类似于浏览器后退按钮

    我使用 pjax 进行网站导航 我需要创建一个 HTML 后退按钮 其工作方式与浏览器后退按钮完全相同 但这应该是一个简单的 HTML 链接 如何创建导航到上一页的 pjax 链接 我搜索过 所有主题似乎都与浏览器后退按钮有关 这不是我想要
  • Apache Web 服务器在 60 秒后超时

    我在 IBM Softlayer 中运行的 apache Web 服务器 php 在 60 秒后遇到超时 这些是我的设置 这些设置后httpd服务器重新启动 httpd conf TimeOut 300 Timeout 300 同时尝试两者
  • 颤振行和列

    我是一个颤振初学者 如何创建无边框的 4 2 表格列之类的元素 我尝试过 但没有得到我想要的对齐方式 像这样 https i stack imgur com i1a3f jpg 有人可以指导我如何解决这个问题吗 这是我的有状态小部件的构建方
  • 如何改进 clisp 错误消息?

    我已经接触过一些clisp 有点令人困惑的是它没有打印出错误所在的行号 或者 至少给出错误所在的一般提示 在某些情况下这一定是可能的 对吧 有什么方法可以获得更好的错误消息吗 正如我看到的大多数涉及 clisp 的问题一样 答案可能是 不要
  • 请对我的示例 Python 程序进行代码审查 [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我仍在学习
  • 在 javascript 排序调用之前强制更新 element.innerHTML

    这种情况的最佳实践是什么 1 用户点击 对巨大的javascript数组进行排序 2 浏览器通过element innerHTML Sorting 显示 Sorting 3 浏览器对巨大的 javascript 数组进行排序 100 CPU
  • 使用流畅语法的嵌套 GroupBy LINQ

    我正在尝试使用流畅的 即 方法 语法编写嵌套的 GroupBy LINQ 表达式 这是我的课程和数据 class Person public String ZipCode Gender Name private static List
  • NotImplementedError:无法对未注册的加载器类型执行此操作

    我正在编写一个小脚本来生成 HTML 文件 为此 我正在使用jinja2 这是我的脚本 在jinja2文档 coding utf 8 from jinja2 import Environment PackageLoader env Envi
  • Nuget 包有什么意义?

    也许我在这里做错了什么或者表达了纯粹的无知 但我真的看不出 Nuget 包有什么好处 我最近决定安装一些 Nuget 包来替换我的应用程序中的静态 DLL 当我检查包创建的文件夹时 它们似乎包含许多不同版本的 DLL 所有这些都嵌套在一系列
  • 重命名没有列名的 pandas 数据框的列[重复]

    这个问题在这里已经有答案了 我试图在 dataframe from dict 操作之后命名新数据帧的列 只需使用 pandas dataframe from dict 函数 df pd DataFrame from dict my dict
  • 如何在python2.7中安装gtk?

    我正在使用 Debian 6 04 和 Python 2 7我编译了Python 2 7 configure make make install 在控制台中 gt python2 7 Python 2 7 3 default Jul 28
  • 如何排序 unsort: array(1).sort 转换 array(2) -> array(3).unsort (反转 array(1).sort

    如何对结果进行排序 操作和取消排序 假设我有一个浮点数组p1 0 15 0 3 0 25 0 12 其排序为 p2 sort p1 一个函数 操作p2作为输入 导致p3 p3 f p2 x y 对于某些功能f 我怎样才能取消排序p3以最聪明
  • Jmeter中的“延迟时间”与“连接时间”有什么区别?

    我是jmeter 3 1用户 我不清楚 延迟时间 与 连接时间 的区别 事实上 在jmeter官方文档中 是这样说的 新的连接时间指标 connectTime 表示建立连接的时间 默认情况下 它不会保存到 CSV 或 XML 要保存它 请添
  • 为什么当我导入正在打印的同一文件时,Python 会打印两次输出?

    我一直在玩Python 因为我是Python的初学者 我写了以下 Parent 课程 这是我从 Udacity 在线课程中阅读的 继承 py 文件 import inheritance Why this import statement c
  • 我怎样才能使其成为类的私有成员或方法,以便可以在静态库本身内部而不是在库外部访问它?

    我想为 Objective C 中的以下类准备小型静态库 A类 B类 C类 我想将这些类包含在静态库中 现在 A 类可以访问 B 类或 C 类方法的公共成员 现在当我将上述库集成到其他项目中时 我准备了D类 只能访问A类和B类 不是 C 类
  • Python 从网站上抓取表格?

    我想了解 treasury gov 网站上提供的所有国债收益率 https www treasury gov resource center data chart center interest rates Pages TextView a