从关键字到关键字查找字符串的部分

2024-03-28 19:21:57 发布

您现在位置:Python中文网/ 问答频道 /正文

因此,我的代码从URL检索HTML文件并将其保存为文本文档

urllib.urlretrieve("http://www.testlink.com", "example.txt")
retrieve = open("example.txt", "r")

然后,我希望它从包含关键字的行中提取特定的文本。字符串如下所示:

<b class="whb">This is the text I want to retrieve</b> This is additional text that I don't want.

目前,我的代码打印了整行,如下所示:

for line in retrieve.readlines():
    if '<b class="whb">' in line:
        print line

如何指定要打印的行的哪一部分?我想要什么在b^{cl1}$

谢谢你


Tags: 文件代码textintxturlisexample
1条回答
网友
1楼 · 发布于 2024-03-28 19:21:57

正如我在评论中所说,我会使用BeautifulSoup。下面是一个小例子:

from bs4 import BeautifulSoup

html_doc = "<b class='whb'>This is the text I want to retrieve</b> This is additional text that I don't want."

soup = BeautifulSoup(html_doc, 'html.parser')

print soup.b.text

如果您有一个html_doc是一个较大的HTML文档,其中有几个<b>标记,则可以将最后一行替换为:

print soup.find("b", {"class":"whb"}).text

如果html_doc有多个<b class='whb'>选项卡,并且您想要所有这些选项卡,那么请使用findAll()

all_bs = [b.text for b in soup.findAll("b", {"class":"whb"})]

BeautifulSoup是一个功能强大的网站刮刀。请阅读documentation以了解您在特定情况下需要什么

相关问题 更多 >