Задать вопрос
@idock2014

Почему нету функции .click() в Appium WebDriver?

Стек: Python, Appium.

Импортировал библиотеку WebDriver
Не могу понять, почему нет функции .click , беру элемент по ID.

from appium import webdriver
from selenium.webdriver.common.by import By

desired_cap = {
    "appium:deviceName": "Android Emulator",
    "appium:platformName": "Android",
    "appium:app": "C:\\APK\\Calculator.apk",
    "appium:appPackage": "com.google.android.calculator",
    "appium:appWaitActivity": "com.android.calculator2.Calculator"
}

driver = webdriver.Remote('http://127.0.0.1:4808/wd/hub', desired_cap)
driver.implicitly_wait(15)


driver.find_element_by_id('com.google.android.calculator:id/dec_point').click()


Ошибка:

Traceback (most recent call last):
  File "C:\Users\79646\PycharmProjects\pythonProject2\The first test.py", line 16, in <module>
    driver.find_element_by_id('com.google.android.calculator:id/dec_point').click()
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'click'
  • Вопрос задан
  • 122 просмотра
Подписаться 1 Простой 2 комментария
Пригласить эксперта
Ответы на вопрос 2
dimonchik2013
@dimonchik2013
non progredi est regredi
почему нету функции .click()

функция есть
https://appium.io/docs/en/commands/element/actions...

но в твоем экземпляре пустого объекта ее нет тк он пустой, None
Ответ написан
Комментировать
phaggi
@phaggi Куратор тега Python
лужу, паяю, ЭВМы починяю
Метод .find_element_by_id ничего не находит, возвращает None
А у объекта None нет метода .click

Тут есть два пути:
Если в принципе возможно, что оно ничего не найдет, то надо эту ситуацию проверять и обрабатывать отдельно.
Если такого быть не может, надо разбираться, как правильно сформировать локатор для поиска.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы