Python 为什么美丽的汤不提取所有的;a「;来自网站的标签

Python 为什么美丽的汤不提取所有的;a「;来自网站的标签,python,beautifulsoup,Python,Beautifulsoup,我正在学习BeautifulSoup,我试图从一个网站中提取所有的“a”标签。我收到了很多“a”标签,但很少有被忽略,我很困惑为什么会发生这种情况。我们将非常感谢您的帮助。 我使用的链接是: img: 图像中的红色框是bs4完全忽略的部分。它确实包含“a”标记 代码: import requests import bs4 import re import html5lib res = requests.get('https://www.w3schools.com/python/') soup

我正在学习BeautifulSoup,我试图从一个网站中提取所有的“a”标签。我收到了很多“a”标签,但很少有被忽略,我很困惑为什么会发生这种情况。我们将非常感谢您的帮助。
我使用的链接是:
img: 图像中的红色框是bs4完全忽略的部分。它确实包含“a”标记

代码:

import requests
import bs4
import re
import html5lib

res = requests.get('https://www.w3schools.com/python/')
soup = bs4.BeautifulSoup(res.text,'html5lib')
try:
    links_with_text = []
    for a in soup.find_all('a', href=True):
        print(a['href'])
except:
    print ('none')

抱歉代码缩进,我是新来的

bs4忽略的链接是动态呈现的,即HTML代码中不存在广告等,但已根据您的浏览器习惯由脚本调用。请求包将只获取静态HTML内容,您需要模拟浏览器来获取动态内容


Selenium可用于任何浏览器,如Chrome、Firefox等。如果您希望在服务器上获得相同的结果(无UI),请使用无头浏览器,如Phatomjs。

动态呈现内容。