我有个需求,匹配 HTML 里的注释。以下两段代码:
#!/usr/bin/env python3
import re
html = """
<html>
<something>
</something>
<!--
aaa
bbb
ccc
-->
111<!--
ccc
bbb
aaa
-->11
</html>
"""
item = re.findall(r"(?<=<!--).+?(?=-->)",html,re.S)
for i in item:
print(i)
上面这个可以匹配成功。
这个就匹配不出来:
#!/usr/bin/env python3
import requests
import re
import json
import sys
s = requests.session()
params = {
"ie" : "utf-8",
"kw" : "linux"
}
page = s.get("http://tieba.baidu.com/f",params = params)
text = page.text
tiezi_data = re.findall(r"(?<=<!--).+?(?=-->)",text,re.S)
print(tiezi_data)
print(len(tiezi_data))
贴吧的页面里有大量注释,注释里有大量的信息,可以在浏览器里看到。但是我的正则只能匹配到第一个,我不知道为什么。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.