【发布时间】:2021-04-03 00:38:05
【问题描述】:
import requests
from bs4 import BeautifulSoup
# Cleans text (removes any punctuation)
def CleanText(text):
text = str(text)
forbidden = [r'\n', r'.', r'?', r'!', r'(', r')']
for i in forbidden:
text.replace(i, '')
return text
# returns count of a word from a page
def ReturnCount(url, word):
r = requests.get(url, allow_redirects=False)
soup = BeautifulSoup(r.content, 'lxml')
words = str(soup.find(text=lambda text: text and word in text))
words = CleanText(words.lower())
words = words.split()
return words.count(word.lower())
我正在尝试获取网页上特定单词的频率(出现)。但是,我总是得到 0 作为输出。
计数为 0,尽管该词多次出现
输出:0
【问题讨论】:
-
能否也提供
url和word进行复制。
标签: python web-scraping beautifulsoup lxml