我是python世界的新手,我试图在以下网站上选择几个选项,然后单击“搜索”按钮以更新结果。但是,我无法按一下按钮。
我尝试使用搜索button.click()和.submit(),并且试图隐式等待。我还使用了下面的代码来等待按钮可单击。执行代码时,它高亮显示按钮,但似乎没有释放点击。几乎像半按。
do-while
我希望搜索结果会根据上述条件进行更新。
答案 0 :(得分:1)
您似乎很近。要在元素上let ip = request.headers['x-forwarded-for'].split(',')[1];
,您必须诱使 WebDriverWait 使元素可点击,并且可以使用以下任一解决方案:
使用click()
:
CSS_SELECTOR
使用WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "button#search-button>i.fa.fa-search#search-button-icon"))).click()
:
XPATH
注意:您必须添加以下导入:
WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//button[@id='search-button']/i[@class='fa fa-search' and @id='search-button-icon']"))).click()
浏览器快照:
答案 1 :(得分:0)
使用xpath定位特定的
时,需要2个带有搜索按钮的元素searchbutton = WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//button[@id='search-button']")))
searchbutton.click()