【python入門】seleniumでスクレイピングのエラー時にそのまま継続させたい場合

シェアする

スポンサーリンク

pythonでwebスクレイピングをしていて、サイトによってはページになっていて、ページの最大数も取得できるとそれをfind_elementで取得すればよいですが、わからない場合にループさせていると、最終ページになった際にClickで次へ行こうとするとエラーになります。

これをそのまま、次の処理へエラーにならず進ませたい場合の対応です。

Python Selenium Webdriver – Try except loop
を参考にしました。


from selenium.common.exceptions import NoSuchElementException

forループなどの処理

try:
    browser.find_element_by_class_name( '次へ' ).click()
except NoSuchElementException: 
    print '最後のページ'
    break # ページ終了のため、forループを抜けるなら次の処理を行う。

最終のページで次へボタンがない場合は、clickする際にエラーが発生し終了してしまいます。
今回はそのまま継続して次の処理を行いたいので、try,exceptを使ってエラーをキャッチします。

clickするところとbreakの処理はあくまでも一例です。

もっと簡単な方法があるかもしれませんが、とりあえず。

error: