【发布时间】:2018-09-04 14:48:48
【问题描述】:
我想从网站上抓取数据,但首先我想获取带有分页的页面。这里我使用 python 作为程序语言,我已经得到了这个代码。但是当我运行它时,它不能正常工作。当 response.url 与 expected_url 不匹配时,必须停止结果。有人知道如何解决吗?请帮忙,谢谢。 这是代码:
from bs4 import BeautifulSoup
import urllib.request
count = 0
url = "http://www.belanjamimo.net/foundation-bb-cream/?o=a&s=%d"
def get_url(url):
req = urllib.request.Request(url)
return urllib.request.urlopen(req)
expected_url = url % count
response = get_url(expected_url)
while (response.url == expected_url):
print("GET {0}".format(expected_url))
count += 9
expected_url = url % count
response = get_url(expected_url)
【问题讨论】:
-
它永远不会停止,因为你的条件在这个网站上永远是True,即使没有数据也可以调用belanjamimo.net/foundation-bb-cream/?o=a&s=63
-
当它到达总页的末尾时如何停止它?
-
在wihle循环结束时,您可以检查“下一页按钮”列表元素是否被禁用并添加中断语句
标签: python web-scraping pagination