Skip to main content

No project description provided

Project description

Chapter-sync

Actions Status codecov Documentation Status Docker

A tool for recording serialized web content, in partial web-serial type novels, or other serialized content for which you want to be sent updates as they're published.

The other tools in the space (at least that I'm aware of: Leech, FanFicFare) are mostly designed around manual one-off usage of the tool to capture the current state of a story/series and turn it into an ebook.

chapter-sync, by contrast, records everything it captures to a sqlite database and will only collect new/missing chapters. It also bakes in (through supported subscription methods) the ability to send new chapters to "subscribers" who have not yet received it.

Quickstart

 chapter-sync series add some-book 'https://some-book.com/table-of-contents/' --title 'Some Book' --settings '{"content_selector": "#main .entry-content", "chapter_selector": "#main .entry-content > ul > li > a"}'
Added series "some-book" at "https://some-book.com/table-of-contents/" chapter-sync series list
┏━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ ID  Name                        URL                                  ┃
┡━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ 1   some-book                   https://some-book.com/table-of-cont… │
└────┴────────────────────────────┴──────────────────────────────────────┘

❯ chapter-sync sync
...
Done

❯ chapter-sync chapter list 1
                               Some Book
┏━━━━━━━━━━━━┳━━━━━━━━━┳━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━━━┓
┃ Title       Chapter  Size (Kb)  Sent        Published   Created    ┃
┡━━━━━━━━━━━━╇━━━━━━━━━╇━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━━━┩
│ Chapter 1   1        37.3       2024-03-02  2023-07-28  2024-03-02 │
│ Chapter 2   2        37.1       2024-03-02  2023-08-04  2024-03-02 │
│ Chapter 3   3        36.9       2024-03-02  2023-08-11  2024-03-02 │
│ Chapter 4   4        36.9       2024-03-02  2023-08-18  2024-03-02 │
└────────────┴─────────┴───────────┴────────────┴────────────┴────────────┘

❯ chapter-sync chapter export 1 4 ls
Some Book: Chapter 4.epub

❯ chapter-sync series export 1 ls
Some Book.epub

Web

The tool also ships with a web service which can be used to view and manage subscriptions.

Web Example

Inspiration

this tool started off as an attempt at a refactor/PR to Leech to enable it to more granularly record updates to books as they changed.

However, chapter-sync is designed from the ground up to be able to individually record/send chapters as they are published, which ultimately means the to tools ultimately end up being almost entirely different.

I had been using InstaPaper to send updates of series to my kindle, until they made that a paid feature. Additionally the drawback there, was that the file they'd send would contain all chapters in the whole series, in reverse.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

chapter_sync-0.3.7.tar.gz (40.8 kB view details)

Uploaded Source

Built Distribution

chapter_sync-0.3.7-py3-none-any.whl (56.3 kB view details)

Uploaded Python 3

File details

Details for the file chapter_sync-0.3.7.tar.gz.

File metadata

  • Download URL: chapter_sync-0.3.7.tar.gz
  • Upload date:
  • Size: 40.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for chapter_sync-0.3.7.tar.gz
Algorithm Hash digest
SHA256 bac460c8014c5a2324538303b39b818fc1f06a8213c0e6e39c6b98ea1dc917b5
MD5 be59c4062322a9029625a93c6c4112a0
BLAKE2b-256 7592111271706f85087dc17568ae306f994e1c62bfec81828c46da79ec48b4b4

See more details on using hashes here.

File details

Details for the file chapter_sync-0.3.7-py3-none-any.whl.

File metadata

  • Download URL: chapter_sync-0.3.7-py3-none-any.whl
  • Upload date:
  • Size: 56.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for chapter_sync-0.3.7-py3-none-any.whl
Algorithm Hash digest
SHA256 7d2f1fb34440fe97e926ba5f57c02a41da1ffbfeda905597d82820dc97540270
MD5 a4d0c726f5d8a6239a8ff00c27c7472e
BLAKE2b-256 9e9836465c7f7f0075e36a58855c8f35d5cd9509d93aaedace732371dbdbad33

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page