Selenium 爬虫实战:从环境搭建到自动化采集
# 导入Selenium库
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time
# 初始化Chrome驱动
driver_path = 'chromedriver的路径'
driver = webdriver.Chrome(executable_path=driver_path)
# 打开目标网页
driver.get('https://www.example.com')
# 等待网页加载
time.sleep(5)
# 定位搜索框并输入关键词
search_bar = driver.find_element(By.ID, 'search_input')
search_bar.send_keys('Selenium Crawler')
# 提交搜索
search_bar.send_keys(Keys.RETURN)
# 等待搜索结果加载
results = WebDriverWait(driver, 10).until(
EC.presence_of_all_elements_located((By.CLASS_NAME, 'result-link'))
)
# 遍历搜索结果并点击
for result in results:
result.click()
# 在这里可以添加代码来抓取页面信息
# 例如:print(driver.page_source)
# 回到前一个页面
driver.execute_script("window.history.go(-1)")
# 关闭浏览器
driver.quit()
这段代码演示了如何使用Selenium库在Python环境中自动化地操作一个网页浏览器。它首先初始化了Chrome驱动,然后打开了一个目标网页,定位到搜索框,输入了关键词并提交了搜索。接着它等待搜索结果加载,遍历搜索结果并点击每一个结果,在结果页面停留的时间内可以抓取所需数据。最后,它执行了回退操作返回前一个页面并安全关闭浏览器。这个过程可以用于学习如何进行网页自动化采集,但请注意,未经授权操作他人网站可能违反法律法规,应当小心使用。
评论已关闭