selenium打开百度首页,输入python关键词,爬取 搜索出来的关于python的标题及标题的超链接
时间: 2025-01-04 09:40:45 浏览: 17
Selenium是一个流行的自动化测试工具,它允许我们模拟用户操作浏览器,例如打开网页、填写表单和点击按钮。在Python中,我们可以使用selenium库配合ChromeDriver来完成这个任务。以下是一个简单的步骤概述:
1. **安装必要的库**:
首先,你需要安装`selenium`, `webdriver_manager`用于管理浏览器驱动,以及`webdriver.Chrome`(如果你还没安装Chrome浏览器):
```bash
pip install selenium webdriver_manager
```
2. **初始化ChromeDriver**:
```python
from webdriver_manager.chrome import ChromeDriverManager
driver = webdriver.Chrome(ChromeDriverManager().install())
```
3. **打开百度首页**:
```python
driver.get("https://www.baidu.com")
```
4. **定位搜索框并输入关键字**:
使用`find_element_by_name`或`find_element_by_id`找到搜索框元素,并输入“python”:
```python
search_box = driver.find_element_by_name("wd") # 如果是ID,则为"kw"
search_box.send_keys("python")
```
5. **提交搜索**(假设百度有搜索按钮):
```python
search_button = driver.find_element_by_id("su")
search_button.click()
```
6. **等待页面加载并获取结果**:
确保搜索结果已加载,然后找到标题及其链接。这通常需要时间,可以设置一个延迟或使用`WebDriverWait`等待特定元素出现:
```python
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
titles_and_links = []
wait = WebDriverWait(driver, 10) # 设置等待时间
results = wait.until(EC.presence_of_all_elements_located((By.CSS_SELECTOR, "div#content_left h3 a"))) # 示例CSS选择器
for result in results:
title = result.text
link = result.get_attribute("href")
titles_and_links.append((title, link))
```
7. **关闭浏览器**:
执行完上述操作后,别忘了关闭浏览器:
```python
driver.quit()
```
注意:实际的HTML结构可能会变化,因此CSS选择器或其他查找元素的方式可能需要根据当前页面布局调整。
阅读全文