Comments (4)
Okay, small update, I fixed the table of contents with calibre, although the problem remains, you lose enough time to fix it by hand and it would be nice if you could merge chapter text automatically respecting the toc.
I am writing to add one thing though, in another book I adjusted the toc to add subchapters and this though generated an error in ebooklib which I am sharing:
piece of code
book = epub.read_epub("book.epub")
for a in book.toc:
print(type(a))
print(type(a.title), a.title)
output with error
....
<class 'ebooklib.epub.Link'>
<class 'str'> CAP TITLE
<class 'tuple'>
Traceback (most recent call last):
File "<string>", line 11, in <module>
AttributeError: 'tuple' object has no attribute 'title'
you can see that the object from class ebooklib.epub.Link becomes a tuple that does not contain the title property
from ebooklib.
If it is not a problem could you send me sample of your input and output files to my email [email protected] so I can double check what is going on there. I want to check how is TOC organised in the original book.
from ebooklib.
ok i re-sent you an email :)
from ebooklib.
@aerkalov I have a related issue/question (but let me know if I should open a separate issue):
I am trying to map the chapter/section info from the TOC to text elements for partitioning epub books. I've noticed a few things...
- the TOC hrefs can refer to the same
epub.EpubHtml
item frombook.items
- some
book.items
are skipped by the TOC hrefs - the beginning and ending of an
epub.EpubHtml.get_content
object doesn't line up with the beginning and ending of chapters.
Looking at the epub.EpubNcx
, I'm wondering if it's somehow possible to use the links to define the chapter boundaries, but I haven't been able to figure it out. Any help would be greatly appreciated!
This is the book I'm using for testing: https://www.gutenberg.org/cache/epub/60153/pg60153-images.html#CONTENTS
from ebooklib.
Related Issues (20)
- Get page as image HOT 3
- In some HTML elements, attribute names need to be case-sensitive to take effect, for example, the viewBox attribute within the <svg> element.
- Option ignore_ncx (warning) HOT 4
- Saving with `set_content` produces empty HTML HOT 1
- Is there any plan on typing supports?
- Can't change the metadata
- Non-image cover?
- Include a font file, or any arbitrary file? HOT 1
- Write ebook file directly into db instead file HOT 1
- Warning on opening ebook HOT 2
- [element "ol" incomplete; missing required element "li"] in [nav.xhtml] when creating epub with nested directories HOT 2
- nsmap = metadata.nsmap HOT 2
- epub does not function with Kivy HOT 4
- item.get_type() does not recognize webm HOT 1
- write_epub() is deleting the css link HOT 3
- Unable to get my epub read on google play books! HOT 3
- Non-linear content must be reachable
- Reflection HOT 1
- Refresh EbookLib for the 1.0 release HOT 4
- Silence future warning
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ebooklib.