Как развернуть эту комбинацию «Python + Twill + Mechanize» на «Двигатель App Google»?
-
01-10-2019 - |
Вопрос
Я пытался передать свой логин и пароль от Питон скрипт к тому ebay. на странице входа. Позже я хочу, чтобы этот скрипт был запущен из "Google App Engine"
Мне было предложено использовать »механизировать«К сожалению, это не сработало для меня:
IDLE 1.2.4
>>> import re
>>> import mechanize
>>> br = mechanize.Browser()
>>> br.open("https://signin.ebay.com")
Traceback (most recent call last):
File "<pyshell#3>", line 1, in <module>
br.open("https://signin.ebay.com")
File "build\bdist.win32\egg\mechanize\_mechanize.py", line 203, in open
return self._mech_open(url, data, timeout=timeout)
File "build\bdist.win32\egg\mechanize\_mechanize.py", line 255, in _mech_open
raise response
httperror_seek_wrapper: HTTP Error 403: request disallowed by robots.txt
>>>
Ранее я пытался использовать Питон а также твиль - Это не работало ни до Один сторонник предложил что я загружаю последнюю версию механизировать а затем выполните следующие шаги:
Найдите следующую папку на моем компьютере: "C: python25 lib сайт-пакеты twill indow_packages _mechanize_dist"
Изменить свое имя на_mechanize_dist_backup.«(Полный путь, таким образом, должен быть»C: python25 lib site-packages twill indow_packages _mechanize_dist_backup")
Скопируйтемеханизировать«Папка (которая находится в»механизировать - 0.2.2"- папка, которую я скачал и расстегнул Официальный сайт "механизация") и вставьте его в "C: python25 lib сайт-пакеты twill indow_packages«(Полный путь, таким образом, будучи»C: python25 lib сайт-пакеты twill ittho_packages mechanize")
Изменить свое имя на_mechanize_dist.«(полный путь быть»C: python25 lib сайт-пакеты twill indow_packages_mechanize_dist")
СкопироватьClientForm«Файл из»_mechanize_dist_backup."И вставьте это в"_mechanize_dist."(На самом деле я нашел там два файла имени"ClientForm«: Один файл Python, другой - это скомпилированный файл Python - я скопировал и вставил их обоих).
После того, как я выполнил все эти шаги, я пытался войти в мой ebay. счет от твиль оболочка внутри Питон И это сработало !!! Я даже мог войти в мой Yahoo. Почтовый ящик таким же образом и проверь мои почты!
Но теперь у меня есть дилемма: я не знаю, как я мог развернуть мой сценарийGoogle App Engine".
Ранее Мне посоветовали что если я хочу использовать сторонние библиотеки в Приложение двигателя Проекты, я просто должен включать их с моим приложением, когда я его развернул - в случае с твиль, Например, мне просто нужно скопировать твиль Папка в папку моего приложения и развернуть ее.
Но сейчас у меня есть не только твиль Папка в качестве сторонней библиотеки, которая будет включена, но и все эти изменения, выполняемые в «C: python25" (в "C: python25 lib сайт-пакеты twill indow_packages", быть точным), пока моя папка приложения - тот, который у меня есть свой скрипт ("my_script.py "файл) - находится на"Свидетельствовать«Диск.
Может кто-нибудь, пожалуйста, дайте мне несколько предложений здесь?
Решение
Что касается вопроса развертывания GAE, @Brilliant, выглядит как код, который вы имеете дело, - все чистый Python 2.5 (единственная действительно проблема блокировки, если это нет - Никакие двоичные расширения не допускаются, ни один код, не требующий Python 2.6 или лучше разрешено, и это просто так, как он находится на Gae в это время).
Таким образом, в соответствии с этим предположением единственная проблема с развертыванием кода на App Engine имеет все код, НЕТ в site-packages
(из каких конечно GAE dev_appserver.py
Развертывает абсолютно ничего, NADA, ZILCH), а скорее в каталоге вашего проекта GAE (я предлагаю рекурсивной zip всех файлов .py, только - удалите все файлы. pycc, в частности, перед вами zip -r
Это;-).
Все вообще, это просто вопрос пары соответствующих команд Shell: cp -R
тогда zip -r
(Вероятно, сложнее на неистых снарядах, но, эй даже в Windows вы могу Сделайте это с Bash от Cygwin ... В любом случае, вряд ли «развитие» проблема, как SE ;-).
Другие советы
Сообщение об ошибке указывает, что механизация подчиняется файлу Robots.txt сайта.
Вы должны использовать API eBay, если вы хотите получить доступ к своему сайту автоматизированным способом. Если вы этого не сделаете, и постройте свое собственное решение, которое игнорирует robots.txt, не удивляйтесь, когда они блокируют вас, и жалуются в Google об автоматизированных запросах, приходящих из приложенного двигателя из вашего приложения.