Official repository: <https://github.com/grqz/bgutil-ytdlp-pot-provider>
# BgUtils POT Provider
A proof-of-origin token (POT) provider to be used alongside [coletdjnz's POT plugin framework](https://github.com/coletdjnz/yt-dlp-get-pot). We use [LuanRT's Botguard interfacing library](https://github.com/LuanRT/BgUtils) to generate the token.
This is used to bypass the 'Sign in to confirm you're not a bot' message when invoking yt-dlp from an IP address flagged by YouTube. See https://github.com/yt-dlp/yt-dlp-wiki/pull/40/files for more details.
The provider comes in two parts:
1. **Provider**: An HTTP server that generates the POT, and has interfaces for the plugin to retrieve data from
2. **Provider plugin**: uses POT plugin framework to retrieve data from the provider, allowing yt-dlp to simulate having passed the 'bot check'
## Usage
Default port number is 4416. If you want to change this, be sure to change it in both the provider and plugin code.
### 1. Set up the provider
Docker:
```
docker run --name bgutil-provider -d -p 4416:4416 brainicism/bgutil-ytdlp-pot-provider
```
Native:
```
cd server/
yarn install --frozen-lockfile
npx tsc
node build/main.js
```
### 2. Install the plugin
Make sure you have [coletdjnz's POT plugin framework](https://github.com/coletdjnz/yt-dlp-get-pot) installed already.
Download the latest release zip from [releases](https://github.com/Brainicism/bgutil-ytdlp-pot-provider/releases). Install it by placing the zip into one of the [plugin folders](https://github.com/yt-dlp/yt-dlp#installing-plugins).
Raw data
{
"_id": null,
"home_page": null,
"name": "definitely-not-bgutil-ytdlp-pot-provider-to-distinguish-from-it",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "yt-dlp, yt-dlp-plugin",
"author": null,
"author_email": "Brainicism <brainicism@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/8d/4e/f809b968c778a9b74a3976dacad93fbeca8fce0fd0790ade6f5700660a7d/definitely_not_bgutil_ytdlp_pot_provider_to_distinguish_from_it-0.2.29.tar.gz",
"platform": null,
"description": "Official repository: <https://github.com/grqz/bgutil-ytdlp-pot-provider>\n\n# BgUtils POT Provider\n\nA proof-of-origin token (POT) provider to be used alongside [coletdjnz's POT plugin framework](https://github.com/coletdjnz/yt-dlp-get-pot). We use [LuanRT's Botguard interfacing library](https://github.com/LuanRT/BgUtils) to generate the token.\n\nThis is used to bypass the 'Sign in to confirm you're not a bot' message when invoking yt-dlp from an IP address flagged by YouTube. See https://github.com/yt-dlp/yt-dlp-wiki/pull/40/files for more details.\n\nThe provider comes in two parts:\n\n1. **Provider**: An HTTP server that generates the POT, and has interfaces for the plugin to retrieve data from\n2. **Provider plugin**: uses POT plugin framework to retrieve data from the provider, allowing yt-dlp to simulate having passed the 'bot check'\n\n## Usage\n\nDefault port number is 4416. If you want to change this, be sure to change it in both the provider and plugin code.\n\n### 1. Set up the provider\n\nDocker:\n\n```\ndocker run --name bgutil-provider -d -p 4416:4416 brainicism/bgutil-ytdlp-pot-provider\n```\n\nNative:\n\n```\ncd server/\nyarn install --frozen-lockfile\nnpx tsc\nnode build/main.js\n```\n\n### 2. Install the plugin\n\nMake sure you have [coletdjnz's POT plugin framework](https://github.com/coletdjnz/yt-dlp-get-pot) installed already.\n\nDownload the latest release zip from [releases](https://github.com/Brainicism/bgutil-ytdlp-pot-provider/releases). Install it by placing the zip into one of the [plugin folders](https://github.com/yt-dlp/yt-dlp#installing-plugins).\n",
"bugtrack_url": null,
"license": null,
"summary": null,
"version": "0.2.29",
"project_urls": null,
"split_keywords": [
"yt-dlp",
" yt-dlp-plugin"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "ea139f63382eae68003824b1a3d72d6a70227bf7ae05894cd4fedc5bc064fae4",
"md5": "0e180724d6d45bc87b5eb770a0f2950c",
"sha256": "0b1db4d05ea6c844967a3b314688c42860d4612922e949d0e5c6817dc6160e96"
},
"downloads": -1,
"filename": "definitely_not_bgutil_ytdlp_pot_provider_to_distinguish_from_it-0.2.29-py3-none-any.whl",
"has_sig": false,
"md5_digest": "0e180724d6d45bc87b5eb770a0f2950c",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 2817,
"upload_time": "2024-09-02T06:58:24",
"upload_time_iso_8601": "2024-09-02T06:58:24.018697Z",
"url": "https://files.pythonhosted.org/packages/ea/13/9f63382eae68003824b1a3d72d6a70227bf7ae05894cd4fedc5bc064fae4/definitely_not_bgutil_ytdlp_pot_provider_to_distinguish_from_it-0.2.29-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8d4ef809b968c778a9b74a3976dacad93fbeca8fce0fd0790ade6f5700660a7d",
"md5": "1058c5ac3594340fb1b120494ddc326e",
"sha256": "08b3eeb1e3d235507a41e48c5718ea1ff3b2024f65c81b440441fb50a9c1bca3"
},
"downloads": -1,
"filename": "definitely_not_bgutil_ytdlp_pot_provider_to_distinguish_from_it-0.2.29.tar.gz",
"has_sig": false,
"md5_digest": "1058c5ac3594340fb1b120494ddc326e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 2142,
"upload_time": "2024-09-02T06:58:25",
"upload_time_iso_8601": "2024-09-02T06:58:25.308359Z",
"url": "https://files.pythonhosted.org/packages/8d/4e/f809b968c778a9b74a3976dacad93fbeca8fce0fd0790ade6f5700660a7d/definitely_not_bgutil_ytdlp_pot_provider_to_distinguish_from_it-0.2.29.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-09-02 06:58:25",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "definitely-not-bgutil-ytdlp-pot-provider-to-distinguish-from-it"
}