Python爬取网站页面链接列表时URL配置错误仅返回首页如何解决
分页URL构造错误修复方案
问题根源
你构造的URL存在两个语法错误,导致服务器无法正确识别分页参数:
- 分页标识
strona-{page}属于页面路径的一部分,不需要在它前面加?(?是查询参数的起始标识,加了之后会把strona-{page}识别为无效查询参数) - 整个URL只能存在1个
?作为查询参数的起始,你写了两个?,导致后面的s=5等参数被截断,服务器每次默认返回第一页内容
修复后代码
import requests import numpy as np import pandas as pd import matplotlib.pyplot as plt page = 1 while page != 6: # 移除strona前面的?,只保留查询参数开头的一个? url = f"https://www.autocentrum.pl/stacje-paliw/strona-{page}/?s=5&order=&q=" print(url) page = page + 1
可选优化
可以把while循环换成更简洁的for循环写法:
for page in range(1, 6): url = f"https://www.autocentrum.pl/stacje-paliw/strona-{page}/?s=5&order=&q=" print(url) # 后续补充页面请求、内容解析逻辑即可
内容的提问来源于stack exchange,提问作者Aisyram
相关产品推荐
相关产品推荐

