Magicode logo
Magicode
0
1 min read

Seleniumで指定座標をクリックさせる

https://cdn.apollon.ai/media/notebox/blob_FhXMfE5
動的なウェブサイトなどで、タグを追いかけられないときにどうぞ。
heliumを使うともっと楽なんですが、Anacondaで提供されていないようなので、自作してみました。
最後のactions.perform()を書き忘れて、「動かない。指定するタグが悪いのか?」って結構悩みました。
def click_by_position(driver, x, y) -> None:
    from selenium.webdriver.common.action_chains import ActionChains
    actions = ActionChains(driver)

    # MOVE TO TOP_LEFT (`move_to_element` will guide you to the CENTER of the element)
    whole_page = driver.find_element_by_tag_name("html")
    actions.move_to_element_with_offset(whole_page, 0, 0)

    # MOVE TO DESIRED POSITION THEN CLICK
    actions.move_by_offset(x, y)
    actions.click()

    actions.perform()

Discussion

コメントにはログインが必要です。