我正在尝试提取多页表格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响应中仅提取#?
答案 0 :(得分:1)
您的正则表达式不起作用,因为您在分组括号(.+)
中使用了贪婪捕获。 .+
的编写方式与Page 1 of\s
之后的所有内容(直到文档中最后一个</span>
标记)都匹配。您需要通过在?
之后添加+
来使用non-greedy捕获,如下所示:
Page 1 of\s(.+?)<\/span>