在 Python 3 中使用 BeautifulSoup 抓取 URL

我试过这段代码,但带有 URL 的列表仍然是空的。没有错误按摩,什么都没有。


from bs4 import BeautifulSoup

from urllib.request import Request, urlopen

import re


req = Request('https://www.metacritic.com/browse/movies/genre/date?page=0', headers={'User-Agent': 'Mozilla/5.0'})

html_page = urlopen(req).read()


soup = BeautifulSoup(html_page, features="xml")

links = []

for link in soup.findAll('a', attrs={'href': re.compile("^https://www.metacritic.com/movie/")}):

    links.append(link.get('href'))


print(links)

我想刮以“开头的所有网址https://www.metacritic.com/movie/ ”这是在给定的URL“发现https://www.metacritic.com/browse/movies/genre/date?页=0 “。


我究竟做错了什么?


白衣染霜花
浏览 168回答 2
2回答

慕容3067478

你的代码是健全的。该列表保持为空,因为该页面上没有与该模式匹配的任何 URL。试试吧re.compile("^/movie/")。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python