一、环境准备及初始化 🛠️
from selenium import webdriver
from selenium.webdriver.common.by import By
引入Selenium及相关依赖。首次使用时请确保已正确安装ChromeDriver 并配置到 PATH 环境变量!
driver = webdriver.Chrome() 🚗 初始化WebDriver示例,推荐使用Chrome浏览器。
二、采集流程分步骤详解📋
-
打开目标页面
driver.get("https://news.baidu.com/")
访问 百度新闻 页面。 -
等待页面加载
使用 time.sleep(3),可换为更优雅的 显式等待 实现。 -
定位热搜榜区域
hot_search_section = driver.find_element ...
热搜区域 XPath/CSS选择器 需依据实际页面调整。建议使用浏览器开发者工具核查。 -
获取并遍历热搜内容
hot_search_items = ...find_elements...
取出所有热搜条目,并按 title 提取标题。 -
存储与展示结果
将排名和标题以 (index, title) 形式保存,并逐条打印: print(f"{rank}. {title}")
三、异常处理与退出 ⚠️
遍历中如遇结构变化,可catch异常提示:
print(f"Error extracting item {index}: {e}")
最后,无论采集是否成功,务必关闭浏览器:
driver.quit() 🔚
四、实用小建议🤔
- 若页面结构变化,XPath 和 CSS Selector 需及时调整,否则采集会失败。
- 切勿频繁高并发爬取,避免IP被封禁。建议添加适当随机延迟。
- 如需保存,请将hot_search_data写入excel或txt,便于后续分析整理。