Selenium 自动化操作:利用已打开的 Chrome 浏览器并读取 Excel 数据
import os import time import psutil from selenium.webdriver.chrome.options import Options from selenium import webdriver from selenium.webdriver.common.by import By import openpyxl import requests
检查是否已经存在浏览器实例,如果存在则不再创建
for proc in psutil.process_iter(): try: if 'chrome' in proc.name() and '--remote-debugging-port=9224' in proc.cmdline(): options = Options() options.add_experimental_option('debuggerAddress', '127.0.0.1:9224') break except: pass else: # 创建浏览器实例 os.system(r'start chrome --remote-debugging-port=9224 --user-data-dir="D:\评阅用"') options = Options() options.add_experimental_option('debuggerAddress', '127.0.0.1:9224')
在已有的浏览器实例中查找标签页
driver = webdriver.Chrome(options=options) tabs = driver.window_handles for tab in tabs: driver.switch_to.window(tab) if driver.title == '考后核验': print('登陆成功') break
打开Excel表格
wb = openpyxl.load_workbook(r'C:\Users\Administrator\Desktop\考后核验.xlsx') sheet = wb.active
创建照片文件夹
photo_folder = r'C:\Users\Administrator\Desktop\照片' if not os.path.exists(photo_folder): os.mkdir(photo_folder)
加入功能:遍历表格内'K'列和'H'列数据并储存起来备用
for row in sheet.iter_rows(min_row=2, values_only=True): k_value = row[10] # K列数据 h_value = row[7] # H列数据
# 处理K列数据
if k_value:
# 储存K列数据备用
# ...
# 处理H列数据
if h_value:
# 储存H列数据备用
# ...
继续其他操作
...
原文地址: https://www.cveoy.top/t/topic/fKGI 著作权归作者所有。请勿转载和采集!