Не удалось щелкнуть ссылку, используя selenium webdriver в python

Я пытаюсь нажать на ссылку, показанную ниже:

<a class="user" href="/Kevin-Rose" action_mousedown="UserLinkClickthrough" id="__w2_L73qRYl_link" target="_blank"> <span class="matched_term">Kevin Rose</span> </a> 

Я попытался использовать следующий код:

  user = driver.find_element_by_xpath("//a[@class='user'][1]") user.click() 

Я получил следующую ошибку:

ElementNotVisibleException: Сообщение: u'Element в настоящее время не видно и поэтому не может взаимодействовать с '; Трассировки стека:

Как я могу решить эту проблему?

введите описание изображения здесь

2 Solutions collect form web for “Не удалось щелкнуть ссылку, используя selenium webdriver в python”

Проблема в том, что вы находите элемент, пока он еще не существует. Wait .

Вот полный код, от входа в систему, поиск по следующей первой ссылке Kevin Rose :

 from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.common.keys import Keys from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support import expected_conditions as EC URL = "http://www.quora.com" EMAIL = 'your email here' PASSWORD = 'your password here' driver = webdriver.Chrome() # can be webdriver.Firefox() in your case driver.get(URL) wait = WebDriverWait(driver, 10) # login form = driver.find_element_by_class_name('regular_login') username = form.find_element_by_name('email') username.send_keys(EMAIL) password = form.find_element_by_name('password') password.send_keys(PASSWORD) login_button = form.find_element_by_xpath('//input[@type="submit" and @value="Login"]') login_button.click() # search search = wait.until(EC.presence_of_element_located((By.XPATH, "//form[@name='search_form']//input[@name='search_input']"))) search.send_keys('Kevin Rose') search.send_keys(Keys.ENTER) # follow the link link = wait.until(EC.presence_of_element_located((By.LINK_TEXT, "Kevin Rose"))) link.click() 

Попробуйте использовать ниже локаторы

 Xpath : "//span[text()='Kevin Rose']" cssSelector : "a[href*='Kevin-Rose'] > span" 

Edit-я

Вот Xpath, чтобы нажать на имя профиля Kevin Rose

 "//div[contains(.,'Profile:') and contains(@class,'photo')]/span/a//span[text()='Kevin Rose']" 
  • Веб-соскабливание страницы JavaScript с Python
  • Запросы дросселирования с несколькими прокси-серверами
  • Определение SgmlLinkExtractor 'allow' не работает с Scrapy
  • Имитация нажатия на ссылку javascript в python
  • Scrapy дает URLError: <urlopen error timed out>
  • порядок URL-адресов Scrapy Crawling с длинным списком start_urls и URL-адресов yiels от паука
  • Сохранение строки прерывается при анализе с помощью Scrapy в Python
  • Как очистить содержимое, отображаемое во всплывающем окне с помощью javascript: ссылки с использованием scrapy
  •  
    Interesting Posts for Van-Lav

    Как отобразить время типа «x дней назад», используя Humanize в шаблоне Django?

    Python 2.7 UnicodeDecodeError: кодек 'ascii' не может декодировать байт

    как добавить строки в существующий файл с помощью python

    Google appengine: производительность очереди задач

    Разница между `open` и` io.BytesIO` в двоичных потоках

    В чем разница между идиомами для подачи изображения Matplotlib с помощью Flask?

    Правильный способ отмены приема и закрытия обработки / многопроцессорности Python.

    Python: динамически обновлять график после ввода пользователем

    Использование Babel: как защитить комментарии переводчика (и старые переводы) в GNU gettext PO-файлах?

    Django 1.8 RC1: ProgrammingError при создании таблиц базы данных

    Генераторы Ruby против генераторов Python

    Аннотации участка временного ряда Bokeh отключены на 1 час

    SciPy lesssq соответствует синусоидальной волне

    Автоматически вводить параметры ввода в Python

    datetime.date (2014, 4, 25) не является JSON-сериализуемым в Django

    Python - лучший язык программирования в мире.