【问题标题】:How to open URL in CSV file and input data one by one python script如何在CSV文件中打开URL并一一输入数据python脚本
【发布时间】:2019-07-02 14:36:04
【问题描述】:
我正在尝试创建一个脚本,该脚本将在 CSV 文件中打开一个 URL 并输入相同的信息,关闭浏览器并打开第二个 URL 输入相同的数据。我
import csv
import webbrowser
file = open('mycsvfile.csv','r')
reader = csv.reader(file)
for row reader:
webbrowser.open_new(row[0])
我知道这将打开我的 csv 文件中的所有 URL。有没有办法可以打开一个网址,输入我的数据。关闭 URL 并使用行中的第二个 URL 重复该过程?
【问题讨论】:
-
使用Selenium 而不是webbrower。使用webbrowser,您只能在浏览器中打开文件,但无法控制此浏览器输入数据。使用Selenium,您可以控制网络浏览器并输入数据。
标签:
python
selenium
automation
【解决方案1】:
借助 selenium 的额外帮助并正常循环,我们能够导航到 csv 文件中的每个 url。您可以尝试以下方法:)
from selenium.webdriver.common.keys import Keys
from selenium import webdriver
from csv import reader
def main(handler):
""" Start firefox instance """
driver = webdriver.Firefox()
for row in handler:
""" Navigate to url """
driver.get(str(row[0]))
""" Input data """
driver.find_element_by_id("someId").send_keys("someData")
""" Close browser """
driver.close()
print("Completed!")
if __name__ == '__main__':
""" Read from CSV """
with open('mycsvfile.csv') as file:
handler = reader(file)
main(handler)