我有一份全面的澳大利亚邮政编码列表,我需要使用特定网站的搜索功能来获取相应的远程代码。我创建了一个Python脚本来做到这一点,并且它有效地完成了它。
除此之外,在迭代期间看似随机的时间,它会抛出“模态对话框存在”异常。问题是,我看不到对话!网页看起来和往常一样,我可以用鼠标与它正常交互。可能是什么问题并且有解决方案吗?
browser = webdriver.Firefox() # Get local session of firefox
browser.set_page_load_timeout(30)
browser.get("http://www.doctorconnect.gov.au/internet/otd/Publishing.nsf/Content/locator") # Load page
assert "Locator" in browser.title
search = browser.find_element_by_name("Search") # Find the query box
ret = browser.find_element_by_id("searchButton")
doha_addr = []
doha_ra = []
for i in search_string_list:
search.send_keys(i)
ret.send_keys(Keys.RETURN)
addr = browser.find_element_by_xpath("//table/tbody/tr[2]/td[2]")
doha_addr.append(addr.text)
ra = browser.find_element_by_xpath("//table/tbody/tr[4]/td[2]")
doha_ra.append(ra.text)
try:
browser.find_element_by_xpath("//html/body/div/div[3]/div/div/div/div/div/div[7]/div/div[13]/div[1]").click()
except:
pass
search.clear()
答案 0 :(得分:0)
我似乎已经看到了一个弹出对话框,它在我的脚本运行时显示并隐藏了自己。无论如何,这与while开关和try / except子句......:7D
无关doha_ra = {}
for i in search_string_list:
switch = True
while switch == True:
search.send_keys(i)
ret.send_keys(Keys.RETURN)
try:
addr = browser.find_element_by_xpath("//table/tbody/tr[2]/td[2]")
ra = browser.find_element_by_xpath("//table/tbody/tr[4]/td[2]")
doha_ra[addr.text] = ra.text
switch = False
except:
pass
search.clear()