python - 如何使用 beatifulsoup 从 lxml 数据字符串中过滤出带有空格的正确单词
问题描述
嗨,guyz,我正在处理包含大量 html 数据的字符串(在单个字符串中)
from bs4 import BeautifulSoup
import requests
import bs4
url = "any randome url"
html = requests.get(url).text
soup = BeautifulSoup(html,'lxml')
web_page=soup.get_text().strip()
print(web_page.lower())
并且一些单词正在输出中,例如
conditionstravel
对于conditions
&travel
vaccinationstreatment
对于vaccination
&treatment
网页正在抓取是正确的,但这不是预期的,
bcoz 一些标签以文本结尾,conditions
而下一个标签以文本开头,travels
这就是它出现的原因conditionstravel
在这里,我愿意一个一个地抓取网页标签并将其设置为 web_page_data_list 那么有没有办法像上面一样用单独的状态来抓取所有标签文本
问题是我们不能给出特定的字典词,因为这可能是用漂亮的汤或任何其他包装将有助于正确提取它。?
解决方案
在方法中使用separator=' '
参数。.get_text()
您还可以提供strip=True
自动去除每个分隔单词的空白字符。
例如:
import bs4
from bs4 import BeautifulSoup
txt = '''<div>Hello<span>World</span></div>'''
soup = BeautifulSoup(txt, 'html.parser')
web_page=soup.get_text(strip=True, separator=' ')
print(web_page.lower())
print(bs4.__version__)
印刷:
hello world
4.9.1
推荐阅读
- sql - 使用 T-SQL 检索具有许多场景的字符串的一部分
- java - AdMob 直销广告未展示
- windows - 本地 git clone 在特定机器上不起作用
- r - 在 R 中的 dplyr 管道中按组进行线性插值(大约)
- c++ - 在数组中查找重复模式
- javascript - 使用 Javascript 延迟最简单的 HTML 页面
- sql-server - 如何解释附近的 T-SQL 错误语法不正确
- microsoft-edge - 像在 Chrome 中一样在 Edge 中离线
- javascript - 如果已经在 Wordpress 插件菜单中使用,我可以在点击时捕获元素吗?
- python - 使用列表理解最佳表达式删除前导零的问题