使用保留相同网址的多页网页来抓取网站?

时间:2020-04-07 19:54:30

标签: python

我第一次在python中尝试网络抓取。我正在使用beautifulsoup4软件包来这样做。我见过其他一些人说,如果要从具有多个页面的站点中获取所有数据,则需要使用for循环,但是在这种特殊情况下,当您从页面转到另一个页面时,URL不会更改。页。我该怎么办?任何帮助将不胜感激 这是我的python代码:

import requests
from bs4 import BeautifulSoup


response = requests.get("https://wpcarey.asu.edu/people/departments/finance")

soup = BeautifulSoup(response.text, "html.parser")


professors = soup.select(".view-content .views-row")

professor_names = {}

for professor in professors:
    if "Professor" in professor.select_one(".views-field.views-field-nothing-1 .field-content .title").getText() or "Lecturer" in professor.select_one(".views-field.views-field-nothing-1 .field-content .title").getText():
        if professor.select_one(".views-field.views-field-nothing-1 .field-content .name > a").getText() not in professor_names:
            professor_names[professor.select_one(".views-field.views-field-nothing-1 .field-content .name > a").getText()] = professor.select_one(".views-field.views-field-nothing .field-content .email > a").getText()

print(professor_names)

相信我,我知道这很可怕,但这只是草稿。这里的主要重点是找到一种遍历每个页面以检索数据的方法。 如果有帮助,这是网站的首页。 https://wpcarey.asu.edu/people/departments/finance 再次感谢。

1 个答案:

答案 0 :(得分:0)

如果将鼠标悬停在Button上,则转到下一页,您会看到第二页在此链接https://wpcarey.asu.edu/people/departments/finance?page=0%2C1下也可用。 第三页是:https://wpcarey.asu.edu/people/departments/finance?page=0%2C2

如果您使用的是Firefox,则可以右键单击该按钮以转到下一页并调查网页代码。