我在尝试打开一个网站并爬取我想要的数据。我打开了列表页,想要把列表页的网站的有效页码拿到手,这个静态网页没有可以直接定位尾页的元素,并且尾页数据会变动
最初,我尝试点击“下一页”按钮,这个按钮是一直没有被禁用,只是尾页点击后跳转的正文对我没有帮助。例如,如果有400页,那么在第400页上,下一页按钮应该被禁用,但我可以无限次地单击它。在第400页之后,点击它,它第401页显示出“对不起,没有相关记录”
我想通过代码得到有效数据页面的总 页码page的数量,我的尝试如下。请问有大佬能帮我看看吗?除开模拟分页机制外有什么好的方法吗?
import requests
import re
def get_total_pages(base_url):
page = 1
while True:
url = f"{base_url}?page_index={page}"
response = requests.get(url)
if response.status_code != 200:
break
# 检查页面内容是否包含“没有相关记录”的提示
if re.search(r"对不起,没有相关记录", response.text):
return page - 1 # 返回前一页作为总页数
page += 1
def main():
url = "https://vip.stock.finance.sina.com.cn/corp/view/vCB_BulletinGather.php?page_index="
page = get_total_pages(url)
print("共{page}页")
#打印结果为None,问题出在哪里呢?
相似问题