能否从Excel读取链接供Python自动化脚本循环执行
Python批量读取链接执行Selenium操作的实现方案
我当前使用的代码中将URL写死,程序会导航到指定站点后执行后续命令,期望可以将大量链接整理到Excel/记事本等文件中,用Python循环遍历链接执行代码,每次运行都基于新的链接执行逻辑。
原始固定URL版本代码
driver.get("https://www.website.com") driver.find_element_by_css_selector('[class="k-widget k-dropdown ic-can-be-dirty"]').click()
所有后续代码逻辑都基于该固定页面执行,无法适配多站点批量运行的需求。
初步迭代的遍历版本代码
根据建议调整后,首先实现了从CSV文件读取链接遍历的版本:
with open(path_to_csv) as mycsv: reader = csv.reader(mycsv) for row in reader: urlstring = row[0] driver.get(urlstring) driver.find_element_by_css_selector('[class="k-widget k-dropdown ic-can-be-dirty"]').click() time.sleep(1)
最终可用方案
参考@Doodlevib的建议,最终实现了无需引入Path模块的稳定版本:
with open(path_to_csv, 'r') as mycsv: reader = csv.reader(mycsv) for row in reader: urlstring = row[0] time.sleep(2) driver.get(urlstring)
注意事项
- 打开文件时添加
r参数明确指定只读模式,避免不同运行环境默认打开模式差异引发的异常 - 可通过独立测试终端配合
print()命令,输出CSV读取的第一行内容,快速验证链接读取逻辑是否正常 - 若代码逻辑无误但运行报错,优先排查CSV文件编码,本案例中最初的故障根源是使用的CSV文件编码为cp1252,指定对应编码即可解决问题。
内容的提问来源于stack exchange,提问作者datoro
相关产品推荐
相关产品推荐

