如何获取结果网址:https://www.sec.gov/Archives/edgar/data/1633917/000163391718000094/0001633917-18-000094-index.htm
...从此页面开始...
https://www.sec.gov/cgi-bin/browse-edgar?action=getcompany&CIK=0001633917&owner=exclude&count=40
...通过指定date = '2018-04-25
,我想要8-k
进行归档吗?我是否循环播放,还是有一个班轮代码可以获取结果?
from bs4 import BeautifulSoup
from bs4.element import Comment
import requests
date='2018-04-25'
CIK='1633917'
url = 'https://www.sec.gov/cgi-bin/browse-edgar?action=getcompany&CIK=' + CIK + '&owner=exclude&count=100'
r = requests.get(url)
soup = BeautifulSoup(r.text,'html.parser')
a=soup.find('table', class_='tableFile2').findAll('tr')
for i in a:
print i
答案 0 :(得分:1)
没有任何班轮代码可以得到想要的东西。您必须遍历各行,然后检查这些值是否匹配。
但是,有一种更好的方法可以缩小行的范围。您可以直接选择与其中一个值匹配的行。例如,您可以选择所有具有date = '2018-04-25'
的行,然后检查Filing是否匹配。
代码:
for date in soup.find_all('td', text='2018-04-25'):
row = date.find_parent('tr')
if row.td.text == '8-K':
link = row.a['href']
print(link)
输出:
/Archives/edgar/data/1633917/000163391718000094/0001633917-18-000094-index.htm
因此,在这里,您不必遍历所有行,而只需遍历具有所需日期的行。在这种情况下,只有这样的一行,因此我们仅循环一次。