我正在尝试提取多页表 URL 中的页数
HTML=<span style="float:right">Page 1 of 63,917</span>
需要提取63917。
我用过
soup = bsoup(r.text)
pages=re.findall(r"Page 1 of\s(.+)<\/span>", str(soup))
print(pages)
但是 print(pages) 返回了一大堆 HTML,直到正文结束
##'63,917</span></div><table class="table table-striped##
为什么我的正则表达式不起作用?我如何从 HTML 响应中仅提取 #?
最佳答案
您的正则表达式不起作用,因为您在分组括号中使用了贪婪捕获 (.+)
.按照你写的方式,.+
正在匹配 Page 1 of\s
中的所有内容向前(直到文档中的最后一个 </span>
标记)。您需要使用 non-greedy通过添加 ?
进行捕获在+
之后,像这样:
Page 1 of\s(.+?)<\/span>
关于python - 在多页表中查找页数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54625115/