Как развернуть эту комбинацию «Python + Twill + Mechanize» на «Двигатель App Google»?

StackOverflow https://stackoverflow.com/questions/3670701

Вопрос

Я пытался передать свой логин и пароль от Питон скрипт к тому 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
>>> 

Ранее я пытался использовать Питон а также твиль - Это не работало ни до Один сторонник предложил что я загружаю последнюю версию механизировать а затем выполните следующие шаги:

  1. Найдите следующую папку на моем компьютере: "C: python25 lib сайт-пакеты twill indow_packages _mechanize_dist"

  2. Изменить свое имя на_mechanize_dist_backup.«(Полный путь, таким образом, должен быть»C: python25 lib site-packages twill indow_packages _mechanize_dist_backup")

  3. Скопируйтемеханизировать«Папка (которая находится в»механизировать - 0.2.2"- папка, которую я скачал и расстегнул Официальный сайт "механизация") и вставьте его в "C: python25 lib сайт-пакеты twill indow_packages«(Полный путь, таким образом, будучи»C: python25 lib сайт-пакеты twill ittho_packages mechanize")

  4. Изменить свое имя на_mechanize_dist.«(полный путь быть»C: python25 lib сайт-пакеты twill indow_packages_mechanize_dist")

  5. Скопировать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 об автоматизированных запросах, приходящих из приложенного двигателя из вашего приложения.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top