您也可以使用requests 模块(pip3 install requests):
import requests
from bs4 import BeautifulSoup as soup
d = soup(requests.get('https://www.gob.mx/presidencia/es/archivo/articulos?filter_id=5169&filter_origin=archive&idiom=es&page=1').text, 'html.parser')
result = [{'img':i.div.img['src'], 'time':i.time.text, 'text':i.h2.text, 'link':i.a['href']} for i in d.find_all('article')]
要获取链接,您可以遍历 result 并访问每个链接的 link 键。链接是相对的,所以要创建完整的 URL,你可以使用urllib.parse:
import urllib.parse
base = 'https://www.gob.mx/presidencia/es/archivo/articulos?filter_id=5169&filter_origin=archive&idiom=es&page=1'
links = [urllib.parse.urljoin(base, i['link']) for i in result]
输出:
['https://www.gob.mx/presidencia/es/articulos/version-estenografica-de-la-conferencia-de-prensa-matutina-jueves-14-de-noviembre-2019?idiom=es', 'https://www.gob.mx/presidencia/es/articulos/version-estenografica-de-la-conferencia-de-prensa-matutina-miercoles-13-de-noviembre-2019?idiom=es', 'https://www.gob.mx/presidencia/es/articulos/version-estenografica-de-la-conferencia-de-prensa-matutina-martes-12-de-noviembre-2019?idiom=es', 'https://www.gob.mx/presidencia/es/articulos/version-estenografica-de-la-conferencia-de-prensa-matutina-lunes-11-de-noviembre-2019?idiom=es', 'https://www.gob.mx/presidencia/es/articulos/version-estenografica-dialogo-con-los-pueblos-maya-peninsular-ch-ol-tsotsil-tseltal-y-poblacion-indigena-migrante-desde-calakmul?idiom=es', 'https://www.gob.mx/presidencia/es/articulos/version-estenografica-dialogo-con-el-pueblo-maya-peninsular-y-poblacion-indigena-migrante-desde-felipe-carrillo-puerto?idiom=es', 'https://www.gob.mx/presidencia/es/articulos/version-estenografica-dialogo-con-el-pueblo-maya-peninsular-desde-temozon?idiom=es', 'https://www.gob.mx/presidencia/es/articulos/version-estenografica-dialogo-con-el-pueblo-maya-peninsular-desde-tekax-de-alvaro-obregon?idiom=es', 'https://www.gob.mx/presidencia/es/articulos/version-estenografica-de-la-conferencia-de-prensa-matutina-viernes-8-de-noviembre-2019?idiom=es']