Я пытаюсь поместить некоторые сайты, которые я сканировал в полку, но полка не примет никаких объектов Сайта. Он будет принимать списки, строки, кортежи, что у вас есть, но как только я помещаю объект сайта, он падает, когда я пытаюсь получить содержимое полки.shelve дает странную ошибку
Итак, когда я заполняю свой полк, как это :
def add_to_shelve(self, site):
db = shelve.open("database")
print site, site.url
for word in site.content:
db[word] = site.url #site.url is a string, word has to be one too
shelve.open("database")['whatever']
работает отлично.
Но если я это сделать:
def add_to_shelve(self, site):
db = shelve.open("database")
print site, site.url
for word in site.content:
db[word] = site #site is now an object of Site
shelve.open("database")['whatever']
ошибки с этим сообщением об ошибке:
AttributeError: 'module' object has no attribute 'Site'
Я полностью тупик, и pythondocs, как ни странно, не так много информации или. Все они говорят, что ключ в полке должен быть строкой, но значение или данные могут быть «произвольным объектом»