我正在尝试使用带有以下代码的 beautifulsoup 从网站访问文章内容:
site= 'www.example.com'
page = urllib2.urlopen(req)
soup = BeautifulSoup(page)
content = soup.find_all('p')
content=str(content)
内容对象包含“p”标签内页面的所有主要文本,但是输出中仍然存在其他标签,如下图所示。我想删除包含在匹配的 < > 标签对和标签本身中的所有字符。这样就只剩下文字了。
我试过下面的方法,但似乎不起作用。
' '.join(item for item in content.split() if not (item.startswith('<') and item.endswith('>')))
删除字符串中子字符串的最佳方法是什么?以特定模式开始和结束,例如 < >
原文由 Mustard Tiger 发布,翻译遵循 CC BY-SA 4.0 许可协议
你可以使用
get_text()
下面的示例来自 文档: