我在网站的不同html代码中玩模式匹配,我注意到一些奇怪的东西。我使用了这种模式:
pat = <div class="id-app-orig-desc">.*</div>
我在Play商店的应用页面上使用它(选择一个随机应用程序)。所以根据我的说法,它应该只给出div标签之间的内容(即描述),但这不会发生。我从模式的第一个开始给出了所有内容,直到页面的最后一个完全忽略。谁知道发生了什么?!
我检查列表的长度只返回1。
答案 0 :(得分:0)
首先,do not parse HTML with regex使用专门的工具 - HTML解析器。例如,BeautifulSoup
:
from bs4 import BeautifulSoup
data = """
<div>
<div class="id-app-orig-desc">
Do not try to get me with a regex, please.
</div>
</div>
"""
soup = BeautifulSoup(data)
print soup.find('div', {'class': 'id-app-orig-desc'}).text.strip()
打印:
Do not try to get me with a regex, please.