gpt4 book ai didi

python - re.findall 的问题(重复)

转载 作者:搜寻专家 更新时间:2023-10-31 22:04:20 25 4
gpt4 key购买 nike

我试图获取 4chan 站点的源代码,并获取主题链接。

我的正则表达式有问题(不工作)。来源:

import urllib2, re

req = urllib2.Request('http://boards.4chan.org/wg/')
resp = urllib2.urlopen(req)
html = resp.read()

print re.findall("res/[0-9]+", html)
#print re.findall("^res/[0-9]+$", html)

问题在于:

print re.findall("res/[0-9]+", html)

正在重复。

我不能使用:

print re.findall("^res/[0-9]+$", html)

我已经阅读了 python 文档,但它们没有帮助。

最佳答案

那是因为源中有多个链接副本。

通过将它们放在一个集合中,您可以轻松地使它们独一无二。

>>> print set(re.findall("res/[0-9]+", html))
set(['res/3833795', 'res/3837945', 'res/3835377', 'res/3837941', 'res/3837942',
'res/3837950', 'res/3100203', 'res/3836997', 'res/3837643', 'res/3835174'])

但是如果您要做比这更复杂的事情,我建议您使用可以解析 HTML 的库。 BeautifulSouplxml .

关于python - re.findall 的问题(重复),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4571468/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com