如何在 Python 中抓取列表?

如果我的问题没有以正确的方式写出来,我提前道歉。我一直在尝试抓取https://www.bristol.ac.uk/study/undergraduate/search/search_results?sort=score&sort=UndergraduateCourse-programname&dir=desc&dir=asc&query=&filter%3AUndergraduateCourse-year=2021&page=1

我只想要所有课程名称的文本。即使我使用了 find-all,我编写的代码也只提供了第一门课程的文本。我想这可能是因为课程都在列表中。这是我的代码:

from bs4 import BeautifulSoup

import requests


source = requests.get("https://www.bristol.ac.uk/study/undergraduate/search/search_results?sort=score&sort=UndergraduateCourse-programname&dir=desc&dir=asc&query=&filter%3AUndergraduateCourse-year=2021&page=1").text


soup = BeautifulSoup(source, 'lxml')


for div in soup.find_all('div', class_='course-results course-results-ug'):

    course = div.a.text

    print(course)

输出如下:


            Accounting and Finance

        , 

            BSc

请帮忙。我最近才开始所以不知道任何高级编码


HUX布斯
浏览 87回答 0
0回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python