如何使用selenium在多个搜索框中输入多个字符串列表?

2024-04-24 03:40:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要在3个不同的搜索框字段中输入3个不同的值,然后提交表单。在

我需要重复同一个过程好几次。我目前了解如何使用一个值和一个搜索框字段来执行此操作:

import csv
with open(r'C:\Users\username\Documents\Province\folder\list_titles.txt', 
newline='') as inputfile:
list_1 = list(csv.reader(inputfile)) 

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from time import sleep


driver = webdriver.Firefox()
driver.get("https://vch.cochrane.ca/VCH/city/propsearch
/pigeneralinquiry.aspx")

for query in list_1:
    driver.find_element_by_id
("ctl00_MainContentView_rollSearchControl_LINCNumber").send_keys(query)
    driver.find_element_by_id
("ctl00_MainContentView_rollSearchControl_LINCNumber").send_keys(Keys.ENTER)

在上面的代码中,我使用一个列表在迭代中执行任务。我如何做同样的事情,但填充3个搜索框字段之前提交表单?在


Tags: csvfromimport表单driverseleniumelementkeys
1条回答
网友
1楼 · 发布于 2024-04-24 03:40:59

解决方案循环遍历列表,但显式列出程序中的搜索字段。在

list_1 = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from time import sleep


driver = webdriver.Firefox()
driver.get("URL with search fields")
for query in list_1:
    driver.find_element_by_name("searchfield_1").send_keys(query[0])
    driver.find_element_by_name("searchfield_2").send_keys(query[1])
    driver.find_element_by_name("searchfield_3").send_keys(query[2])

driver.find_element_by_name("submitbutton").click()
sleep(2)
driver.back()
driver.refresh()
sleep(2)
driver.quit()

相关问题 更多 >