You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Selenium Python在Excel中搜索文本并提取行数据

解决方案

直接用Python脚本整合Selenium和Excel数据读取逻辑,完全自动化整个流程,比手动用VLOOKUP高效得多。具体步骤如下:

  • 第一步:把Excel数据加载到内存并建立快速查询映射
    用pandas读取Excel文件,将学生ID作为索引,把每行数据转换成字典,这样查询时能直接通过ID快速定位,不用每次去Excel里搜索。

  • 第二步:用Selenium提取网页上的学生ID
    定位网页表格里的学生ID元素,获取文本内容。

  • 第三步:查询对应学生的信息
    从之前建立的字典里直接取出该ID对应的姓名、父亲姓名等数据。

  • 第四步:用Selenium填充高校网站的表单
    定位表单里的输入框,把查到的信息填进去。

示例代码

首先安装依赖:

pip install selenium pandas openpyxl

完整脚本:

from selenium import webdriver
from selenium.webdriver.common.by import By
import pandas as pd

# 1. 读取Excel数据并构建查询字典
df = pd.read_excel('学生数据.xlsx', engine='openpyxl')
# 假设Excel里的学生ID列名为"学生ID",姓名列"姓名",父亲姓名列"父亲姓名"
student_lookup = df.set_index('学生ID').to_dict('index')

# 2. 启动浏览器,获取网页上的学生ID
driver = webdriver.Chrome() # 需要提前下载ChromeDriver并配置路径
driver.get('目标网页地址')

# 定位网页表格中的学生ID元素,这里假设元素的CSS选择器是'.student-id',根据实际情况调整
student_id = driver.find_element(By.CSS_SELECTOR, '.student-id').text.strip()

# 3. 查询学生信息
if student_id in student_lookup:
    student_info = student_lookup[student_id]
    student_name = student_info['姓名']
    father_name = student_info['父亲姓名']
else:
    print(f"未找到ID为{student_id}的学生数据")
    driver.quit()
    exit()

# 4. 填充高校网站表单
# 假设姓名输入框的ID是'name',父亲姓名输入框ID是'father-name',根据实际页面调整
driver.get('高校网站表单地址')
driver.find_element(By.ID, 'name').send_keys(student_name)
driver.find_element(By.ID, 'father-name').send_keys(father_name)

# 后续可以添加提交表单等操作
# driver.find_element(By.ID, 'submit-btn').click()

# 关闭浏览器
driver.quit()

注意事项

  • 请根据实际网页的HTML结构调整元素定位方式(CSS选择器、ID、XPath等)
  • 如果Excel数据量很大,pandas的字典查询依然能保持高效,比VLOOKUP的手动操作快很多
  • 确保ChromeDriver的版本和你的Chrome浏览器版本匹配,或者用webdriver-manager自动管理驱动

内容的提问来源于stack exchange,提问作者Arunim Kumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 14:58:24