他の言語のdo while
ループのPython論理式に相当するものを探しています。私は反復しているページの結果を持っています。結果の構造:少なくとも1回、条件が真であるときにループアクションを実行する方法
1, 2, 3, 4 , ... NEXT
各要素にはリンクがあります。最後のページだけがNEXT
要素を持たないので、私は反復時にチェックする必要がある条件としてNEXT
を特定しました。
私が使用してそれを識別した:
next_link = driver.find_element_by_id('anch_25')
をだから私は、私はnext_link
が、その後click()
機能を使用してnext_linkをクリックして存在する各ページ上で実行したい機能my_function()
を持っています。要素が存在しない場合は、1ページの結果しかないか、結果の最後のページにあることを意味します。いずれにしても、どちらの場合でもmy_function
を実行する必要があります。
だから私はしている:残念ながら、これは最初のページのみのために働いている
def my_function():
print "Another result page"
###This is where I am trying to loop through the results pages
next_link = driver.find_element_by_id('anch_25')
if next_link:
my_function()
next_link.click()
else:
my_function()
や他のページを反復処理しません。私もこれを試してみました
、
while next_link:
my_function()
next_link.click()
my_function()
どちらか動作するようには思えません。助言がありますか?
ループの中で 'next_link'を更新することはないので、ループを開始したときと同じ値を常に持ち、' while'ループは最初とは異なる何もしませんまたはループを連続して行う)。 – kindall