Исходящий FTP-запрос от Google Appengine с использованием Python - PullRequest
3 голосов
/ 30 августа 2010

Мне нужно сделать исходящий ftp-запрос, чтобы получить несколько маленьких файлы. Есть 6 файлов каждый менее 10K, и мне нужно только извлекайте их раз в пару часов.

Когда я пытаюсь сделать это с помощью urllib2.urlopen (" ftp: //xxx.xxx.xxx"), я получаю исключение AttributeError: у объекта 'module' нет атрибута 'Ftp_port'.

Я прочитал документацию и вижу, что вам разрешено только сделать http и https запросы из appengine, к сожалению, мой приложение должно использовать данные ftp, означает ли это требование Я не могу использовать appengine вообще? Я искренне надеюсь, что нет.

Так что кто-нибудь здесь нашел способ сделать FTP-запросы, возможно, с платный аккаунт? А если нет, что другие люди решили сделать? Azure или EC2 разрешают исходящие FTP-запросы?

Ответы [ 3 ]

5 голосов
/ 30 августа 2010

Ты прав. Google App Engine не позволяет вам делать FTP-запросы. Даже с платным аккаунтом.

Мне пришлось использовать экземпляр LAMP на EC2, который обрабатывает FTP через CURL, и делать http-запросы к нему от GAE.

2 голосов
/ 01 августа 2013

Это ограничение раньше сводило меня с ума; реализация накладных расходов на динамическое создание подчиненных рабочих EC2 для ретрансляции данных FTP - это настоящая трата времени. К счастью, с 9 апреля этого года (SDK 1.7.7) это больше не проблема. Исходящие сокеты (например, FTP) обычно доступны для всех приложений с поддержкой биллинга.

Обзор API сокетов (Python): https://developers.google.com/appengine/docs/python/sockets/

0 голосов
/ 13 апреля 2013

drivehq.com - еще один вариант. Он предоставляет как веб + FTP-сервер. Так что третья сторона, с которой мне нужно было взаимодействовать (которая говорила только по FTP), загружала файлы через FTP. И тогда я хотел бы получить их на appengine.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...