Commit bb6be660 authored by mitshel's avatar mitshel
Browse files

Исправлена ошибка извлечения аннотации. (из некторых книг аннотация...

Исправлена ошибка извлечения аннотации. (из некторых книг аннотация извлекалась не полностью и далее извлечение метаинформации приостанавливалось и не извлекалась следующая далее обложка).
parent 67532dca
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -4,10 +4,12 @@
import sopdsparse
import base64

f=open('book1.fb2','rb')
f=open('114.fb2','rb')
parser=sopdsparse.fb2parser(True)
parser.parse(f)
print("Errorstr= ",parser.parse_errormsg)
print(parser.author_first.getvalue(), parser.author_last.getvalue(), parser.genre.getvalue(), parser.lang.getvalue(), parser.book_title.getvalue())
print(parser.annotation.getvalue())
i=0
print(parser.cover_image.cover_data)
jpg=open('image.jpg','wb')

py/image.jpg

0 → 100644
+98.3 KiB
Loading image diff...
+2 −4
Original line number Diff line number Diff line
@@ -18,7 +18,7 @@ class fb2tag:

   def tagopen(self,tag,attrs=[]):
       result=False
       if self.index<self.size:
       if (self.index+1)<self.size:
          if self.tags[self.index+1]==tag:
             self.index+=1
       if (self.index+1)==self.size:
@@ -90,9 +90,6 @@ class fb2cover(fb2tag):

   def add_data(self,data):
       if self.iscover:
#          new_data=repr(data).strip("'")
#          if new_data!='\\n':
#             self.cover_data+=new_data
          if data!='\\n':
             self.cover_data+=data

@@ -128,6 +125,7 @@ class fb2parser:

   def start_element(self,name,attrs):
       name=name.lower()
       print('[',name,']')
       if self.process_description:
          self.author_first.tagopen(name)
          self.author_last.tagopen(name)