2017-10-17 19 views
0

私はページからテキストを読んでいます。しかし、時には検索要素が欠落しています。ですから、次のページで検索を続けたいと思います。存在しない要素をジャンプして次のページに進むことは可能です。エラーを無視して次の要素を検索します

これは私のコードです:

while True: 
    try: 
     address = browser.find_element_by_xpath("//*[@id=\"page\"]/div/div[2]/div/div/div[4]/div/div[1]/span[3]/span[1]/span") 
    except: 
     print("bad page:") 

が、これは誤りです:

Unable to locate element: {"method":"xpath","selector":"//*[@id="page"]/div/div[2]/div/div/div[4]/div/div[1]/span[3]/span[1]/span"} 

感謝!

+0

エラーは既に処理されているため、ループはそのまま継続する必要があります。何が問題ですか? – MohitC

+0

@MohitCページに要素がないときはいつもエラーが表示されます – Beni

+0

そして、あなたはすでにそのエラーを処理しているので、問題が何であるかを理解できません。問題を再現するために、より多くの(最小限の)コードを投稿する必要があります。 – MohitC

答えて

-1

ここでfind_elementsを使用して、要素が存在するかどうかを確認できます。 find_elementsはスローしない要素が見つからないため、要素が見つからなくてもコードは機能します。

注:以下のコードはJAVA形式であり、Pythonに変換することができます。

List<WebElement> elements = driver.findElements(By.xpath("//*[@id=\"page\"]/div/div[2]/div/div/div[4]/div/div[1]/span[3]/span[1]/span")); 

     if(elements.count > 0) 
     { 
     // Do action on element 
     } 
     else 
     { 
     //Do action when element not present 
     } 
関連する問題