import os
-import sys
from zipfile import ZipFile
-from sqlobject import sqlhub
+
+from sqlobject import dberrors, sqlhub
from sqlobject.sqlbuilder import Select
+
from .db import Author, Book, Extension, Genre, Language, \
insert_name, insert_author
for genre in genres.split(':'):
if genre:
genre_row = insert_name(Genre, genre, title=genre)
- book.addGenre(genre_row)
+ try:
+ book.addGenre(genre_row)
+ except dberrors.DuplicateEntryError:
+ pass # The genre has already been added
-if sys.version[0] == 2:
- def tounicode(s):
+def tounicode(s):
+ if isinstance(s, bytes):
return s.decode('utf-8')
-else:
- def tounicode(s):
+ else:
return s