用bs4获取动态网页中的href
时间: 2024-06-08 16:05:16 浏览: 82
要获取动态网页中的href,需要使用一个类似于Selenium Webdriver的工具,比如可以使用Selenium来模拟浏览器并获取网页中的内容。下面是一个使用Selenium和BeautifulSoup4来获取动态网页中href的示例代码:
```python
from selenium import webdriver
from bs4 import BeautifulSoup
# 创建一个Chrome浏览器的实例
driver = webdriver.Chrome()
# 打开目标网页
driver.get('https://www.example.com')
# 等待网页加载完成
driver.implicitly_wait(10)
# 获取网页的HTML源代码
html = driver.page_source
# 使用BeautifulSoup解析HTML源代码
soup = BeautifulSoup(html, 'html.parser')
# 查找所有的链接,并输出它们的href属性值
links = soup.find_all('a')
for link in links:
href = link.get('href')
if href:
print(href)
# 关闭浏览器
driver.quit()
```
这段代码首先创建了一个Chrome浏览器实例,并打开了目标网页。它等待页面加载完成后,获取页面的HTML源代码,并使用BeautifulSoup解析HTML。最后,它查找所有的链接标签,并输出它们的href属性值。最后,程序关闭了浏览器。
阅读全文