【问题标题】:How to get a specific word from html page using beautiful soup in python如何在python中使用漂亮的汤从html页面中获取特定的单词
【发布时间】:2017-11-05 10:45:41
【问题描述】:

我必须从 HTML 页面中提取特定单词并计算该单词被重复的次数。我如何在 python 中使用漂亮的汤来做到这一点?如何在汤中传递 url 然后数单词?

这是我到目前为止的代码。我不知道下一步该做什么。

import bs4 as bs
import urllib.request

source = urllib.request.urlopen('https://pythonprogramming.net/parsememcparseface/').read()

soup = bs.BeautifulSoup(source,'lxml')

for paragraph in soup.find_all('p'):
    print(paragraph.string)
    print(str(paragraph.text)) 

【问题讨论】:

  • 您要提取的这些词是什么?
  • 现在问这个问题还为时过早。继续学习。
  • @cᴏʟᴅsᴘᴇᴇᴅ 我正在尝试提取单词 Internet 和计算机。你能帮帮我吗?
  • 嗯,这并不难。尝试多用谷歌搜索。提示:使用带有text 属性的soup.find_all。

标签: python python-3.x beautifulsoup


【解决方案1】:

您可以使用

获取页面中的所有文本
soup.get_text()

将其设置为变量后,您可以使用 .count() 方法查找某个字符串在 HTML 页面中出现的数量。例如

text = soup.get_text()
print (text.count('word'))

为了确保您没有在单词中找到单词,您可以用空格分隔所有内容,然后在列表的每个索引中查找它们。例如 'house' 在 'houses' 中会被这个固定。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-11-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-08
    • 2020-02-13
    • 2019-11-07
    • 1970-01-01
    相关资源
    最近更新 更多