用python抓取网站时的最大页数

2024-09-30 16:38:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我对python非常陌生,必须从网站上获取一些大学课程的数据:

Xrel

我能得到我需要的信息。问题是我需要它为每个条目(页,月,年)。在

每月的页数各不相同。有没有什么方法可以提取最大的pagenumber,这样我就可以存储它并将其用于循环?在

我会很感激你的帮助。谢谢!在


Tags: 数据方法信息网站条目大学课程我会
2条回答

For循环很好,但不能总是使用它们。在这种情况下,我只需重复按“下一页”按钮中的链接,直到没有这样的按钮为止。像这样:

url = <first page>
while True:
    # extract data
    if <there is a next page button>:
        url = <href of the button>
    else:
        break

这将获取所有页面,为每个页面生成一个beautifulGroup对象,指向下一页的链接位于锚定标记中,类前进

import requests
from urlparse import urljoin


def get_pages(base, url):
    soup = BeautifulSoup(requests.get(url).content)
    yield soup
    next_page = soup.select_one("a.forward")
    for page in iter(lambda: next_page, None):
        soup = BeautifulSoup(requests.get(urljoin(base, page["href"])).content)
        yield soup
        next_page = soup.select_one("a.forward")



for soup in get_pages("https://www.xrel.to/", "https://www.xrel.to/games-release-list.html?archive=2016-01"):
    print(soup)

相关问题 更多 >