https://github.com/hurlenko/orly
Download O'Reilly books as EPUB.
https://github.com/hurlenko/orly
epub oreilly oreilly-books oreilly-books-downloader
Last synced: about 1 year ago
JSON representation
Download O'Reilly books as EPUB.
- Host: GitHub
- URL: https://github.com/hurlenko/orly
- Owner: hurlenko
- License: mit
- Created: 2021-07-19T21:24:37.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2024-07-10T10:17:09.000Z (almost 2 years ago)
- Last Synced: 2025-04-11T18:23:03.895Z (about 1 year ago)
- Topics: epub, oreilly, oreilly-books, oreilly-books-downloader
- Language: Rust
- Homepage:
- Size: 181 KB
- Stars: 79
- Watchers: 3
- Forks: 10
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# orly
Download O'Reilly books as EPUB.




## Table of Contents
- [Installation](#installation)
- [Github releases (recommended)](#github-releases-recommended)
- [Cargo](#cargo)
- [Usage](#usage)
- [Command line interface](#command-line-interface)
## Installation
### Github releases (recommended)
**[Archives of precompiled binaries for orly are available for Windows,
macOS and Linux.](https://github.com/hurlenko/orly/releases)** Linux and
Windows binaries are static executables.
### Cargo
If you're a **Rust programmer**, orly can be installed with `cargo`.
> Note that the minimum supported version of Rust for `orly` is **1.54.0**.
You need to install the development headers of `libxml2` first. The process depends on the OS being used:
- Windows
First install [vcpkg](https://github.com/microsoft/vcpkg). After that install `libxml2`:
```bash
vcpkg install libxml2:x64-windows-static
```
Export compiler options to force static linking:
```bash
$env:RUSTFLAGS="-Ctarget-feature=+crt-static"
```
- Linux
On linux systems you'd `pkg-config`. For Debian-based distributions:
```bash
apt-get install libxml2-dev pkg-config
```
- macOS
Use `brew` to install `libxml2` and `pkg-config`:
```bash
brew install libxml2 pkg-config
```
Finally install `orly`:
```bash
cargo install orly
```
After installation, the `orly` command will be available. Check the [command line](#command-line-interface) section for supported commands.
## Usage
- You will need an O'Reily account with a non-expired subscription.
- Find the book you want to download and copy its id (the digits at the end of the url).
- Use your credentials or a cookie string to download the book:
```bash
orly 1234567890 --creds "email@example.com" "password"
# or
orly 1234567890 --cookie 'BrowserCookie=....'
```
## Command line interface
Currently `orly` supports these commands
```bash
USAGE:
orly [OPTIONS] ...
ARGS:
... Book ID to download. Digits from the URL
OPTIONS:
-c, --creds Sign in credentials
--cookie Cookie string
-h, --help Print help information
-k, --kindle Apply CSS tweaks for kindle devices
-o, --output Directory to save the final epub to [default: .]
-t, --threads Maximum number of concurrent http requests [default: 20]
-v, --verbose Level of verbosity
-V, --version Print version information
```