使用Selenium库模拟浏览器访问网页获取动态生成的JavaScript代码,并将其传递给Beautiful Soup进行解析。
示例代码:
from selenium import webdriver
from bs4 import BeautifulSoup
# 使用Chrome浏览器驱动程序
driver = webdriver.Chrome()
# 访问网页
driver.get("https://example.com")
# 获取JavaScript代码
javascript_code = driver.execute_script("return document.documentElement.outerHTML")
# 关闭浏览器
driver.quit()
# 使用Beautiful Soup解析静态HTML代码及动态生成的JavaScript代码
soup = BeautifulSoup(javascript_code, "html.parser")
以上代码通过Selenium模拟Chrome浏览器打开目标网页,并使用execute_script
方法执行JavaScript代码,获取动态生成的HTML代码。然后,我们使用传递给Beautiful Soup来解析这些HTML代码,从而得到我们所需的数据。最后,使用quit
方法关闭浏览器线程。