如何使用 BeautifulSoup 获取许多 div 下的 div 元素?
How to get div element under many divs using BeautifulSoup?
因此,我将 BeautfiulSoup4 与 Python 一起使用,并尝试使用“div class”获取元素。但是这个元素在许多 div 之下,当我尝试将“find”与 BeautifulSoup 一起使用时,它只是 returns “None”。我要获取的元素在屏幕截图中显示为 class "WhatIWant"。这是网站的屏幕截图html:
Screenshot
这是我用来获取该元素的代码
page = requests.get(URL)
soup = BeautifulSoup(page.content, "lxml")
element = soup.find_all("div", {"class": "WhatIWant"})
也许您请求的网页没有使用简单的请求加载该元素,有些网页有 JavaScript,您无法使用 Bs4 抓取它;使用 Selenium 可能更好。
测试一下,然后将响应发送到这里评论;最好把这个 URL.
发到这里
import requests
from bs4 import BeautifulSoup
url = 'https://www.leagueofgraphs.com/summoner/tr/AvaIanche'
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36"
}
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, 'html.parser')
print(soup.find('div', {'class':'leagueTier'}).text.strip())
输出:
Platinum I
因此,我将 BeautfiulSoup4 与 Python 一起使用,并尝试使用“div class”获取元素。但是这个元素在许多 div 之下,当我尝试将“find”与 BeautifulSoup 一起使用时,它只是 returns “None”。我要获取的元素在屏幕截图中显示为 class "WhatIWant"。这是网站的屏幕截图html: Screenshot
这是我用来获取该元素的代码
page = requests.get(URL)
soup = BeautifulSoup(page.content, "lxml")
element = soup.find_all("div", {"class": "WhatIWant"})
也许您请求的网页没有使用简单的请求加载该元素,有些网页有 JavaScript,您无法使用 Bs4 抓取它;使用 Selenium 可能更好。
测试一下,然后将响应发送到这里评论;最好把这个 URL.
发到这里import requests
from bs4 import BeautifulSoup
url = 'https://www.leagueofgraphs.com/summoner/tr/AvaIanche'
headers = {
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36"
}
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, 'html.parser')
print(soup.find('div', {'class':'leagueTier'}).text.strip())
输出:
Platinum I