claybdavis 507feb15fa bbc: emit <h1> for Sport articles (handle new headline block-type)
Sport articles fetched via recipes/bbc.recipe and recipes/bbc_fast.recipe
were shipping with no <h1>, because BBC restructured the
window.__INITIAL_DATA__ JSON. article['headline'] is now None for Sport,
and the headline lives either in a new 'headline' block-type or — for
the 'high-impact' layout — nested under a 'topper' block's
model.heading.blocks list. The previous parse_article_json loop only
branched on 'image' and 'text', so neither variant produced anything.

Fix: prefer the plain-text article['metadata']['seoHeadline'] when the
legacy article['headline'] field is empty, and as a defensive fallback
extract the headline from a 'headline' or 'topper' block via a small
extract_text_block_plaintext helper. Verified against live Sport URLs
covering both block-type variants; legacy News articles that still
populate article['headline'] are unaffected.

bbc_fast.recipe carries an identical copy of parse_article_json, so the
same patch is applied to both files.
2026-05-18 16:00:45 -05:00
2026-05-16 13:32:20 +05:30
2026-04-18 12:56:38 +05:30
2026-04-26 08:56:29 +05:30
2026-05-13 15:03:50 +05:30
2024-11-24 22:01:57 +05:30
2025-03-21 08:09:41 +05:30
2025-03-25 09:30:01 +01:00
2026-04-01 21:06:08 +02:00
2021-01-24 19:53:30 +09:00
2021-01-24 19:53:30 +09:00
2026-04-21 23:04:02 +00:00
2025-10-10 08:24:39 +02:00
2025-05-09 19:10:59 +05:30

calibre

calibre is an e-book manager. It can view, convert, edit and catalog e-books in all of the major e-book formats. It can also talk to e-book reader devices. It can go out to the internet and fetch metadata for your books. It can download newspapers and convert them into e-books for convenient reading. It is cross platform, running on Linux, Windows and macOS.

For more information, see the calibre About page.

Build Status

Screenshots

Screenshots page

Usage

See the User Manual.

Development

Setting up a development environment for calibre.

A tarball of the source code for the current calibre release.

Bugs

Bug reports and feature requests should be made in the calibre bug tracker at Launchpad. GitHub is only used for code hosting and pull requests.

Support calibre

calibre is a result of the efforts of many volunteers from all over the world. If you find it useful, please consider contributing to support its development. Donate to support calibre development.

Building calibre binaries

See Build instructions for instructions on how to build the calibre binaries and installers for all the platforms calibre supports.

calibre package versions in various repositories

Packaging Status

S
Description
The official source code repository for the calibre ebook manager
Readme GPL-3.0 350 MiB
Languages
Python 92.6%
C++ 3.3%
C 3.1%
HTML 0.4%
Shell 0.2%
Other 0.1%