Chia sẻ - Cải tạo pypub và đóng gói ePub trực tuyến | VN-Zoom | Cộng đồng Chia Sẻ Kiến Thức Công Nghệ và Phần Mềm Máy Tính

Chia sẻ Cải tạo pypub và đóng gói ePub trực tuyến

malemkhoang

Rìu Bạc Đôi
new_logo.png

Học ngôn ngữ lập trình Python như học một ngôn ngữ.
(C)Ma Lem Khoang

pypub là thư viện Python giành cho đóng gói ePub khá nhỏ gọn và đầy năng lực.
Việc cài đặt là dễ dàng trên các nền tảng HĐH, trong đó với Windows sử dụng câu lệnh từ CMD như sau:
pip install pypub

Đặc trưng:
* Tạo tệp .epub cho dù bạn không hiểu gì về nó từ các nguồn: trực tuyến, tệp cục bộ, chuỗi văn bản hoặc phối hợp cả ba thứ đó.
* Nội dung nguồn khi đóng gói được dọn dẹp để loại bỏ những thứ không cần thiết như: script, style...
* Ảnh được lưu trực tiếp vào .epub (mặc dù điều đó làm cho dung lượng tệp lớn hơn)
* Người đóng gói tùy chỉnh được nội dung chương và cấu trúc ePub.

Ví dụ:

>>> import pypub
>>> my_first_epub = pypub.Epub('My First Epub')
>>> my_first_chapter = pypub.create_chapter_from_url('https://en.wikipedia.org/wiki/EPUB')
>>> my_first_epub.add_chapter(my_first_chapter)
>>> my_first_epub.create_epub('OUTPUT_DIRECTORY')
chỉ đơn giản vậy thôi là có ngay tệp .epub từ một trang trực tuyến.

Ngoài ra còn có thể chuyển đổi .epub thành các tệp Amazon Kindle .mobi hoặc .azw3 (các bạn tự tìm hiểu).

Thông tin tham khảo về pypub:

Thông tin giành cho người lập trình:

Còn có một thư viện khác dùng để đóng gói ePub là: ebooklib, nhưng có thể không dễ dùng bằng pypub.
Tuy nhiên, cho đến khi tôi thực hiện bài viết này, pypub chỉ hoạt động trên môi trường Python2.
Do đó, nếu muốn nó hoạt động được trên môi trường Python3 thì cần phải cải tạo nó.
Tức là hiệu chỉnh mã nguồn của pypub để nó hoạt động được trong môi trường Python3, điều này được tác giả pypub cho phép (xem: Thông tin tham khảo về pypub).
-40-728.jpg


EPUB là định dạng tệp sách điện tử sử dụng phần mở rộng tệp ".epub". Thuật ngữ này là viết tắt của xuất bản điện tử. EPUB được hỗ trợ bởi nhiều trình đọc sách điện tử và phần mềm tương thích có sẵn cho hầu hết các thiết bị như: điện thoại thông minh, máy tính bảng và máy tính.

Môi trường thực thi Interpreter:
Có nhiều môi trường thực thi Interpreter.
Tôi sử dụng 2 môi trường sau (nhỏ nhẹ và Portable):
1. PyScripter
PyScripter-v4.0 07/05/2021, tải về từ:
pyscripter-konfiguracja.jpg

Tuy nhiên, tôi dùng PyScripter-v3.6 thấy thú vị hơn.

2. Wing Personal
Wing Personal - Version 7.2.9 - Released 2021-04-12, tải về từ:
1547137152348


Môi trường thực hành:
Tôi chọn vnthuquan làm môi trường thực hành.
Ở đây hiện có gần 14.000 truyện text có số lượng chương, phần khác nhau.
Một đặc điểm nữa là địa chỉ các truyện và chương bị mã hóa.
Trông nó khủng khiếp như thế này:


Tuy nhiên, không hoàn toàn như vậy, bạn không phải lo lắng về điều này.
Tôi tạo lập trước một CSDL .csv toàn bộ địa chỉ của các truyện (vnthuquanDB.csv) để thuận tiện cho việc đóng gói trực tuyến.

Thực hiện công việc:
1. Cài đặt Python3 cho Windows

Tải về và cài đặt Python3 (bản cuối): Python 3.9.5 Release Date: May 3, 2021

2. Cài đặt các thư viện cần thiết cho Python
Sử dụng cmd để thực thi lệnh cài đặt gói thư viện của Python: pip install <tên thư viện>
trong đó <tên thư viện> là các thư viện sau:
- bs4
- csv
- os
- pathlib
- pypub
- re
- requests
- urllib3

Lưu ý:
Khi hoàn thành cài đặt gói pypub, cần sao chép lại đường dẫn lưu gói thư viện này để chỉnh sửa về sau.

3. Cài đặt môi trường thực thi Interpreter

Giải nén PyScripter và/hoặc Wing Personal vào thư mục nào đó tùy ý của bạn.
- Thực thi PyScripter.exe lần đầu để cài đặt môi trường làm việc cho PyScripter.
- Thực thi ..\bin\wing-personal.exe lần đầu để cài đặt môi trường làm việc cho Wing Personal.

4. Tiến hành
4.1. Tải về gói tệp của tôi (pypub MLK Modify.zip) bao gồm:
- pypub đã chỉnh sửa;
- CSDL: vnthuquanDB.csv;
- Script Python: pypubcreateEbookFromVNTQ.py;
- Tệp này: Read.md;
4.2. Giải nén, sao chép nội dung thư mục "pypub MLK Modify" vào thư mục "pypub" của bạn.
4.3. Sao chép vnthuquanDB.csv, pypubcreateEbookFromVNTQ.py vào cùng thư mục với PyScripter.exe hoặc \bin\wing-personal.exe
4.4. Thực thi PyScripter.exe hoặc \bin\wing-personal.exe
4.5. Nạp pypubcreateEbookFromVNTQ.py vào vùng soạn thảo của PyScripter.exe hoặc wing-personal.exe
4.6. Cho thực thi script trong môi trường Interpreter của PyScripter.exe hoặc wing-personal.exe
4.7. Chờ đợi kết quả... (tốc độ đóng gói cỏ vẻ hơi chậm)

Gói tệp của tôi ở đây:
pypubLOGO.png


Script hoạt động có thể còn có lỗi.
Mong được các bạn sao chép thông báo lỗi rồi post lên đây để mình hoàn thiện.
Xin xảm ơn.​
 
Sửa lần cuối:
Top