Импорт пользовательского пакета в движок приложения Python Google - PullRequest
0 голосов
/ 02 февраля 2011

ОК, ребята, я нигде не могу найти решение для своей проблемы, и я надеюсь, что решение простое. Ранее у меня была плоская файловая система для моего проекта gae без папок. Я рефакторинг некоторого кода, и я попытался поместить некоторые в папку. Я немного новичок и никогда раньше не делал ничего подобного, но ничто в Интернете не говорит о том, что я не могу легко переместить мои файлы в папку. Я добавил файл __init__.py в папку и импортировал имя папки из своей основной программы. Однако, когда я пытаюсь получить доступ к определенной функции в одном из файлов, он задыхается и говорит AttributeError: 'module' object has no attribute 'site1_ripper'

вот моя файловая структура:

main.py
SiteCrawlers\
    __init__.py
    site1_ripper.py

вот важные части файлов:

main.py

import SiteCrawlers
class Updater(webapp.RequestHandler):
    def get(self):
        SiteCrawlers.site1_ripper.siteCrawler()

site1_ripper.py

def siteCrawler()
    #stuff here

Ответы [ 2 ]

3 голосов
/ 02 февраля 2011

Мне кажется, проблема в том, что вам нужно явно импортировать site1_ripper, если он не указан в __init__.py. Сделайте ваш основной импорт:

import SiteCrawlers.site1_ripper
0 голосов
/ 02 февраля 2011

В вашем основном файле попробуйте:

from SiteCrawlers.site1_ripper import siteCrawler

class Updater(webapp.RequestHandler):
    def get(self):
        siteCrawler()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...