如何使用beautifulsoup在其子

时间:2017-05-01 02:02:29

标签: beautifulsoup locate edgar

<DIV align="center" style="margin-left: 0%; margin-right: 0%; font-size: 10pt; font-family: Arial, Helvetica; color: #000000; background: #FFFFFF">

<A name='123'></A><B><FONT style="font-family: 'Times New Roman', Times">DIRECTOR
COMPENSATION</FONT></B>  </DIV>

您好我正在从SEC EDGAR下载的代理声明中抓取信息。我想知道如何通过内部的字符串找到上面的&#34;董事补偿&#34;美味的汤?我正在尝试为这样的其他网页制作通用代码,所以我必须依赖关键字。

非常感谢!

1 个答案:

答案 0 :(得分:1)

这应该包含所有包含'DIRECTOR COMPENSATION'的标签

tags = [ tag for tag in soup.find_all() if 'DIRECTOR COMPENSATION' in tag.text ]

如果您想使用tag.text的正则表达式:

tags = [ 
    tag for tag in soup.find_all('div') 
    if re.search('DIRECTOR\s+COMPENSATION', tag.text, flags=re.IGNORECASE) 
]

如果您想使用关键字列表:

tags = [ 
    tag for tag in soup.find_all('table') 
    if any( re.search(k, tag.text, flags=re.IGNORECASE) for k in ('regex 1', 'regex 2' ) ) 
]