Python 从SEC EDGAR文件中刮取营业收入时无

Python 从SEC EDGAR文件中刮取营业收入时无,python,html,web-scraping,beautifulsoup,Python,Html,Web Scraping,Beautifulsoup,我正试图通过季度填写获得最近一个季度的营业收入/亏损 以绿色突出显示的所需输出: 以下是我正在尝试抓取的文档的URL: 如果您想直观地看到数据点,请参见第一部分第1项。财务报表、营业收入 我试图获取的图形的HTML代码: 11544 我用于获取此数据点(11544)的代码: 从bs4导入美化组 导入请求 url='1〕https://www.sec.gov/ix?doc=/Archives/edgar/data/320193/000032019319000076/a10-qq320196292

我正试图通过季度填写获得最近一个季度的营业收入/亏损

以绿色突出显示的所需输出:

以下是我正在尝试抓取的文档的URL:

如果您想直观地看到数据点,请参见第一部分第1项。财务报表、营业收入

我试图获取的图形的HTML代码:

11544
我用于获取此数据点(11544)的代码:

从bs4导入美化组
导入请求
url='1〕https://www.sec.gov/ix?doc=/Archives/edgar/data/320193/000032019319000076/a10-qq320196292019.htm'
response=requests.get(url)
content=BeautifulSoup(response.content'html.parser')
operatingincomeloss=content.find('ix:nonfraction',attrs={“name”:“us gaap:operatingincomeloss”,“contextref”:“FD2019Q3QTD”})
打印(操作损失)
我也试过了

operatingincomeloss=content.find('ix:nonfraction',attrs={“name”:“us gaap:operatingincomeloss”}

最后,我想循环所有相关的填充来提取这个数据点。目前,我没有得到任何结果。当我在内容中按CTRl+F组合键时,我也找不到ix:NoFraction标记。

页面通过
JavaScript
加载,我附加了
XHR
请求并提取了所需的数据

import requests
from bs4 import BeautifulSoup

r = requests.get(
    "https://www.sec.gov/Archives/edgar/data/320193/000032019319000076/a10-qq320196292019.htm")

soup = BeautifulSoup(r.text, 'html.parser')

for item in soup.select("#d305292495e1903-wk-Fact-6250FB76089207E7F73CB52756E0D8D0"):
    print(item.text)
输出:

11,544
11,544
12,612
48,305
54,780
7,442
7,496
26,329
26,580
3,687
3,892
14,371
15,044
3,221
3,414
12,142
15,285
1,795
1,765
7,199
7,193
1,155
1,127
4,811
4,980
17,300
17,694
64,852
69,082
11,544
12,612
48,305
54,780
更新:

导入请求
从bs4导入BeautifulSoup
r=requests.get(
"https://www.sec.gov/Archives/edgar/data/320193/000032019319000076/a10-qq320196292019.htm")
soup=BeautifulSoup(r.text'html.parser')
对于soup.findAll中的项目(“ix:nonfraction”,{'contextref':'FD2019Q3QTD','name':'us gaap:OperatingIncomeLoss'}):
打印(项目.文本)

正如@aԋɱҽԃaцєιcαη所说,页面是通过
JavaScript加载的。
我已经使用了此代码的
xhr
请求

考虑到您使用的属性,我只使用了
name
属性,因为每个元素的
contextref
都发生了变化

如果要循环其他元素,还可以更改
name
属性

正如您所说,您希望循环遍历这个标记,我已经在下面的代码中打印了返回的所有输出

代码:

输出:

11,544
11,544
12,612
48,305
54,780
7,442
7,496
26,329
26,580
3,687
3,892
14,371
15,044
3,221
3,414
12,142
15,285
1,795
1,765
7,199
7,193
1,155
1,127
4,811
4,980
17,300
17,694
64,852
69,082
11,544
12,612
48,305
54,780

我仍然不明白你想要的输出是什么,你能附上一张图片吗?只是附上了一张图片对不起。图以绿色突出显示。我的回答如下。这是通过选择一个特定的ID来完成的,对吗?我希望能够对我将循环浏览的其他文档重复执行相同的操作。因此,我无法知道特定的ID。Th这就是我选择按“名称”筛选的原因:“美国公认会计准则:运营成本损失”,“上下文参考”:“FD2019Q3QTD”所以它可以在不同的填充中复制。你知道为什么我的答案不起作用吗?@白痴检查我的更新答案,通过
name
contextref
搜索会给你一个2个数字的输出,因为它以相同的属性出现。我可以知道为什么我的答案被否决了吗?这不是一个错误的答案,对吗?