bco*_*713 4 python regex beautifulsoup web-scraping python-2.7
我正在尝试解析一个网站以提取存储在正文中的一些数据,例如:
<body>
<b>INFORMATION</b>
Hookups: None
Group Sites: No
Station: No
<b>Details</b>
Ramp: Yes
</body>
Run Code Online (Sandbox Code Playgroud)
我想使用BeautifulSoup4和RegEx来提取Hookups和Group Sites等的值,但我对bs4和RegEx都不熟悉.我尝试了以下方法来获取Hookups值:
soup = BeautifulSoup(open('doc.html'))
hookups = soup.find_all(re.compile("Hookups:(.*)Group"))
Run Code Online (Sandbox Code Playgroud)
但搜索结果是空的.
Exp*_*lls 21
BeautifulSoup find_all仅适用于标签.假设HTML很简单,你实际上可以只使用一个纯正则表达式来获得你需要的东西.否则,您可以使用find_all然后获取.text节点.
re.findall("Hookups: (.*)", open('doc.html').read())
Run Code Online (Sandbox Code Playgroud)
您还可以使用textBeautifulSoup 4.2中的属性搜索标记内容
soup.find_all(text=re.compile("Hookups:(.*)Group"));
Run Code Online (Sandbox Code Playgroud)