我正在尝试从使用bs4和请求的网站获得一些信息。
URL是:https://www.element14.com/community/community/design-challenges/in-the-air-design-challenge/blog/2014/10/26/firecracker-analyzer-index
我正在尝试进入一个特定的div:
<div id="jive-comment-tabs" class="j-comment-wrapper" xmlns="http://www.w3.org/1999/html"> ..... </div>
但是,当我使用以下代码时:
import requests
from bs4 import BeautifulSoup
URL = "https://www.element14.com/community/community/design-challenges/in-the-air-design-challenge/blog/2014/10/26/firecracker-analyzer-index"
page = requests.get(URL)
soup = BeautifulSoup(page.content, "lxml")
print(soup.find('div', {'class': 'j-comment-wrapper'}))
我得到无结果,我知道它是在网页上的事实。我在网上尝试了大多数解决方案,但没有一个对我有帮助。什么好主意吗?
发生了什么?
网站是动态提供这些内容的,所以你不会以这种方式获得它。
Alternativ方法尝试使用硒,它会渲染页面,你会得到你的结果。
from bs4 import BeautifulSoup
from selenium import webdriver
driver = webdriver.Chrome('YOUR PATH TO CHROMEDRIVER')
driver.get('https://www.element14.com/community/community/design-challenges/in-the-air-design-challenge/blog/2014/10/26/firecracker-analyzer-index')
soup=BeautifulSoup(driver.page_source, 'html.parser')
soup.find('div', {'class': 'j-comment-wrapper'})