App Engine запускает код Python в песочнице, и из вашего приложения можно импортировать только авторизованные модули и пакеты стандартной библиотеки.
как уже упоминал @mg, если вы хотите разрешить использование сторонних модулей и пакетов, вам нужно связать их с вашим приложением. чтобы сделать это специально для feedparser, просто перетащите файл feedparser.py
в каталог верхнего уровня App Engine (где находятся ваши app.yaml
, index.yaml
и main.py
).
(ОБНОВЛЕНО в октябре 2011 г.) также учитывайте жесткие ограничения:
- максимальное общее количество файлов (файлов приложений и статических файлов): 3000 (повышено до 10k в 1.5.5, октябрь 2011 г.)
- максимальный размер приложения или статического файла: 10 МБ (увеличено до 32 МБ в 1.5.5)
- максимальный общий размер всех приложений и статических файлов: 150 МБ
Если вы хотите сэкономить на общем количестве файлов, вы можете поместить пачку файлов .py
в ZIP-файл, чтобы заплатить только за один файл. хотя эта статья немного устарела - рекомендуется объединять Django 1.0, которая теперь включена, - техника объединения модулей и пакетов в ZIP-файлы по-прежнему применяется:
http://code.google.com/appengine/articles/django10_zipimport.html
Официальная страница в документах, где обсуждаются ограничения файла:
http://code.google.com/appengine/docs/python/runtime.html#Pure_Python
(ОБНОВЛЕНО в ноябре 2011 г.): Ссылка ниже содержит список модулей / пакетов Python с белым списком и кодом C для 2.5. Среда выполнения Python 2.7 освобождает многие ограничения настолько, что белый список стал черным списком. Вот разрешенные / занесенные в белый список модули 2.5 C, а также запрещенные / помещенные в черный список модули 2.7 C:
http://code.google.com/appengine/kb/libraries.html