使用Python Selenium单击下拉列表中的Option



我正在尝试更新页面http://stitch.embl.de//cgi/download.pl?UserId=FCCY8Z7drB9z&sessionId=QFV3kq1R2gdD通过Python Selenium(模拟点击Choose an organism -> Homo sapiens,然后点击Update的动作(

如何执行脚本?

<div style="height:3em;vertical-align:top;"><div id="organism_text_input"><script type="text/javascript">
function toggleSpeciesFloatingDiv ()
{
if(document.getElementById('speciesFloatingDiv').style.visibility != "visible") {
initiateDropDownSpeciesList();
document.getElementById('speciesFloatingDiv').style.display = "block";
document.getElementById('speciesFloatingDiv').style.visibility = "visible";
document.getElementById('speciesList').focus();
} else {
document.getElementById('speciesFloatingDiv').style.display = "none";
document.getElementById('speciesFloatingDiv').style.visibility = "hidden";
}
}
</script>

您可以单击选择器框->

box.click()

然后,您可以编写文本并按enter->

box.send_keys("Homo Sapiens")
box.send_keys(Keys.RETURN)
from selenium import webdriver
from selenium.webdriver.support.ui import Select
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
driver = webdriver.Chrome()
delay = 10
driver.get("http://stitch.embl.de//cgi/download.pl?UserId=FCCY8Z7drB9z&sessionId=QFV3kq1R2gdD")
# CLick down arrow on drop down menu
WebDriverWait(driver, delay).until(EC.presence_of_element_located((By.XPATH, '//*[@id="organism_text_input"]/div[1]/div/img'))).click()
# driver.find_element_by_xpath().click()
# Now that options are loaded, select "Homo sapiens" from the species list
select = Select(driver.find_element_by_id('speciesList'))
select.select_by_visible_text('Homo sapiens')
# Click the 'Select' button in the drop down menu to apply
driver.find_element_by_class_name('minibutton').click()

如果我将&species_text=9606添加到URL,我可以获得所需的链接-最终的URL变成http://stitch.embl.de//cgi/download.pl?UserId=FCCY8Z7drB9z&sessionId=QFV3kq1R2gdD&species_text=9606

最新更新