如何通过python中的漂亮汤在html页面中找到特定单词?

卡尼卡·辛格|

我想通过该html文本中的漂亮内容查找某个单词在网页中出现了多少次?我尝试了该findAll功能,但是仅在特定标签内找到单词,就像soup.body.findAll在body标签内找到该单词一样,但是我希望它在html文本中的所有标签内搜索该单词。同样,一旦找到该单词,我需要创建该单词前后的单词列表,有人可以帮我怎么做吗?谢谢。

里塔夫

根据最新的BeautifulSoup 4 API,您可以使用recursive关键字在整个树中查找文本。您将拥有字符串,然后您可以对其进行运算并分隔单词。

这是一个完整的示例:

import bs4
import re

data = '''
<html>
<body>
<div>today is a sunny day</div>
<div>I love when it's sunny outside</div>
Call me sunny
<div>sunny is a cool word sunny</div>
</body>
</html>
'''

searched_word = 'sunny'

soup = bs4.BeautifulSoup(data, 'html.parser')
results = soup.body.find_all(string=re.compile('.*{0}.*'.format(searched_word)), recursive=True)

print 'Found the word "{0}" {1} times\n'.format(searched_word, len(results))

for content in results:
    words = content.split()
    for index, word in enumerate(words):
        # If the content contains the search word twice or more this will fire for each occurence
        if word == searched_word:
            print 'Whole content: "{0}"'.format(content)
            before = None
            after = None
            # Check if it's a first word
            if index != 0:
                before = words[index-1]
            # Check if it's a last word
            if index != len(words)-1:
                after = words[index+1]
            print '\tWord before: "{0}", word after: "{1}"'.format(before, after)

它输出:

Found the word "sunny" 4 times

Whole content: "today is a sunny day"
    Word before: "a", word after: "day"
Whole content: "I love when it's sunny outside"
    Word before: "it's", word after: "outside"
Whole content: "
Call me sunny
"
    Word before: "me", word after: "None"
Whole content: "sunny is a cool word sunny"
    Word before: "None", word after: "is"
Whole content: "sunny is a cool word sunny"
    Word before: "word", word after: "None"

另请参阅此处的字符串关键字参考

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在包含特定单词的HTML页面中更改行的颜色

来自分类Dev

Perl LWP在页面中查找包含特定单词的链接

来自分类Dev

如何用python中的漂亮汤替换html页面中的特定文本行

来自分类Dev

使用漂亮的汤通过python解析

来自分类Dev

如何使用python替换文本文件中特定单词附近的单词

来自分类Dev

如何通过终端从文本文件中删除包含特定单词的行?

来自分类Dev

如何使用BS4在HTML代码中找到此通用标签(漂亮的汤)

来自分类Dev

如何使用python在网页的HTML中搜索包含特定单词的URL?

来自分类Dev

如何从DeepDiff中删除特定单词?

来自分类Dev

删除python中的特定单词

来自分类Dev

在Google表格中,如何通过ArrayFormula()计算行中特定单词的出现次数

来自分类Dev

如何在RPGLE中找到句子中特定单词的起始位置

来自分类Dev

Python美丽汤如何在ul中找到li?

来自分类Dev

如何从列表中找到包含特定字母的单词?[Python]

来自分类Dev

如何在python中找到单词

来自分类Dev

找到特定单词后如何删除表格单元格中的文本

来自分类Dev

如何在包含特定单词的HTML页面中更改行的颜色

来自分类Dev

如何在python中找到单词中的字母数?

来自分类Dev

带有python漂亮汤的HTML表

来自分类Dev

如何从python文档中找到特定单词的出现频率?

来自分类Dev

从python列表中查找特定单词

来自分类Dev

在python中打印特定单词

来自分类Dev

如何从文本文件中找到相同的特定单词并将其作为输出说出来?

来自分类Dev

为字典中找到的特定单词添加数据帧的前几行

来自分类Dev

如何在 Python 的句子中收集特定单词?

来自分类Dev

如何从字符串中查找特定单词并通过这些单词合并变量 2

来自分类Dev

如何通过使用 re python 忽略特定字符从字符串中搜索特定单词

来自分类Dev

如何在字符串中找到特定单词并添加类(Javascript)

来自分类Dev

如何从数组中获取特定单词?

Related 相关文章

  1. 1

    如何在包含特定单词的HTML页面中更改行的颜色

  2. 2

    Perl LWP在页面中查找包含特定单词的链接

  3. 3

    如何用python中的漂亮汤替换html页面中的特定文本行

  4. 4

    使用漂亮的汤通过python解析

  5. 5

    如何使用python替换文本文件中特定单词附近的单词

  6. 6

    如何通过终端从文本文件中删除包含特定单词的行?

  7. 7

    如何使用BS4在HTML代码中找到此通用标签(漂亮的汤)

  8. 8

    如何使用python在网页的HTML中搜索包含特定单词的URL?

  9. 9

    如何从DeepDiff中删除特定单词?

  10. 10

    删除python中的特定单词

  11. 11

    在Google表格中,如何通过ArrayFormula()计算行中特定单词的出现次数

  12. 12

    如何在RPGLE中找到句子中特定单词的起始位置

  13. 13

    Python美丽汤如何在ul中找到li?

  14. 14

    如何从列表中找到包含特定字母的单词?[Python]

  15. 15

    如何在python中找到单词

  16. 16

    找到特定单词后如何删除表格单元格中的文本

  17. 17

    如何在包含特定单词的HTML页面中更改行的颜色

  18. 18

    如何在python中找到单词中的字母数?

  19. 19

    带有python漂亮汤的HTML表

  20. 20

    如何从python文档中找到特定单词的出现频率?

  21. 21

    从python列表中查找特定单词

  22. 22

    在python中打印特定单词

  23. 23

    如何从文本文件中找到相同的特定单词并将其作为输出说出来?

  24. 24

    为字典中找到的特定单词添加数据帧的前几行

  25. 25

    如何在 Python 的句子中收集特定单词?

  26. 26

    如何从字符串中查找特定单词并通过这些单词合并变量 2

  27. 27

    如何通过使用 re python 忽略特定字符从字符串中搜索特定单词

  28. 28

    如何在字符串中找到特定单词并添加类(Javascript)

  29. 29

    如何从数组中获取特定单词?

热门标签

归档