> For the complete documentation index, see [llms.txt](https://cloakedkeys.gitbook.io/ofsc/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://cloakedkeys.gitbook.io/ofsc/installation/uv-install.md).

# UV Install

## Installing UV

> ⚠️ Important: UV is a standalone binary. You do not need Python installed on your system to install UV. Once UV is installed, it can then manage and install Python versions for you. Installing UV with one of their official installation scripts is recommended for the most straightforward setup.

[Installing Prerequisites](/ofsc/installation/pre-install-guide.md)

## Installing/Upgrading OF-Scraper

> ℹ️ **Tip: Use the `--verbose` command to get more details about the install process.**

### **Stable Release Install**

To install the latest release of this fork from PyPI. The package is `ofscraper-community`; the command is still `ofscraper`. (The `ofscraper` package on PyPI is upstream's old version.)

```bash
uv tool install ofscraper-community
```

### Development Release

To install the latest code on `main` before it's released, install from GitHub. To install a specific branch, add `@<branch>`:

```bash
uv tool install git+https://github.com/cloakedkeys/OF-Scraper-Community --force
```

### Specific Version of Script

To install a specific release, add `==<version>`:

```bash
uv tool install ofscraper-community==3.16.2 --force
```

Releases older than 3.16.2 aren't on PyPI. Install those from GitHub by tag (tags are listed on the [releases page](https://github.com/cloakedkeys/OF-Scraper-Community/releases)):

```bash
uv tool install git+https://github.com/cloakedkeys/OF-Scraper-Community@3.16.1 --force
```

### Specific Version of Python

You can specify the Python version `uv` should use for the tool installation by appending `--python <version_number>` to your command.

```bash
# Example: Install with Python 3.12 (3.11 to 3.15 are supported)
uv tool install ofscraper-community --python 3.12 --force
```

### Including pyffmpeg (Optional)

pyffmpeg is a Python package that provides ffmpeg capabilities directly within Python by bundling its own ffmpeg binaries. You can accomplish this by appending \[ffmpeg] to the install name when using uv tool install.

example: `uv tool install "ofscraper-community[ffmpeg]" --force`

> ℹ️ When you install with ofscraper-community\[ffmpeg], pyffmpeg will be automatically installed as a dependency. pyffmpeg then manages its own ffmpeg binary for the script, meaning you generally do not need to separately install ffmpeg or mp4decrypt on your host system or mount them into Docker containers.

### Upgrade

```bash
uv tool upgrade ofscraper-community
```

If you installed from GitHub, run the same install command again.

> ℹ️ **Installed the fork before it was on PyPI?** That install is called `ofscraper` in uv. Remove it first, then install from PyPI:
>
> ```bash
> uv tool uninstall ofscraper
> uv tool install ofscraper-community
> ```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://cloakedkeys.gitbook.io/ofsc/installation/uv-install.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
