[英]My if/else expression is not working I don't know why?
我的代碼:
website = browser.find_element_by_link_text('Website')
if website:
website.click()
else:
print('no website')
我要做的是單擊頁面上可用的按鈕。 如果該按鈕不可用,我希望它在控制台上打印沒有可用的網站並繼續下一步。
我不知道我做錯了什么有人知道如何解決這個問題嗎?
在此先感謝我是編碼新手!
在找到元素之前,您需要先訪問一個網站。
driver = webdriver.Firefox()
print('Acessando web site: {}'.format(os.getenv('VISIT_URL')))
driver.get('www.example.com')
#here onwards you can access browser elements like buttons links etc
您將 Web 元素的實例提供給 if() 條件,其中需要 boolean 表達式。
1) 嘗試首先使用find_elements_by_link_text() # _elements_
檢查存在性
if len(driver.find_elements_by_link_text('Website')) > 0:
driver.find_element_by_id('Website').click()
2)或者使用expected_conditions檢查元素是否可用; 預期條件文檔
3) 或者使用 try/except 塊;
try:
website = driver.find_elements_by_link_text('Website')
except NoSuchElementException:
# code to execute if the expected element is not available
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.