Несоответствующий ввод 'as', ожидающий CLONE в dtmilano viewclient.py

Я действительно новичок в Python, Cmonkeyrunner и Android. Я пытаюсь автоматизировать приложение для Android и с помощью dtmilano AndroidViewClient

Я установил python 2.7.9 на Windows 8, распаковал AndroidViewClient-master.zip на диск C, после чего я установил android viewclient с помощью easy_install Когда я запускаю простой скрипт py с monkeyrunner, я получаю сообщение об ошибке несоответствующего ввода как "ожидающий Клон в dtmilano viewclient.py

Мой код выглядит так:

    ! /usr/bin/env monkeyrunner
    import re
    import sys
    import os
    import java
    import glob
    import os


    sys.path.append('C:\AndroidViewClient-master\src')
    from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice
    from com.dtmilano.android.viewclient import ViewClient

    try:
        ANDROID_VIEW_CLIENT_HOME = os.environ['ANDROID_VIEW_CLIENT_HOME']
    except KeyError:
        print >>sys.stderr, "%s: ERROR: ANDROID_VIEW_CLIENT_HOME not set in environment" % __file__
        sys.exit(1)

    device= MonkeyRunner.waitForConnection(15)
mydir=r'C:\Android SDK\adt-bundle-windows\sdk\tools'

apk_path = device.shell('pm path com.sample.test')
if apk_path.startswith('package:'):
    print "Test app is already installed."
else:
    print "Test app is not installed, installing..."
    os.chdir(mydir)
    MonkeyRunner.sleep(1)
    app = "Test.apk"
    device.installPackage(mydir+"/"+app)
    MonkeyRunner.sleep(5)

print "Launching Resource Test app"
device.startActivity(component='com.sample.test/com.sample.test.MainActivity')
MonkeyRunner.sleep(5)

Моя переменная пути:

C:\Android SDK\adt-bundle-windows\sdk\tools;C:\Python27;C:\Python27\Scripts

Пожалуйста, скажите мне, что здесь не так? Нужно ли устанавливать другую версию python.

Это ошибка, которую я получаю:

C:\Users\Desktop>monkeyrunner test1.py
150520 11:10:35.203:S [main] [com.android.monkeyrunner.MonkeyRunnerOptions] Script terminated due to an exception
150520 11:10:35.203:S [main] [com.android.monkeyrunner.MonkeyRunnerOptions]Traceback (most recent call last):
  File "C:\Android SDK\adt-bundle-windows\sdk\tools\test1.py", line 12, in <module>
    from com.dtmilano.android.viewclient import ViewClient
SyntaxError: ("mismatched input 'as' expecting COLON", ('C:\\AndroidViewClient-master\\src\\com\\dtmilano\\android\\viewclient.py', 3708, 35, ''))

C:\Users\Desktop>

И строка 12 в test1.py:

from com.dtmilano.android.viewclient import ViewClient

Строка 3708 - это viewclient.py:

except ImportError as ex:

Пожалуйста помоги.

1 ответ

Исходя из моего личного опыта, вы должны установить AndroiviewClient с easy_install и pypi, то есть официальным сайтом для пакетов python, там тоже очень часто обновляется AndroidViewClient, вы должны использовать только пакет из github только для разработки, для любых дальнейших обновлений AndroidViewClient, просто введите easy_install --upgrade AndroidViewClient:
1) Перейдите в папку Python и введите: easy_install AndroiViewClient, он автоматически загрузит AndroidViewClient с http://pypi/..., пакет будет настроен в папке C:\Python27\Lib\site-packages\androidviewclient-10.4.0-py2.7.egg (это моя текущая версия)
2) Загрузите пакет с github и установите его где угодно, без easy_install или чего-либо еще, просто разархивируйте его. Я просто использую этот пакет для тестирования python check-import.py, как предлагается в вики, программа check-import.py существует только в этом пакете.
3) Если я хорошо помню, мне даже не нужно настраивать какие-либо переменные среды для AndroidViewClient, просто добавьте папку Python в путь к переменной среды.
4) Запустите Culebra, чтобы увидеть, как выглядит сгенерированный скрипт, это упростит вашу жизнь вначале, чтобы понять структуру, если вы будете использовать Culebra в начале, вы не увидите ошибок типа monkeyrunner, это всего лишь пример.

Другие вопросы по тегам