нажмите кнопку «Следующая страница» после нахождения ее с помощью xpath - Python - PullRequest
0 голосов
/ 03 мая 2020

html кнопки:

<a href="https://www.metrolyrics.com/artists-1-1.html" class="button next" onmousedown="ev('Next Page');">
Next <span aria-hidden="true" class="arrow">&gt;</span>
</a>

Я достигаю кнопки с:

pag = driver.find_element_by_xpath('/html/body/div[2]/div[3]/div[2]/div[2]/div[3]/div/div/p/a[2]')

, но если я использую pag.click(), я получаю следующую ошибку:

File "......" in line...
raise exception_class(message, screen, stacktrace)
    selenium.common.exceptions.WebDriverException: Message: unknown error: Element <a href="https://www.metrolyrics.com/artists-1-1.html" class="button next" onmousedown="ev('Next Page');">...</a> is not clickable at point (635, 561). Other element would receive the click: <p id="onetrust-policy-text">...</p>
      (Session info: chrome=81.0.4044.129)
      (Driver info: chromedriver=2.40.565498 (ea082db3280dd6843ebfb08a625e3eb905c4f5ab),platform=Windows NT 10.0.18363 x86_64)

и, конечно, если я возьму только ссылку с pag.get_attribute('href') Selenium говорит мне, что я не могу щелкнуть строку.

что я делаю неправильно? заранее спасибо!

1 Ответ

1 голос
/ 03 мая 2020
while True:
    page = driver.find_element_by_tag_name("body")
    page.send_keys(Keys.END)
    try:
        pag = driver.find_element_by_xpath("//a[@class='button next']")
        pag.click()
    finally:
        continue

Вам нужно позвонить по этому коду, чтобы использовать ключи

from selenium.webdriver.common.keys import Keys 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...