Python:从html文件中获取和解析文本

2024-05-16 13:35:17 发布

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

我正在努力做一个关于页面排名的项目。在

我想做一个索引(字典),它看起来像这样:
file1.html->;[[猫,吃,吃,喝,牛奶],[file2.html,file3.html]]
file2.html->;[[狗,吠,跑,走],[file1.html,file4.html]]

获取链接很容易找到锚定标记。在

我的问题是-如何获取文本?html文件中的文本不包含在任何标记中,如<p>

提前谢谢你的帮助


Tags: 文件项目标记文本gt字典链接html
2条回答

使用HTML解析器-类似于BeautifulSoup。在

如果文本没有包含在标记中,它真的是HTML吗?
正如Amber所说,使用诸如beauthoulsoup这样的HTML解析器,您可以更轻松地完成这项工作。在

下面的示例演示了一个在标记中返回文本的简单方法。
此方法适用于任何标记AFAIK。在

>>> from BeautifulSoup import BeautifulSoup as bs
>>> html = '''
... <div><a href="/link1">link1 contents</a></div>
... <div><a href="/link2">link2 contents</a></div>
... '''
>>> soup = bs(html)
>>> for anchor_tag in soup.findAll('a'):
...   print anchor_tag.contents[0]
... 
link1 contents
link2 contents

除此之外,我可以想象你会想要一个字典,它能计算出某个术语在某个HTML文档中出现的次数。defaultdict对这类事情有好处:

^{pr2}$

希望这能给你一些想法。如果你遇到其他问题,回来再问一个问题。在

相关问题 更多 >