Slide 1

Slide 1 text

Python Epub Le serpent à lunette qui sait lire @Exirel // #PyconFr 2012

Slide 2

Slide 2 text

Livre

Slide 3

Slide 3 text

Lire

Slide 4

Slide 4 text

Lire > Livre

Slide 5

Slide 5 text

Questions ● Que lisez-vous ? ● Où lisez-vous ? ● Quand lisez-vous ? ● Sur quoi lisez-vous ? ● Pourquoi lisez-vous ?

Slide 6

Slide 6 text

Formats ● Facile à lire ● Facile à transporter ● Facile à annoter ● Facile à imprimer ● Facile à partager

Slide 7

Slide 7 text

PDF

Slide 8

Slide 8 text

DOC/ODT/RTF

Slide 9

Slide 9 text

MOBI (Amazon)

Slide 10

Slide 10 text

EBOOK (Apple)

Slide 11

Slide 11 text

EPUB 2

Slide 12

Slide 12 text

EPUB 3

Slide 13

Slide 13 text

Epub 2 ● Format libre ● À base de formats libres – XML, xHtml, CSS, NCX – ZIP ● Plusieurs normes et documents...

Slide 14

Slide 14 text

Normes ● OPF : Open Packaging Format ● OPS : Open Publication Structure ● OCF : Open Container Format ● NCX : Navigation Control file for XML applications (DAISY Consortium)

Slide 15

Slide 15 text

XML FOR EVERYPONY

Slide 16

Slide 16 text

Python-epub

Slide 17

Slide 17 text

Modules ● epub ● epub.opf ● epub.ncx

Slide 18

Slide 18 text

import epub book = epub.open('lemons_grenades.epub', 'w') filename = u'secret/lemons_grenade_spec1.xhtml' item = epub.opf.ManifestItem('Id001', 'spec1.xhtml' 'application/xhtml+xml') book.add_item(filename, item) book.opf.metadata.add_title('Lemons grenades', 'en') Book.opf.metadata.add_creator('Cave Johnson', file_as='Johnson Cave') book.close() Exemple

Slide 19

Slide 19 text

Informations complémentaires ● Python 2.7 et 3.2 (…) ● xml.dom (…) ● zipfile ● 96% de +900 loc pour 53 tests ● Sphinx : documentation en français – http://epub.exirel.me ● Dépôt mercurial – https://bitbucket.org/exirel/epub ● Paquet sur Pypi : – http://pypi.python.org/pypi/epub

Slide 20

Slide 20 text

Futur ● Simplification des meta-données (Book.titles, Book.chapters, etc.) ● Documentation en anglais ● Stabilisation, tag, etc. ● Side-project basé sur python-epub – Convertir format X ou Y vers epub

Slide 21

Slide 21 text

Free as in « Freedom »

Slide 22

Slide 22 text

Merci ● @exirel ● Lisez ● Trollez ● ??? ● Enjoy!