diff --git a/.github/workflows/build_documentation.yml b/.github/workflows/build_documentation.yml deleted file mode 100644 index 38993e7..0000000 --- a/.github/workflows/build_documentation.yml +++ /dev/null @@ -1,38 +0,0 @@ -name: Build documentation - -on: - workflow_dispatch: - release: - types: [published] - -jobs: - build: - runs-on: ubuntu-latest - strategy: - matrix: - python-version: ['3.10'] - - steps: - - uses: actions/checkout@v2 - - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v2 - with: - python-version: ${{ matrix.python-version }} - - - name: Install dependencies - run: | - python -m pip install --upgrade pip - pip install pdoc - if [ -f requirements.txt ]; then pip install -r requirements.txt; fi - - - name: Build docs - run: | - chmod +x ./scripts/build_documentation.sh - bash ./scripts/build_documentation.sh - - - name: Deploy - uses: JamesIves/github-pages-deploy-action@4.1.4 - with: - branch: documentation - folder: ./documentation diff --git a/.github/workflows/publish_to_pypi.yml b/.github/workflows/publish_to_pypi.yml deleted file mode 100644 index 7d70b19..0000000 --- a/.github/workflows/publish_to_pypi.yml +++ /dev/null @@ -1,37 +0,0 @@ -name: Upload Python Package to PyPI - -on: - release: - types: [published] - -jobs: - deploy: - runs-on: ubuntu-latest - strategy: - matrix: - python-version: ['3.10'] - - steps: - - uses: actions/checkout@v2 - - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v2 - with: - python-version: ${{ matrix.python-version }} - - - name: Install dependencies - run: | - python -m pip install --upgrade pip - python -m pip install pytest - if [ -f requirements.txt ]; then pip install -r requirements.txt; fi - - - name: Build package - run: | - chmod +x ./scripts/compile_for_pypi.sh - ./scripts/compile_for_pypi.sh - - - name: Publish package - uses: pypa/gh-action-pypi-publish@27b31702a0e7fc50959f5ad993c78deac1bdfc29 - with: - user: __token__ - password: ${{ secrets.PYPI_API_TOKEN }} diff --git a/.github/workflows/pytest.yml b/.github/workflows/pytest.yml deleted file mode 100644 index 3516171..0000000 --- a/.github/workflows/pytest.yml +++ /dev/null @@ -1,28 +0,0 @@ -name: Test with pyTest - -on: [workflow_dispatch, push, pull_request] - -jobs: - deploy: - runs-on: ubuntu-latest - strategy: - matrix: - python-version: ['3.10'] - - steps: - - uses: actions/checkout@v2 - - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v2 - with: - python-version: ${{ matrix.python-version }} - - - name: Install dependencies - run: | - python -m pip install --upgrade pip - python -m pip install pytest - if [ -f requirements.txt ]; then pip install -r requirements.txt; fi - - - name: Test with pyTest - run: | - python -m pytest -v diff --git a/.gitignore b/.gitignore deleted file mode 100644 index d8faf46..0000000 --- a/.gitignore +++ /dev/null @@ -1,9 +0,0 @@ -.vscode/ -__pycache__/ -env/ - -.pytest-cache/ -documentation/ - -dist/* -*.egg-info diff --git a/LICENSE b/LICENSE deleted file mode 100644 index c0aab09..0000000 --- a/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2021 SKevo - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/README.md b/README.md deleted file mode 100644 index 58a5d93..0000000 --- a/README.md +++ /dev/null @@ -1,47 +0,0 @@ -# Piped API client (Python) - -A Python API wrapper for [Piped](https://piped-docs.kavin.rocks/). This can essentially be used as an alternative way to access YouTube's API, without needing to use an API key. Forked to allow for search queries to be made. - -## Installation - -```bash -pip install git+https://gitdab.com/cere/python-piped-api-client -``` - -## Quickstart - -Getting started is very easy: - -```python -from piped_api import PipedClient - -CLIENT = PipedClient() - - -# Print out the first audio stream URL for a video: -video = CLIENT.get_video(video_id) -audio_stream = video.get_streams('audio')[0] - -print(f"Audio stream URL: {audio_stream.url} ({audio_stream.mime_type})") -``` - -You can find more examples in the [`tests`](https://github.com/CWKevo/python-piped-api-client/tree/master/tests) folder. - -## Why? - - - -The creation of this package was primarily fueled by the same type of motivation [Piped has](https://piped-docs.kavin.rocks/docs/why/). - -Google's API is not very easy-to-use - you must obtain some JSON thingy to use it, and it is very low-level and not very user-friendly. -On the other hand, this package accessed the [Piped API](https://piped.kavin.rocks/), which has a much more high-level API and doesn't need an account or API keys. - -It is not meant to be a replacement for the official YouTube API, but it can help you to cut the strings that Google attaches to you when using their API. - -## Useful links - -- [Piped's official API documentation](https://piped-docs.kavin.rocks/docs/api-documentation/) \ No newline at end of file diff --git a/index.html b/index.html new file mode 100644 index 0000000..037b471 --- /dev/null +++ b/index.html @@ -0,0 +1,7 @@ + + + + + + + diff --git a/piped_api.html b/piped_api.html new file mode 100644 index 0000000..59b2f0a --- /dev/null +++ b/piped_api.html @@ -0,0 +1,379 @@ + + + + + + + piped_api API documentation + + + + + + + + + +
+
+

+piped_api

+ +

Piped API client (Python)

+ +

Test with pyTest

+ +

A Python API wrapper for Piped. This can essentially be used as an alternative way to access YouTube's API, without needing to use an API key.

+ +

Installation

+ +
pip install piped-api
+
+ +

Quickstart

+ +

Getting started is very easy:

+ +
from piped_api import PipedClient
+
+CLIENT = PipedClient()
+
+
+# Print out the first audio stream URL for a video:
+video = CLIENT.get_video(video_id)
+audio_stream = video.get_streams('audio')[0]
+
+print(f"Audio stream URL: {audio_stream.url} ({audio_stream.mime_type})")
+
+ +

You can find more examples in the tests folder.

+ +

Why?

+ + + +

The creation of this package was primarily fueled by the same type of motivation Piped has.

+ +

Google's API is not very easy-to-use - you must obtain some JSON thingy to use it, and it is very low-level and not very user-friendly. +On the other hand, this package accessed the Piped API, which has a much more high-level API and doesn't need an account or API keys.

+ +

It is not meant to be a replacement for the official YouTube API, but it can help you to cut the strings that Google attaches to you when using their API.

+ + + + + +

🎁 Support me

+ +

I create free software to benefit people. +If this project helps you and you like it, consider supporting me by donating via cryptocurrency:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CryptoAddress
BitcoinE-mail me
Ethereum0x12C598b3bC084710507c9d6d19C9434fD26864Cc
LitecoinLgHQK1NQrRQ56AKvVtSxMubqbjSWh7DTD2
DashXe7TYoRCYPdZyiQYDjgzCGxR5juPWV8PgZ
Zcash:t1Pesobv3SShMHGfrZWe926nsnBo2pyqN3f
Dogecoin:DALxrKSbcCXz619QqLj9qKXFnTp8u2cS12
Ripple:rNQsgQvMbbBAd957XyDeNudA4jLH1ANERL
Monero:48TfTddnpgnKBn13MdJNJwHfxDwwGngPgL3v6bNSTwGaXveeaUWzJcMUVrbWUyDSyPDwEJVoup2gmDuskkcFuNG99zatYFS
Bitcoin Cash:qzx6pqzcltm7ely24wnhpzp65r8ltrqgeuevtrsj9n
Ethereum Classic:0x383Dc3B83afBD66b4a5e64511525FbFeb2C023Db
+ +

More cryptocurrencies are supported. If you are interested in donating with a different one, please E-mail me. +No other forms of donation are currently supported.

+
+ +
+ View Source +
import typing as t
+
+from pathlib import Path
+
+from .client import PipedClient
+from .models.comments import Comments
+
+
+
+# For pdoc:
+README_PATH = Path(__file__).parent.parent.absolute() / Path('README.md')
+try:
+    with open(README_PATH, 'r', encoding="UTF-8") as readme:
+        __readme__ = readme.read()
+
+except:
+    __readme__ = "Failed to read README.md!"
+
+__doc__ = __readme__
+
+
+
+# Supress unused-import warnings:
+if t.TYPE_CHECKING:
+    _ = [PipedClient, Comments]
+
+ +
+ +
+
+ + \ No newline at end of file diff --git a/piped_api/__init__.py b/piped_api/__init__.py deleted file mode 100644 index c045c46..0000000 --- a/piped_api/__init__.py +++ /dev/null @@ -1,25 +0,0 @@ -import typing as t - -from pathlib import Path - -from .client import PipedClient -from .models.comments import Comments - - - -# For pdoc: -README_PATH = Path(__file__).parent.parent.absolute() / Path('README.md') -try: - with open(README_PATH, 'r', encoding="UTF-8") as readme: - __readme__ = readme.read() - -except: - __readme__ = "Failed to read README.md!" - -__doc__ = __readme__ - - - -# Supress unused-import warnings: -if t.TYPE_CHECKING: - _ = [PipedClient, Comments] diff --git a/piped_api/client.html b/piped_api/client.html new file mode 100644 index 0000000..00c1cc9 --- /dev/null +++ b/piped_api/client.html @@ -0,0 +1,938 @@ + + + + + + + piped_api.client API documentation + + + + + + + + + +
+
+

+piped_api.client

+ + +
+ View Source +
import typing as t
+
+from requests import Session
+
+from .models import BasePipedModel
+from .models.comments import Comments
+from .models.videos import Video
+from .models.channels import NextPageChannel, Channel
+
+
+_MDL = t.TypeVar('_MDL', bound=t.Type[BasePipedModel])
+
+
+class APIError(Exception): """Raised when an API call fails"""
+
+
+
+class PipedClient:
+    """
+        An API client for [Piped](https://piped.kavin.rocks).
+
+        See also [Piped API docs](https://piped-docs.kavin.rocks/docs)
+    """
+
+    def __init__(self, base_api_url: str='https://pipedapi.kavin.rocks', session: t.Type[Session]=Session()) -> None:
+        """
+            ### Parameters:
+            - `base_api_url` - The base URL to the instance's API. Trailing slashes will be stripped.
+            - `session` - A class/subclass of `requests.Session` to use for all requests.
+                For example, you could use [requests-cache](https://pypi.org/project/requests-cache/) to make all requests cacheable.
+        """
+
+        self.base_api_url = base_api_url.strip("/")
+        self.session =  session
+
+
+
+    def _get_json(self, uri: str, as_model: t.Optional[_MDL]=None, **kwargs) -> t.Union[_MDL, t.Dict[str, t.Any], t.List[t.Any]]:
+        """
+            Obtains JSON data from specific URI of the Piped API.
+
+            ### Parameters:
+            - `uri` - The URI to get JSON data from
+            - `as_model` - The `BasePipedModel` to load the JSON data into. If this is `None`, the JSON data is returned as a `dict`.
+            - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get`
+        """
+
+        json: t.Union[dict, list] = self.session.get(f"{self.base_api_url}{uri}", **kwargs).json()
+
+        if isinstance(json, dict) and json.get('error', None) is not None:
+            raise APIError(f"Error: {json['error']}")
+
+        if as_model is not None:
+            return as_model(json)
+
+        return json
+
+
+    def get_video(self, video_id: str, **kwargs) -> Video:
+        """
+            Gets information about a specific video.
+
+            ### Parameters:
+            - `video_id` - The ID of the video to get information for
+            - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get`
+
+            [Piped Documentation](https://piped-docs.kavin.rocks/docs/api-documentation/#streamsvideoid)
+        """
+
+        return self._get_json(f"/streams/{video_id}", Video, **kwargs)
+
+
+    def get_comments(self, video_id: str, nextpage: t.Optional[t.Dict[str, t.Optional[str]]]=None, **kwargs) -> Comments:
+        """
+            Gets a list of comments for a specific video.
+
+            ### Parameters:
+            - `video_id` - The ID of the video to get comments for
+            - `nextpage` - Nextpage data, obtained from `.models.comments.Comments.nextpage` property. If this is `None`, the first page of comments is returned.
+                There are often 20 comments per page.
+            - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get`
+
+            [Piped Documentation](https://piped-docs.kavin.rocks/docs/api-documentation/#commentsvideoid)
+        """
+
+        if nextpage is not None:
+            kwargs.update({'params': {'nextpage': nextpage}})
+            return self._get_json(f"/nextpage/comments/{video_id}", Comments, **kwargs)
+
+        return self._get_json(f"/comments/{video_id}", Comments, **kwargs)
+
+
+    def get_trending(self, country_code: str='US', **kwargs) -> t.List[Video.RelatedStream]:
+        """
+            Obtains trending videos for a specific country. If there are no trending videos (or `country_code` is invalid),
+            an empty list is returned.
+
+            ### Parameters:
+            - `country_code` - The country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements)) to get trending videos for. This is automatically capitalized by this package,
+                since Piped for some reason doesn't accept lowercase country codes. Note: countries such as China or North Korea don't have trending videos, so they will always return an empty list.
+            - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get`
+
+            [Piped Documentation](https://piped-docs.kavin.rocks/docs/api-documentation/#trending)
+        """
+
+        kwargs.update({'params': {'region': country_code.upper()}})
+
+        return [Video.RelatedStream(trending_video) for trending_video in self._get_json(f"/trending", **kwargs)]
+
+
+    def get_channel_by_id(self, channel_id: str, nextpage: t.Optional[t.Dict[str, t.Optional[str]]]=None, **kwargs) -> t.Union[NextPageChannel, Channel]:
+        """
+            Gets information about a specific channel by its ID.
+
+            ### Parameters:
+            - `channel_id` - The ID of the channel to get information for
+            - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get`
+
+            [Piped Documentation](https://piped-docs.kavin.rocks/docs/api-documentation/#channelchannelid)
+        """
+
+        if nextpage is not None:
+            kwargs.update({'params': {'nextpage': nextpage}})
+            return self._get_json(f"/nextpage/channel/{channel_id}", NextPageChannel, **kwargs)
+
+        return self._get_json(f"/channel/{channel_id}", Channel, **kwargs)
+
+
+
+    def get_channel_by_name(self, channel_name: str, **kwargs) -> Channel:
+        """
+            Gets information about a specific channel by its name.
+
+            ### Parameters:
+            - `channel_name` - The name of the channel to get information for
+            - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get`
+
+            [Piped Documentation](https://piped-docs.kavin.rocks/docs/api-documentation/#cname)
+        """
+
+        return self._get_json(f"/c/{channel_name}", Channel, **kwargs)
+
+
+    def get_search_suggestions(self, search_query: str, **kwargs) -> t.List[str]:
+        """
+            Obtains search suggestions for a query.
+
+            ### Parameters:
+            - `search_query` - The query to get search suggestions for
+            - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get`
+
+            [Piped Documentation](https://piped-docs.kavin.rocks/docs/api-documentation/#suggestions)
+        """
+
+        kwargs.update({'params': {'query': search_query}})
+
+        return self._get_json(f"/suggestions", **kwargs)
+
+ +
+ +
+
+
+ #   + + + class + APIError(builtins.Exception): +
+ +
+ View Source +
class APIError(Exception): """Raised when an API call fails"""
+
+ +
+ +

Raised when an API call fails

+
+ + +
+
Inherited Members
+
+
builtins.Exception
+
Exception
+ +
+
builtins.BaseException
+
with_traceback
+
args
+ +
+
+
+
+
+
+ #   + + + class + PipedClient: +
+ +
+ View Source +
class PipedClient:
+    """
+        An API client for [Piped](https://piped.kavin.rocks).
+
+        See also [Piped API docs](https://piped-docs.kavin.rocks/docs)
+    """
+
+    def __init__(self, base_api_url: str='https://pipedapi.kavin.rocks', session: t.Type[Session]=Session()) -> None:
+        """
+            ### Parameters:
+            - `base_api_url` - The base URL to the instance's API. Trailing slashes will be stripped.
+            - `session` - A class/subclass of `requests.Session` to use for all requests.
+                For example, you could use [requests-cache](https://pypi.org/project/requests-cache/) to make all requests cacheable.
+        """
+
+        self.base_api_url = base_api_url.strip("/")
+        self.session =  session
+
+
+
+    def _get_json(self, uri: str, as_model: t.Optional[_MDL]=None, **kwargs) -> t.Union[_MDL, t.Dict[str, t.Any], t.List[t.Any]]:
+        """
+            Obtains JSON data from specific URI of the Piped API.
+
+            ### Parameters:
+            - `uri` - The URI to get JSON data from
+            - `as_model` - The `BasePipedModel` to load the JSON data into. If this is `None`, the JSON data is returned as a `dict`.
+            - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get`
+        """
+
+        json: t.Union[dict, list] = self.session.get(f"{self.base_api_url}{uri}", **kwargs).json()
+
+        if isinstance(json, dict) and json.get('error', None) is not None:
+            raise APIError(f"Error: {json['error']}")
+
+        if as_model is not None:
+            return as_model(json)
+
+        return json
+
+
+    def get_video(self, video_id: str, **kwargs) -> Video:
+        """
+            Gets information about a specific video.
+
+            ### Parameters:
+            - `video_id` - The ID of the video to get information for
+            - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get`
+
+            [Piped Documentation](https://piped-docs.kavin.rocks/docs/api-documentation/#streamsvideoid)
+        """
+
+        return self._get_json(f"/streams/{video_id}", Video, **kwargs)
+
+
+    def get_comments(self, video_id: str, nextpage: t.Optional[t.Dict[str, t.Optional[str]]]=None, **kwargs) -> Comments:
+        """
+            Gets a list of comments for a specific video.
+
+            ### Parameters:
+            - `video_id` - The ID of the video to get comments for
+            - `nextpage` - Nextpage data, obtained from `.models.comments.Comments.nextpage` property. If this is `None`, the first page of comments is returned.
+                There are often 20 comments per page.
+            - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get`
+
+            [Piped Documentation](https://piped-docs.kavin.rocks/docs/api-documentation/#commentsvideoid)
+        """
+
+        if nextpage is not None:
+            kwargs.update({'params': {'nextpage': nextpage}})
+            return self._get_json(f"/nextpage/comments/{video_id}", Comments, **kwargs)
+
+        return self._get_json(f"/comments/{video_id}", Comments, **kwargs)
+
+
+    def get_trending(self, country_code: str='US', **kwargs) -> t.List[Video.RelatedStream]:
+        """
+            Obtains trending videos for a specific country. If there are no trending videos (or `country_code` is invalid),
+            an empty list is returned.
+
+            ### Parameters:
+            - `country_code` - The country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements)) to get trending videos for. This is automatically capitalized by this package,
+                since Piped for some reason doesn't accept lowercase country codes. Note: countries such as China or North Korea don't have trending videos, so they will always return an empty list.
+            - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get`
+
+            [Piped Documentation](https://piped-docs.kavin.rocks/docs/api-documentation/#trending)
+        """
+
+        kwargs.update({'params': {'region': country_code.upper()}})
+
+        return [Video.RelatedStream(trending_video) for trending_video in self._get_json(f"/trending", **kwargs)]
+
+
+    def get_channel_by_id(self, channel_id: str, nextpage: t.Optional[t.Dict[str, t.Optional[str]]]=None, **kwargs) -> t.Union[NextPageChannel, Channel]:
+        """
+            Gets information about a specific channel by its ID.
+
+            ### Parameters:
+            - `channel_id` - The ID of the channel to get information for
+            - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get`
+
+            [Piped Documentation](https://piped-docs.kavin.rocks/docs/api-documentation/#channelchannelid)
+        """
+
+        if nextpage is not None:
+            kwargs.update({'params': {'nextpage': nextpage}})
+            return self._get_json(f"/nextpage/channel/{channel_id}", NextPageChannel, **kwargs)
+
+        return self._get_json(f"/channel/{channel_id}", Channel, **kwargs)
+
+
+
+    def get_channel_by_name(self, channel_name: str, **kwargs) -> Channel:
+        """
+            Gets information about a specific channel by its name.
+
+            ### Parameters:
+            - `channel_name` - The name of the channel to get information for
+            - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get`
+
+            [Piped Documentation](https://piped-docs.kavin.rocks/docs/api-documentation/#cname)
+        """
+
+        return self._get_json(f"/c/{channel_name}", Channel, **kwargs)
+
+
+    def get_search_suggestions(self, search_query: str, **kwargs) -> t.List[str]:
+        """
+            Obtains search suggestions for a query.
+
+            ### Parameters:
+            - `search_query` - The query to get search suggestions for
+            - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get`
+
+            [Piped Documentation](https://piped-docs.kavin.rocks/docs/api-documentation/#suggestions)
+        """
+
+        kwargs.update({'params': {'query': search_query}})
+
+        return self._get_json(f"/suggestions", **kwargs)
+
+ +
+ +

An API client for Piped.

+ +

See also Piped API docs

+
+ + +
+
#   + + + PipedClient( + base_api_url: str = 'https://pipedapi.kavin.rocks', + session: Type[requests.sessions.Session] = <requests.sessions.Session object> +) +
+ +
+ View Source +
    def __init__(self, base_api_url: str='https://pipedapi.kavin.rocks', session: t.Type[Session]=Session()) -> None:
+        """
+            ### Parameters:
+            - `base_api_url` - The base URL to the instance's API. Trailing slashes will be stripped.
+            - `session` - A class/subclass of `requests.Session` to use for all requests.
+                For example, you could use [requests-cache](https://pypi.org/project/requests-cache/) to make all requests cacheable.
+        """
+
+        self.base_api_url = base_api_url.strip("/")
+        self.session =  session
+
+ +
+ +

Parameters:

+ +
    +
  • base_api_url - The base URL to the instance's API. Trailing slashes will be stripped.
  • +
  • session - A class/subclass of requests.Session to use for all requests. +For example, you could use requests-cache to make all requests cacheable.
  • +
+
+ + +
+
+
#   + + + def + get_video(self, video_id: str, **kwargs) -> piped_api.models.videos.Video: +
+ +
+ View Source +
    def get_video(self, video_id: str, **kwargs) -> Video:
+        """
+            Gets information about a specific video.
+
+            ### Parameters:
+            - `video_id` - The ID of the video to get information for
+            - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get`
+
+            [Piped Documentation](https://piped-docs.kavin.rocks/docs/api-documentation/#streamsvideoid)
+        """
+
+        return self._get_json(f"/streams/{video_id}", Video, **kwargs)
+
+ +
+ +

Gets information about a specific video.

+ +

Parameters:

+ +
    +
  • video_id - The ID of the video to get information for
  • +
  • **kwargs - Additional keyword arguments to pass to requests.Session.get
  • +
+ +

Piped Documentation

+
+ + +
+
+
#   + + + def + get_comments( + self, + video_id: str, + nextpage: Optional[Dict[str, Optional[str]]] = None, + **kwargs +) -> piped_api.models.comments.Comments: +
+ +
+ View Source +
    def get_comments(self, video_id: str, nextpage: t.Optional[t.Dict[str, t.Optional[str]]]=None, **kwargs) -> Comments:
+        """
+            Gets a list of comments for a specific video.
+
+            ### Parameters:
+            - `video_id` - The ID of the video to get comments for
+            - `nextpage` - Nextpage data, obtained from `.models.comments.Comments.nextpage` property. If this is `None`, the first page of comments is returned.
+                There are often 20 comments per page.
+            - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get`
+
+            [Piped Documentation](https://piped-docs.kavin.rocks/docs/api-documentation/#commentsvideoid)
+        """
+
+        if nextpage is not None:
+            kwargs.update({'params': {'nextpage': nextpage}})
+            return self._get_json(f"/nextpage/comments/{video_id}", Comments, **kwargs)
+
+        return self._get_json(f"/comments/{video_id}", Comments, **kwargs)
+
+ +
+ +

Gets a list of comments for a specific video.

+ +

Parameters:

+ +
    +
  • video_id - The ID of the video to get comments for
  • +
  • nextpage - Nextpage data, obtained from .models.comments.Comments.nextpage property. If this is None, the first page of comments is returned. +There are often 20 comments per page.
  • +
  • **kwargs - Additional keyword arguments to pass to requests.Session.get
  • +
+ +

Piped Documentation

+
+ + +
+ +
+
#   + + + def + get_channel_by_id( + self, + channel_id: str, + nextpage: Optional[Dict[str, Optional[str]]] = None, + **kwargs +) -> Union[piped_api.models.channels.NextPageChannel, piped_api.models.channels.Channel]: +
+ +
+ View Source +
    def get_channel_by_id(self, channel_id: str, nextpage: t.Optional[t.Dict[str, t.Optional[str]]]=None, **kwargs) -> t.Union[NextPageChannel, Channel]:
+        """
+            Gets information about a specific channel by its ID.
+
+            ### Parameters:
+            - `channel_id` - The ID of the channel to get information for
+            - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get`
+
+            [Piped Documentation](https://piped-docs.kavin.rocks/docs/api-documentation/#channelchannelid)
+        """
+
+        if nextpage is not None:
+            kwargs.update({'params': {'nextpage': nextpage}})
+            return self._get_json(f"/nextpage/channel/{channel_id}", NextPageChannel, **kwargs)
+
+        return self._get_json(f"/channel/{channel_id}", Channel, **kwargs)
+
+ +
+ +

Gets information about a specific channel by its ID.

+ +

Parameters:

+ +
    +
  • channel_id - The ID of the channel to get information for
  • +
  • **kwargs - Additional keyword arguments to pass to requests.Session.get
  • +
+ +

Piped Documentation

+
+ + +
+
+
#   + + + def + get_channel_by_name( + self, + channel_name: str, + **kwargs +) -> piped_api.models.channels.Channel: +
+ +
+ View Source +
    def get_channel_by_name(self, channel_name: str, **kwargs) -> Channel:
+        """
+            Gets information about a specific channel by its name.
+
+            ### Parameters:
+            - `channel_name` - The name of the channel to get information for
+            - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get`
+
+            [Piped Documentation](https://piped-docs.kavin.rocks/docs/api-documentation/#cname)
+        """
+
+        return self._get_json(f"/c/{channel_name}", Channel, **kwargs)
+
+ +
+ +

Gets information about a specific channel by its name.

+ +

Parameters:

+ +
    +
  • channel_name - The name of the channel to get information for
  • +
  • **kwargs - Additional keyword arguments to pass to requests.Session.get
  • +
+ +

Piped Documentation

+
+ + +
+
+
#   + + + def + get_search_suggestions(self, search_query: str, **kwargs) -> List[str]: +
+ +
+ View Source +
    def get_search_suggestions(self, search_query: str, **kwargs) -> t.List[str]:
+        """
+            Obtains search suggestions for a query.
+
+            ### Parameters:
+            - `search_query` - The query to get search suggestions for
+            - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get`
+
+            [Piped Documentation](https://piped-docs.kavin.rocks/docs/api-documentation/#suggestions)
+        """
+
+        kwargs.update({'params': {'query': search_query}})
+
+        return self._get_json(f"/suggestions", **kwargs)
+
+ +
+ +

Obtains search suggestions for a query.

+ +

Parameters:

+ +
    +
  • search_query - The query to get search suggestions for
  • +
  • **kwargs - Additional keyword arguments to pass to requests.Session.get
  • +
+ +

Piped Documentation

+
+ + +
+
+
+ + \ No newline at end of file diff --git a/piped_api/client.py b/piped_api/client.py deleted file mode 100644 index 4f4a242..0000000 --- a/piped_api/client.py +++ /dev/null @@ -1,170 +0,0 @@ -import typing as t - -from requests import Session - -from .models import BasePipedModel -from .models.comments import Comments -from .models.videos import Video -from .models.channels import NextPageChannel, Channel - - -_MDL = t.TypeVar('_MDL', bound=t.Type[BasePipedModel]) - - -class APIError(Exception): """Raised when an API call fails""" - - - -class PipedClient: - """ - An API client for [Piped](https://piped.kavin.rocks). - - See also [Piped API docs](https://piped-docs.kavin.rocks/docs) - """ - - def __init__(self, base_api_url: str='https://pipedapi.kavin.rocks', session: t.Type[Session]=Session()) -> None: - """ - ### Parameters: - - `base_api_url` - The base URL to the instance's API. Trailing slashes will be stripped. - - `session` - A class/subclass of `requests.Session` to use for all requests. - For example, you could use [requests-cache](https://pypi.org/project/requests-cache/) to make all requests cacheable. - """ - - self.base_api_url = base_api_url.strip("/") - self.session = session - - - - def _get_json(self, uri: str, as_model: t.Optional[_MDL]=None, **kwargs) -> t.Union[_MDL, t.Dict[str, t.Any], t.List[t.Any]]: - """ - Obtains JSON data from specific URI of the Piped API. - - ### Parameters: - - `uri` - The URI to get JSON data from - - `as_model` - The `BasePipedModel` to load the JSON data into. If this is `None`, the JSON data is returned as a `dict`. - - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get` - """ - - json: t.Union[dict, list] = self.session.get(f"{self.base_api_url}{uri}", **kwargs).json() - - if isinstance(json, dict) and json.get('error', None) is not None: - raise APIError(f"Error: {json['error']}") - - if as_model is not None: - return as_model(json) - - return json - - - def get_video(self, video_id: str, **kwargs) -> Video: - """ - Gets information about a specific video. - - ### Parameters: - - `video_id` - The ID of the video to get information for - - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get` - - [Piped Documentation](https://piped-docs.kavin.rocks/docs/api-documentation/#streamsvideoid) - """ - - return self._get_json(f"/streams/{video_id}", Video, **kwargs) - - - def get_comments(self, video_id: str, nextpage: t.Optional[t.Dict[str, t.Optional[str]]]=None, **kwargs) -> Comments: - """ - Gets a list of comments for a specific video. - - ### Parameters: - - `video_id` - The ID of the video to get comments for - - `nextpage` - Nextpage data, obtained from `.models.comments.Comments.nextpage` property. If this is `None`, the first page of comments is returned. - There are often 20 comments per page. - - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get` - - [Piped Documentation](https://piped-docs.kavin.rocks/docs/api-documentation/#commentsvideoid) - """ - - if nextpage is not None: - kwargs.update({'params': {'nextpage': nextpage}}) - return self._get_json(f"/nextpage/comments/{video_id}", Comments, **kwargs) - - return self._get_json(f"/comments/{video_id}", Comments, **kwargs) - - - def get_trending(self, country_code: str='US', **kwargs) -> t.List[Video.RelatedStream]: - """ - Obtains trending videos for a specific country. If there are no trending videos (or `country_code` is invalid), - an empty list is returned. - - ### Parameters: - - `country_code` - The country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements)) to get trending videos for. This is automatically capitalized by this package, - since Piped for some reason doesn't accept lowercase country codes. Note: countries such as China or North Korea don't have trending videos, so they will always return an empty list. - - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get` - - [Piped Documentation](https://piped-docs.kavin.rocks/docs/api-documentation/#trending) - """ - - kwargs.update({'params': {'region': country_code.upper()}}) - - return [Video.RelatedStream(trending_video) for trending_video in self._get_json(f"/trending", **kwargs)] - - - def get_channel_by_id(self, channel_id: str, nextpage: t.Optional[t.Dict[str, t.Optional[str]]]=None, **kwargs) -> t.Union[NextPageChannel, Channel]: - """ - Gets information about a specific channel by its ID. - - ### Parameters: - - `channel_id` - The ID of the channel to get information for - - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get` - - [Piped Documentation](https://piped-docs.kavin.rocks/docs/api-documentation/#channelchannelid) - """ - - if nextpage is not None: - kwargs.update({'params': {'nextpage': nextpage}}) - return self._get_json(f"/nextpage/channel/{channel_id}", NextPageChannel, **kwargs) - - return self._get_json(f"/channel/{channel_id}", Channel, **kwargs) - - - - def get_channel_by_name(self, channel_name: str, **kwargs) -> Channel: - """ - Gets information about a specific channel by its name. - - ### Parameters: - - `channel_name` - The name of the channel to get information for - - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get` - - [Piped Documentation](https://piped-docs.kavin.rocks/docs/api-documentation/#cname) - """ - - return self._get_json(f"/c/{channel_name}", Channel, **kwargs) - - - def get_search_suggestions(self, search_query: str, **kwargs) -> t.List[str]: - """ - Obtains search suggestions for a query. - - ### Parameters: - - `search_query` - The query to get search suggestions for - - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get` - - [Piped Documentation](https://piped-docs.kavin.rocks/docs/api-documentation/#suggestions) - """ - - kwargs.update({'params': {'query': search_query}}) - - return self._get_json(f"/suggestions", **kwargs) - - def get_search_results(self, search_query: str, filter: str="all", **kwargs) -> t.List[str]: - """ - Obtains search results for a query. - - ### Parameters: - - `search_query` - The query to get search results for - - `**kwargs` - Additional keyword arguments to pass to `requests.Session.get` - """ - - kwargs.update({'params': {'q': search_query, 'filter': filter}}) - - return self._get_json(f"/search", **kwargs) \ No newline at end of file diff --git a/piped_api/models.html b/piped_api/models.html new file mode 100644 index 0000000..d66027c --- /dev/null +++ b/piped_api/models.html @@ -0,0 +1,327 @@ + + + + + + + piped_api.models API documentation + + + + + + + + + +
+
+

+piped_api.models

+ + +
+ View Source +
import typing as t
+
+
+class BasePipedModel:
+    """
+        Base class for all Piped models.
+    """
+
+    def __init__(self, data: t.Dict[str, t.Any]) -> None:
+        """
+            ### Parameters:
+            - `data` - The JSON (`dict`) data to initialize the model with.
+        """
+
+        self.data = data
+
+ +
+ +
+
+
+ #   + + + class + BasePipedModel: +
+ +
+ View Source +
class BasePipedModel:
+    """
+        Base class for all Piped models.
+    """
+
+    def __init__(self, data: t.Dict[str, t.Any]) -> None:
+        """
+            ### Parameters:
+            - `data` - The JSON (`dict`) data to initialize the model with.
+        """
+
+        self.data = data
+
+ +
+ +

Base class for all Piped models.

+
+ + +
+
#   + + + BasePipedModel(data: Dict[str, Any]) +
+ +
+ View Source +
    def __init__(self, data: t.Dict[str, t.Any]) -> None:
+        """
+            ### Parameters:
+            - `data` - The JSON (`dict`) data to initialize the model with.
+        """
+
+        self.data = data
+
+ +
+ +

Parameters:

+ +
    +
  • data - The JSON (dict) data to initialize the model with.
  • +
+
+ + +
+
+
+ + \ No newline at end of file diff --git a/piped_api/models/__init__.py b/piped_api/models/__init__.py deleted file mode 100644 index 8f4dfe3..0000000 --- a/piped_api/models/__init__.py +++ /dev/null @@ -1,15 +0,0 @@ -import typing as t - - -class BasePipedModel: - """ - Base class for all Piped models. - """ - - def __init__(self, data: t.Dict[str, t.Any]) -> None: - """ - ### Parameters: - - `data` - The JSON (`dict`) data to initialize the model with. - """ - - self.data = data diff --git a/piped_api/models/channels.html b/piped_api/models/channels.html new file mode 100644 index 0000000..6e4b134 --- /dev/null +++ b/piped_api/models/channels.html @@ -0,0 +1,651 @@ + + + + + + + piped_api.models.channels API documentation + + + + + + + + + +
+
+

+piped_api.models.channels

+ + +
+ View Source +
import typing as t
+
+from . import BasePipedModel
+from .videos import Video
+
+
+
+class NextPageChannel(BasePipedModel):
+    """
+        Represents a channel obtained via the `nextpage` endpoint.
+
+        This model contains only `nextpage` and `relatedStreams`. It's a parent for `Channel`.
+    """
+
+    @property
+    def nextpage(self) -> str:
+        """
+            A JSON encoded string to be passed to the `'nextpage'` endpoint(s) when
+            obtaining paginated data.
+        """
+
+        return self.data['nextpage']
+
+
+    @property
+    def uploaded_videos(self) -> t.List[Video.RelatedStream]:
+        """
+            List of uploaded videos from the current fetched data
+
+            There are max. 30 videos per page
+        """
+
+        return [Video.RelatedStream(video_data) for video_data in self.data['relatedStreams']]
+
+
+
+class Channel(NextPageChannel):
+    """
+        Represents a YouTube channel.
+
+        Contains properties of `NextPageChannel`.
+    """
+
+    @property
+    def id(self) -> str:
+        """
+            The channel's ID
+        """
+
+        return self.data['id']
+
+
+    @property
+    def name(self) -> str:
+        """
+            The channel's name
+        """
+
+        return self.data['name']
+
+
+    @property
+    def avatar_url(self) -> str:
+        """
+            The channel's avatar URL
+        """
+
+        return self.data['avatarUrl']
+
+
+    @property
+    def banner_url(self) -> str:
+        """
+            The channel's banner URL
+        """
+
+        return self.data['bannerUrl']
+
+
+    @property
+    def description(self) -> str:
+        """
+            The channel's description
+        """
+
+        return self.data['description']
+
+
+    @property
+    def subscriber_count(self) -> int:
+        """
+            The number of subscribers the channel has
+        """
+
+        return self.data['subscriberCount']
+
+
+    @property
+    def verified(self) -> bool:
+        """
+            Whether or not the channel is verified by YouTube (has a badge)
+        """
+
+        return self.data['verified']
+
+ +
+ +
+
+
+ #   + + + class + NextPageChannel(piped_api.models.BasePipedModel): +
+ +
+ View Source +
class NextPageChannel(BasePipedModel):
+    """
+        Represents a channel obtained via the `nextpage` endpoint.
+
+        This model contains only `nextpage` and `relatedStreams`. It's a parent for `Channel`.
+    """
+
+    @property
+    def nextpage(self) -> str:
+        """
+            A JSON encoded string to be passed to the `'nextpage'` endpoint(s) when
+            obtaining paginated data.
+        """
+
+        return self.data['nextpage']
+
+
+    @property
+    def uploaded_videos(self) -> t.List[Video.RelatedStream]:
+        """
+            List of uploaded videos from the current fetched data
+
+            There are max. 30 videos per page
+        """
+
+        return [Video.RelatedStream(video_data) for video_data in self.data['relatedStreams']]
+
+ +
+ +

Represents a channel obtained via the nextpage endpoint.

+ +

This model contains only nextpage and relatedStreams. It's a parent for Channel.

+
+ + +
+
#   + + nextpage: str +
+ + +

A JSON encoded string to be passed to the 'nextpage' endpoint(s) when +obtaining paginated data.

+
+ + +
+
+ + + +

List of uploaded videos from the current fetched data

+ +

There are max. 30 videos per page

+
+ + +
+
+
Inherited Members
+
+
piped_api.models.BasePipedModel
+
BasePipedModel
+ +
+
+
+
+
+
+ #   + + + class + Channel(NextPageChannel): +
+ +
+ View Source +
class Channel(NextPageChannel):
+    """
+        Represents a YouTube channel.
+
+        Contains properties of `NextPageChannel`.
+    """
+
+    @property
+    def id(self) -> str:
+        """
+            The channel's ID
+        """
+
+        return self.data['id']
+
+
+    @property
+    def name(self) -> str:
+        """
+            The channel's name
+        """
+
+        return self.data['name']
+
+
+    @property
+    def avatar_url(self) -> str:
+        """
+            The channel's avatar URL
+        """
+
+        return self.data['avatarUrl']
+
+
+    @property
+    def banner_url(self) -> str:
+        """
+            The channel's banner URL
+        """
+
+        return self.data['bannerUrl']
+
+
+    @property
+    def description(self) -> str:
+        """
+            The channel's description
+        """
+
+        return self.data['description']
+
+
+    @property
+    def subscriber_count(self) -> int:
+        """
+            The number of subscribers the channel has
+        """
+
+        return self.data['subscriberCount']
+
+
+    @property
+    def verified(self) -> bool:
+        """
+            Whether or not the channel is verified by YouTube (has a badge)
+        """
+
+        return self.data['verified']
+
+ +
+ +

Represents a YouTube channel.

+ +

Contains properties of NextPageChannel.

+
+ + +
+
#   + + id: str +
+ + +

The channel's ID

+
+ + +
+
+
#   + + name: str +
+ + +

The channel's name

+
+ + +
+
+
#   + + avatar_url: str +
+ + +

The channel's avatar URL

+
+ + +
+
+
#   + + banner_url: str +
+ + +

The channel's banner URL

+
+ + +
+
+
#   + + description: str +
+ + +

The channel's description

+
+ + +
+
+
#   + + subscriber_count: int +
+ + +

The number of subscribers the channel has

+
+ + +
+
+
#   + + verified: bool +
+ + +

Whether or not the channel is verified by YouTube (has a badge)

+
+ + +
+ +
+
+ + \ No newline at end of file diff --git a/piped_api/models/channels.py b/piped_api/models/channels.py deleted file mode 100644 index 9f38148..0000000 --- a/piped_api/models/channels.py +++ /dev/null @@ -1,104 +0,0 @@ -import typing as t - -from . import BasePipedModel -from .videos import Video - - - -class NextPageChannel(BasePipedModel): - """ - Represents a channel obtained via the `nextpage` endpoint. - - This model contains only `nextpage` and `relatedStreams`. It's a parent for `Channel`. - """ - - @property - def nextpage(self) -> str: - """ - A JSON encoded string to be passed to the `'nextpage'` endpoint(s) when - obtaining paginated data. - """ - - return self.data['nextpage'] - - - @property - def uploaded_videos(self) -> t.List[Video.RelatedStream]: - """ - List of uploaded videos from the current fetched data - - There are max. 30 videos per page - """ - - return [Video.RelatedStream(video_data) for video_data in self.data['relatedStreams']] - - - -class Channel(NextPageChannel): - """ - Represents a YouTube channel. - - Contains properties of `NextPageChannel`. - """ - - @property - def id(self) -> str: - """ - The channel's ID - """ - - return self.data['id'] - - - @property - def name(self) -> str: - """ - The channel's name - """ - - return self.data['name'] - - - @property - def avatar_url(self) -> str: - """ - The channel's avatar URL - """ - - return self.data['avatarUrl'] - - - @property - def banner_url(self) -> str: - """ - The channel's banner URL - """ - - return self.data['bannerUrl'] - - - @property - def description(self) -> str: - """ - The channel's description - """ - - return self.data['description'] - - - @property - def subscriber_count(self) -> int: - """ - The number of subscribers the channel has - """ - - return self.data['subscriberCount'] - - - @property - def verified(self) -> bool: - """ - Whether or not the channel is verified by YouTube (has a badge) - """ - - return self.data['verified'] diff --git a/piped_api/models/comments.html b/piped_api/models/comments.html new file mode 100644 index 0000000..c1aa063 --- /dev/null +++ b/piped_api/models/comments.html @@ -0,0 +1,1002 @@ + + + + + + + piped_api.models.comments API documentation + + + + + + + + + +
+
+

+piped_api.models.comments

+ + +
+ View Source +
import typing as t
+
+from . import BasePipedModel
+
+
+class Comments(BasePipedModel):
+    class Comment(BasePipedModel):
+        @property
+        def author(self) -> str:
+            """
+                The name of the author of the comment
+            """
+
+            return self.data['author']
+
+
+        @property
+        def comment_id(self) -> str:
+            """
+                The comment ID
+            """
+
+            return self.data['commentId']
+
+
+        @property
+        def comment_text(self) -> str:
+            """
+                The text of the comment
+            """
+
+            return self.data['commentText']
+
+
+        @property
+        def commented_time(self) -> str:
+            """
+                The time the comment was made (format: `'x y ago'`).
+
+                ### Note:
+                The raw time from API also includes the `'(edited)'` suffix to mark comment as edited (if it was).
+                By accessing this property, the suffix is automatically removed.
+                If you for whatever reason want to keep the suffix, access this property directly via `Comment.data['commentedTime']`
+            """
+
+            time: str = self.data['commentedTime']
+
+            return time.removesuffix(' (edited)')
+
+
+        @property
+        def is_edited(self) -> bool:
+            """
+                Whether or not the comment is edited.
+
+                ### Note:
+                This property checks whether there is `'(edited)'` in the `commentedTime` property, because that's where you get that from.
+                See `Comments.Comment.commented_time`
+            """
+
+            time: str = self.data['commentedTime']
+
+            return time.endswith('(edited)')
+
+
+        @property
+        def commentor_url(self) -> str:
+            """
+                The URL of the channel that made the comment
+            """
+
+            return self.data['commentorUrl']
+
+
+        @property
+        def replies_page(self) -> t.Optional[str]:
+            """
+                Same as `Comments.nextpage`, but to load replies.
+
+                `None` means that there are no replies.
+            """
+
+            return self.data['repliesPage']
+
+
+        @property
+        def hearted(self) -> bool:
+            """
+                Whether or not the comment has been hearted
+            """
+
+            return self.data['hearted']
+
+
+        @property
+        def like_count(self) -> int:
+            """
+                The number of likes the comment has
+            """
+
+            return self.data['likeCount']
+
+
+        @property
+        def pinned(self) -> bool:
+            """
+                Whether or not the comment is pinned
+            """
+
+            return self.data['pinned']
+
+
+        @property
+        def thumbnail(self) -> str:
+            """
+                The thumbnail of the commentor's channel
+            """
+
+            return self.data['thumbnail']
+
+
+        @property
+        def verified(self) -> bool:
+            """
+                Whether or not the author of the comment is verified
+            """
+
+            return self.data['verified']
+
+
+
+    def get_comments(self) -> t.List[Comment]:
+        """
+            Obtain a list of comments
+        """
+
+        return [self.Comment(comment_json) for comment_json in self.data['comments']]
+
+
+    def __iter__(self) -> t.Iterator[Comment]:
+        iter(self.get_comments())
+
+
+
+    @property
+    def disabled(self) -> bool:
+        """
+            Whether or not the comments are disabled
+        """
+
+        return self.data['disabled']
+
+
+
+    @property
+    def nextpage(self) -> t.Optional[str]:
+        """
+            A JSON encoded page, which is used for the nextpage endpoint.
+
+            If there is no nextpage data, this returns `None`.
+        """
+
+        return self.data['nextpage']
+
+ +
+ +
+
+
+ #   + + + class + Comments(piped_api.models.BasePipedModel): +
+ +
+ View Source +
class Comments(BasePipedModel):
+    class Comment(BasePipedModel):
+        @property
+        def author(self) -> str:
+            """
+                The name of the author of the comment
+            """
+
+            return self.data['author']
+
+
+        @property
+        def comment_id(self) -> str:
+            """
+                The comment ID
+            """
+
+            return self.data['commentId']
+
+
+        @property
+        def comment_text(self) -> str:
+            """
+                The text of the comment
+            """
+
+            return self.data['commentText']
+
+
+        @property
+        def commented_time(self) -> str:
+            """
+                The time the comment was made (format: `'x y ago'`).
+
+                ### Note:
+                The raw time from API also includes the `'(edited)'` suffix to mark comment as edited (if it was).
+                By accessing this property, the suffix is automatically removed.
+                If you for whatever reason want to keep the suffix, access this property directly via `Comment.data['commentedTime']`
+            """
+
+            time: str = self.data['commentedTime']
+
+            return time.removesuffix(' (edited)')
+
+
+        @property
+        def is_edited(self) -> bool:
+            """
+                Whether or not the comment is edited.
+
+                ### Note:
+                This property checks whether there is `'(edited)'` in the `commentedTime` property, because that's where you get that from.
+                See `Comments.Comment.commented_time`
+            """
+
+            time: str = self.data['commentedTime']
+
+            return time.endswith('(edited)')
+
+
+        @property
+        def commentor_url(self) -> str:
+            """
+                The URL of the channel that made the comment
+            """
+
+            return self.data['commentorUrl']
+
+
+        @property
+        def replies_page(self) -> t.Optional[str]:
+            """
+                Same as `Comments.nextpage`, but to load replies.
+
+                `None` means that there are no replies.
+            """
+
+            return self.data['repliesPage']
+
+
+        @property
+        def hearted(self) -> bool:
+            """
+                Whether or not the comment has been hearted
+            """
+
+            return self.data['hearted']
+
+
+        @property
+        def like_count(self) -> int:
+            """
+                The number of likes the comment has
+            """
+
+            return self.data['likeCount']
+
+
+        @property
+        def pinned(self) -> bool:
+            """
+                Whether or not the comment is pinned
+            """
+
+            return self.data['pinned']
+
+
+        @property
+        def thumbnail(self) -> str:
+            """
+                The thumbnail of the commentor's channel
+            """
+
+            return self.data['thumbnail']
+
+
+        @property
+        def verified(self) -> bool:
+            """
+                Whether or not the author of the comment is verified
+            """
+
+            return self.data['verified']
+
+
+
+    def get_comments(self) -> t.List[Comment]:
+        """
+            Obtain a list of comments
+        """
+
+        return [self.Comment(comment_json) for comment_json in self.data['comments']]
+
+
+    def __iter__(self) -> t.Iterator[Comment]:
+        iter(self.get_comments())
+
+
+
+    @property
+    def disabled(self) -> bool:
+        """
+            Whether or not the comments are disabled
+        """
+
+        return self.data['disabled']
+
+
+
+    @property
+    def nextpage(self) -> t.Optional[str]:
+        """
+            A JSON encoded page, which is used for the nextpage endpoint.
+
+            If there is no nextpage data, this returns `None`.
+        """
+
+        return self.data['nextpage']
+
+ +
+ +

Base class for all Piped models.

+
+ + +
+
#   + + + def + get_comments(self) -> List[piped_api.models.comments.Comments.Comment]: +
+ +
+ View Source +
    def get_comments(self) -> t.List[Comment]:
+        """
+            Obtain a list of comments
+        """
+
+        return [self.Comment(comment_json) for comment_json in self.data['comments']]
+
+ +
+ +

Obtain a list of comments

+
+ + +
+
+
#   + + disabled: bool +
+ + +

Whether or not the comments are disabled

+
+ + +
+
+
#   + + nextpage: Optional[str] +
+ + +

A JSON encoded page, which is used for the nextpage endpoint.

+ +

If there is no nextpage data, this returns None.

+
+ + +
+
+
Inherited Members
+
+
piped_api.models.BasePipedModel
+
BasePipedModel
+ +
+
+
+
+
+
+ #   + + + class + Comments.Comment(piped_api.models.BasePipedModel): +
+ +
+ View Source +
    class Comment(BasePipedModel):
+        @property
+        def author(self) -> str:
+            """
+                The name of the author of the comment
+            """
+
+            return self.data['author']
+
+
+        @property
+        def comment_id(self) -> str:
+            """
+                The comment ID
+            """
+
+            return self.data['commentId']
+
+
+        @property
+        def comment_text(self) -> str:
+            """
+                The text of the comment
+            """
+
+            return self.data['commentText']
+
+
+        @property
+        def commented_time(self) -> str:
+            """
+                The time the comment was made (format: `'x y ago'`).
+
+                ### Note:
+                The raw time from API also includes the `'(edited)'` suffix to mark comment as edited (if it was).
+                By accessing this property, the suffix is automatically removed.
+                If you for whatever reason want to keep the suffix, access this property directly via `Comment.data['commentedTime']`
+            """
+
+            time: str = self.data['commentedTime']
+
+            return time.removesuffix(' (edited)')
+
+
+        @property
+        def is_edited(self) -> bool:
+            """
+                Whether or not the comment is edited.
+
+                ### Note:
+                This property checks whether there is `'(edited)'` in the `commentedTime` property, because that's where you get that from.
+                See `Comments.Comment.commented_time`
+            """
+
+            time: str = self.data['commentedTime']
+
+            return time.endswith('(edited)')
+
+
+        @property
+        def commentor_url(self) -> str:
+            """
+                The URL of the channel that made the comment
+            """
+
+            return self.data['commentorUrl']
+
+
+        @property
+        def replies_page(self) -> t.Optional[str]:
+            """
+                Same as `Comments.nextpage`, but to load replies.
+
+                `None` means that there are no replies.
+            """
+
+            return self.data['repliesPage']
+
+
+        @property
+        def hearted(self) -> bool:
+            """
+                Whether or not the comment has been hearted
+            """
+
+            return self.data['hearted']
+
+
+        @property
+        def like_count(self) -> int:
+            """
+                The number of likes the comment has
+            """
+
+            return self.data['likeCount']
+
+
+        @property
+        def pinned(self) -> bool:
+            """
+                Whether or not the comment is pinned
+            """
+
+            return self.data['pinned']
+
+
+        @property
+        def thumbnail(self) -> str:
+            """
+                The thumbnail of the commentor's channel
+            """
+
+            return self.data['thumbnail']
+
+
+        @property
+        def verified(self) -> bool:
+            """
+                Whether or not the author of the comment is verified
+            """
+
+            return self.data['verified']
+
+ +
+ +

Base class for all Piped models.

+
+ + +
+
#   + + author: str +
+ + +

The name of the author of the comment

+
+ + +
+
+
#   + + comment_id: str +
+ + +

The comment ID

+
+ + +
+
+
#   + + comment_text: str +
+ + +

The text of the comment

+
+ + +
+
+
#   + + commented_time: str +
+ + +

The time the comment was made (format: 'x y ago').

+ +

Note:

+ +

The raw time from API also includes the '(edited)' suffix to mark comment as edited (if it was). +By accessing this property, the suffix is automatically removed. +If you for whatever reason want to keep the suffix, access this property directly via Comment.data['commentedTime']

+
+ + +
+
+
#   + + is_edited: bool +
+ + +

Whether or not the comment is edited.

+ +

Note:

+ +

This property checks whether there is '(edited)' in the commentedTime property, because that's where you get that from. +See Comments.Comment.commented_time

+
+ + +
+
+
#   + + commentor_url: str +
+ + +

The URL of the channel that made the comment

+
+ + +
+
+
#   + + replies_page: Optional[str] +
+ + +

Same as Comments.nextpage, but to load replies.

+ +

None means that there are no replies.

+
+ + +
+
+
#   + + hearted: bool +
+ + +

Whether or not the comment has been hearted

+
+ + +
+
+
#   + + like_count: int +
+ + +

The number of likes the comment has

+
+ + +
+
+
#   + + pinned: bool +
+ + +

Whether or not the comment is pinned

+
+ + +
+
+
#   + + thumbnail: str +
+ + +

The thumbnail of the commentor's channel

+
+ + +
+
+
#   + + verified: bool +
+ + +

Whether or not the author of the comment is verified

+
+ + +
+
+
Inherited Members
+
+
piped_api.models.BasePipedModel
+
BasePipedModel
+ +
+
+
+
+
+ + \ No newline at end of file diff --git a/piped_api/models/comments.py b/piped_api/models/comments.py deleted file mode 100644 index 72f4812..0000000 --- a/piped_api/models/comments.py +++ /dev/null @@ -1,163 +0,0 @@ -import typing as t - -from . import BasePipedModel - - -class Comments(BasePipedModel): - class Comment(BasePipedModel): - @property - def author(self) -> str: - """ - The name of the author of the comment - """ - - return self.data['author'] - - - @property - def comment_id(self) -> str: - """ - The comment ID - """ - - return self.data['commentId'] - - - @property - def comment_text(self) -> str: - """ - The text of the comment - """ - - return self.data['commentText'] - - - @property - def commented_time(self) -> str: - """ - The time the comment was made (format: `'x y ago'`). - - ### Note: - The raw time from API also includes the `'(edited)'` suffix to mark comment as edited (if it was). - By accessing this property, the suffix is automatically removed. - If you for whatever reason want to keep the suffix, access this property directly via `Comment.data['commentedTime']` - """ - - time: str = self.data['commentedTime'] - - return time.removesuffix(' (edited)') - - - @property - def is_edited(self) -> bool: - """ - Whether or not the comment is edited. - - ### Note: - This property checks whether there is `'(edited)'` in the `commentedTime` property, because that's where you get that from. - See `Comments.Comment.commented_time` - """ - - time: str = self.data['commentedTime'] - - return time.endswith('(edited)') - - - @property - def commentor_url(self) -> str: - """ - The URL of the channel that made the comment - """ - - return self.data['commentorUrl'] - - - @property - def replies_page(self) -> t.Optional[str]: - """ - Same as `Comments.nextpage`, but to load replies. - - `None` means that there are no replies. - """ - - return self.data['repliesPage'] - - - @property - def hearted(self) -> bool: - """ - Whether or not the comment has been hearted - """ - - return self.data['hearted'] - - - @property - def like_count(self) -> int: - """ - The number of likes the comment has - """ - - return self.data['likeCount'] - - - @property - def pinned(self) -> bool: - """ - Whether or not the comment is pinned - """ - - return self.data['pinned'] - - - @property - def thumbnail(self) -> str: - """ - The thumbnail of the commentor's channel - """ - - return self.data['thumbnail'] - - - @property - def verified(self) -> bool: - """ - Whether or not the author of the comment is verified - """ - - return self.data['verified'] - - - - def get_comments(self) -> t.List[Comment]: - """ - Obtain a list of comments - """ - - return [self.Comment(comment_json) for comment_json in self.data['comments']] - - - def __iter__(self) -> t.Iterator[Comment]: - iter(self.get_comments()) - - - - @property - def disabled(self) -> bool: - """ - Whether or not the comments are disabled - """ - - return self.data['disabled'] - - - - @property - def nextpage(self) -> t.Optional[str]: - """ - A JSON encoded page, which is used for the nextpage endpoint. - - If there is no nextpage data, this returns `None`. - """ - - return self.data['nextpage'] diff --git a/piped_api/models/videos.html b/piped_api/models/videos.html new file mode 100644 index 0000000..d18dad6 --- /dev/null +++ b/piped_api/models/videos.html @@ -0,0 +1,2739 @@ + + + + + + + piped_api.models.videos API documentation + + + + + + + + + +
+
+

+piped_api.models.videos

+ + +
+ View Source +
import typing as t
+
+from datetime import datetime, date, timedelta
+
+from . import BasePipedModel
+
+
+class Video(BasePipedModel):
+    @property
+    def title(self) -> str:
+        """
+            The title/name of the video
+        """
+
+        return self.data['title']
+
+
+    @property
+    def description(self) -> str:
+        """
+            The description of the video
+        """
+
+        return self.data['description']
+
+
+    @property
+    def upload_date(self) -> date:
+        """
+            The date the video was uploaded at.
+
+            ### Note:
+            Use `Video.data['uploadDate']` to get the raw string that was obtained from the API - this package
+            automatically converts the raw string to a `datetime.date` object.
+        """
+
+        raw = self.data['uploadDate']
+
+        return datetime.strptime(raw, r"%Y-%m-%d").date()
+
+
+    @property
+    def uploader(self) -> str:
+        """
+            The channel name of the author of the video
+        """
+
+        return self.data['uploader']
+
+
+    @property
+    def uploader_url(self) -> str:
+        """
+            The URI to the author's channel
+        """
+
+        return self.data['uploaderUrl']
+
+
+    @property
+    def uploader_avatar(self) -> str:
+        """
+            The URL to the video author's avatar image
+        """
+
+        return self.data['uploaderAvatar']
+
+
+    @property
+    def thumbnail_url(self) -> str:
+        """
+            The URL to the video's thumbnail image
+        """
+
+        return self.data['thumbnail']
+
+
+    @property
+    def hls(self) -> t.Optional[str]:
+        """
+            The hls manifest URL, to be used for Livestreams
+        """
+
+        return self.data['hls']
+
+
+    @property
+    def dash(self) -> t.Optional[str]:
+        """
+            The dash manifest URL for OTF streams
+        """
+
+        return self.data['dash']
+
+
+    @property
+    def lbry_id(self) -> str:
+        """
+            The lbry id of the video, if available. I assume this has something to do with https://lbry.com/
+        """
+
+        return self.data['lbryId']
+
+
+    @property
+    def uploader_verified(self) -> str:
+        """
+            Whether or not the channel that uploaded the video is verified by YouTube (badge)
+        """
+
+        return self.data['uploaderVerified']
+
+
+    @property
+    def duration(self) -> timedelta:
+        """
+            The duration of the video.
+
+            ### Note:
+            The original value from the API was in seconds (`Video.data['duration']`), but this package
+            converts it to a `datetime.timedelta` object.
+        """
+
+        return timedelta(seconds=self.data['duration'])
+
+
+    @property
+    def views(self) -> int:
+        """
+            The number of views the video has received
+        """
+
+        return self.data['views']
+
+
+    @property
+    def likes(self) -> int:
+        """
+            The amount of likes the video has received. `-1` if hidden
+        """
+
+        return self.data['likes']
+
+
+    @property
+    def dislikes(self) -> int:
+        """
+            The amount of dislikes the video has received. `-1` if hidden
+
+            ### Note:
+            This is obsolete since YouTube did a tiny gigantical little big whoopsie with their like system and screwed it all up
+            You can use awesome user-made projects such as https://returnyoutubedislike.com to obtain the dislike count
+        """
+
+        return self.data['dislikes']
+
+
+
+    class Stream(BasePipedModel):
+        """
+            Either an audio or video stream of a video
+        """
+
+        @property
+        def url(self) -> str:
+            """
+                The URL of the stream
+            """
+
+            return self.data['url']
+
+
+        @property
+        def format(self) -> str:
+            """
+                The format of the stream (`'M4A' or 'WEBMA_OPUS' or 'MPEG_4' or 'WEBM' or 'v3GPP'`
+                
+                No, I don't know how many are there or what does each mean
+            """
+
+            return self.data['format']
+
+
+        @property
+        def quality(self) -> str:
+            """
+                The standard quality we all know and love (e. g.: `'240p'` for video or `'128k'` for audio)
+            """
+
+            return self.data['quality']
+
+
+        @property
+        def mime_type(self) -> str:
+            """
+                If you come from web development (or other invidious area that works with these French mimes),
+                then you already know what this is. If not, consider [checking the Mozilla documentation](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types)
+            """
+
+            return self.data['mimeType']
+
+
+        @property
+        def codec(self) -> str:
+            """
+                What is this? I don't know. A codec?
+            """
+
+            return self.data['codec']
+
+
+        @property
+        def video_only(self) -> bool:
+            """
+                Whether or not the stream is video only (AKA. muted video)
+            """
+
+            return self.data['videoOnly']
+
+
+        @property
+        def bitrate(self) -> int:
+            """
+                The bitrate of the stream
+            """
+
+            return self.data['bitrate']
+
+
+        @property
+        def init_start(self) -> int:
+            """
+                Not sure what this does, but it seems to be useful for creating dash streams
+            """
+
+            return self.data['initStart']
+
+
+        @property
+        def init_end(self) -> int:
+            """
+                Not sure what this does, but it seems to be useful for creating dash streams
+            """
+
+            return self.data['initEnd']
+
+
+        @property
+        def index_start(self) -> int:
+            """
+                Not sure what this does, but it seems to be useful for creating dash streams
+            """
+
+            return self.data['indexStart']
+
+
+        @property
+        def index_end(self) -> int:
+            """
+                Not sure what this does, but it seems to be useful for creating dash streams
+            """
+
+            return self.data['indexEnd']
+
+
+        @property
+        def width(self) -> int:
+            """
+                The width of the stream. `'0'` for audio streams (makes sense)
+            """
+
+            return self.data['width']
+
+
+        @property
+        def height(self) -> int:
+            """
+                The height of the stream. `'0'` for audio streams (makes sense)
+            """
+
+            return self.data['width']
+
+
+        @property
+        def fps(self) -> int:
+            """
+                Frames Per Second. This is usually `'0'` for audio and `'30'` or `'60'` for video
+            """
+
+            return self.data['fps']
+
+
+    def get_streams(self, type: t.Literal['video', 'audio']='video') -> t.List[Stream]:
+        """
+            Get the streams of a video.
+
+            ### Parameters:
+            - `type` - The type of stream to get. Either `'video'` or `'audio'`
+        """
+
+        if type == 'video' or type == 'audio':
+            return [self.Stream(stream_data) for stream_data in self.data[f"{type}Streams"]]
+
+        raise ValueError('Invalid stream type. Must be either `video` or `audio`')
+
+
+
+    class RelatedStream(BasePipedModel):
+        """
+            A related stream (e. g.: related video to the current one from the right sidebar, video related to/uploaded by a channel and trending video).
+        """
+
+        @property
+        def url(self) -> str:
+            """
+                The URL to the related video
+            """
+
+            return self.data['url']
+        
+
+        @property
+        def title(self) -> str:
+            """
+                The title of the related video
+            """
+
+            return self.data['title']
+        
+
+        @property
+        def thumbnail(self) -> str:
+            """
+                The thumbnail URL of the related video
+            """
+
+            return self.data['thumbnail']
+        
+
+        @property
+        def uploader_name(self) -> str:
+            """
+                The name of the channel that uploaded the related video
+            """
+
+            return self.data['uploaderName']
+        
+
+        @property
+        def uploader_url(self) -> str:
+            """
+                The URL of the channel that uploaded the related video
+            """
+
+            return self.data['uploaderUrl']
+        
+
+        @property
+        def uploader_avatar(self) -> str:
+            """
+                The URL of the channel's avatar
+            """
+
+            return self.data['uploaderAvatar']
+
+
+        @property
+        def uploaded_date(self) -> str:
+            """
+                The date the related video was uploaded (format: `'x y ago'`)
+            """
+
+            return self.data['uploadedDate']
+        
+
+        @property
+        def short_description(self) -> t.Optional[str]:
+            """
+                The short description of the related video. As far as I know, this is always `None` - perhaps some unused YouTube feature?
+            """
+
+            return self.data['shortDescription']
+
+
+        @property
+        def duration(self) -> timedelta:
+            """
+                The duration of the related video.
+
+                ### Note:
+                The original value from the API was in seconds (`Video.data['duration']`), but this package
+                converts it to a `datetime.timedelta` object.
+            """
+
+            return timedelta(seconds=self.data['duration'])
+
+
+        @property
+        def views(self) -> str:
+            """
+                The amount of views the related video has received
+            """
+
+            return self.data['views']
+
+
+        @property
+        def uploaded(self) -> datetime:
+            """
+                The date the related video was uploaded (as a `datetime.datetime` object).
+
+                ### Note:
+                The original value was in milliseconds since epoch (`Video.data['uploaded']`), but this package converts it to a `datetime.datetime` object.
+            """
+
+            return datetime.fromtimestamp(self.data['uploaded'] / 1000)
+
+
+        @property
+        def uploader_verified(self) -> bool:
+            """
+                Whether or not the channel that uploaded the related video is verified by YouTube (e. g.: has badge)
+            """
+
+            return self.data['uploaderVerified']
+
+
+
+    @property
+    def related_videos(self) -> t.List[RelatedStream]:
+        """
+            List of related streams
+        """
+
+        return [self.RelatedStream(video_data) for video_data in self.data['relatedStreams']]
+
+
+
+    class Subtitle(BasePipedModel):
+        @property
+        def url(self) -> str:
+            """
+                The URL to the subtitle
+            """
+
+            return self.data['url']
+
+
+        @property
+        def mime_type(self) -> str:
+            """
+                If you come from web development (or other invidious area that works with these French mimes),
+                then you already know what this is. If not, consider [checking the Mozilla documentation](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types)
+            """
+
+            return self.data['mimeType']
+
+
+        @property
+        def name(self) -> str:
+            """
+                The name of the language the captions are in
+            """
+
+            return self.data['name']
+
+
+        @property
+        def code(self) -> str:
+            """
+                The country code for the captions
+            """
+
+            return self.data['code']
+
+
+        @property
+        def auto_generated(self) -> bool:
+            """
+                Whether or not the captions are auto-generated by YouTube
+            """
+
+            return self.data['autoGenerated']
+
+
+
+    @property
+    def subtitles(self) -> t.List[Subtitle]:
+        """
+            A list of captions for the video
+        """
+
+        return [self.Subtitle(subtitle_data) for subtitle_data in self.data['subtitles']]
+
+
+    @property
+    def livestream(self) -> bool:
+        """
+            Whether or not the video is a livestream
+        """
+
+        return self.data['livestream']
+
+
+    @property
+    def proxy_url(self) -> str:
+        """
+            The base URL for Piped proxy
+        """
+
+        return self.data['proxyUrl']
+
+
+
+    class Chapter(BasePipedModel):
+        """
+            A video chapter (or "section").
+
+            YouTube displays a list of chapters, if there are timestamps in the description.
+        """
+
+        @property
+        def title(self) -> str:
+            """
+                The title of the chapter
+            """
+
+            return self.data['title']
+
+
+        @property
+        def image(self) -> str:
+            """
+                The image URL for the chapter
+            """
+
+            return self.data['image']
+
+
+        @property
+        def start(self) -> timedelta:
+            """
+                The start time of the chapter
+
+                ### Note:
+                The original value from the API was in seconds, this package automatically converts it to `datetime.timedelta`
+            """
+
+            return timedelta(seconds=self.data['start'])
+
+
+
+    @property
+    def chapters(self) -> t.List[Chapter]:
+        """
+            A list of chapters for the video
+        """
+
+        return [self.Chapter(chapter_data) for chapter_data in self.data['chapters']]
+
+ +
+ +
+
+
+ #   + + + class + Video(piped_api.models.BasePipedModel): +
+ +
+ View Source +
class Video(BasePipedModel):
+    @property
+    def title(self) -> str:
+        """
+            The title/name of the video
+        """
+
+        return self.data['title']
+
+
+    @property
+    def description(self) -> str:
+        """
+            The description of the video
+        """
+
+        return self.data['description']
+
+
+    @property
+    def upload_date(self) -> date:
+        """
+            The date the video was uploaded at.
+
+            ### Note:
+            Use `Video.data['uploadDate']` to get the raw string that was obtained from the API - this package
+            automatically converts the raw string to a `datetime.date` object.
+        """
+
+        raw = self.data['uploadDate']
+
+        return datetime.strptime(raw, r"%Y-%m-%d").date()
+
+
+    @property
+    def uploader(self) -> str:
+        """
+            The channel name of the author of the video
+        """
+
+        return self.data['uploader']
+
+
+    @property
+    def uploader_url(self) -> str:
+        """
+            The URI to the author's channel
+        """
+
+        return self.data['uploaderUrl']
+
+
+    @property
+    def uploader_avatar(self) -> str:
+        """
+            The URL to the video author's avatar image
+        """
+
+        return self.data['uploaderAvatar']
+
+
+    @property
+    def thumbnail_url(self) -> str:
+        """
+            The URL to the video's thumbnail image
+        """
+
+        return self.data['thumbnail']
+
+
+    @property
+    def hls(self) -> t.Optional[str]:
+        """
+            The hls manifest URL, to be used for Livestreams
+        """
+
+        return self.data['hls']
+
+
+    @property
+    def dash(self) -> t.Optional[str]:
+        """
+            The dash manifest URL for OTF streams
+        """
+
+        return self.data['dash']
+
+
+    @property
+    def lbry_id(self) -> str:
+        """
+            The lbry id of the video, if available. I assume this has something to do with https://lbry.com/
+        """
+
+        return self.data['lbryId']
+
+
+    @property
+    def uploader_verified(self) -> str:
+        """
+            Whether or not the channel that uploaded the video is verified by YouTube (badge)
+        """
+
+        return self.data['uploaderVerified']
+
+
+    @property
+    def duration(self) -> timedelta:
+        """
+            The duration of the video.
+
+            ### Note:
+            The original value from the API was in seconds (`Video.data['duration']`), but this package
+            converts it to a `datetime.timedelta` object.
+        """
+
+        return timedelta(seconds=self.data['duration'])
+
+
+    @property
+    def views(self) -> int:
+        """
+            The number of views the video has received
+        """
+
+        return self.data['views']
+
+
+    @property
+    def likes(self) -> int:
+        """
+            The amount of likes the video has received. `-1` if hidden
+        """
+
+        return self.data['likes']
+
+
+    @property
+    def dislikes(self) -> int:
+        """
+            The amount of dislikes the video has received. `-1` if hidden
+
+            ### Note:
+            This is obsolete since YouTube did a tiny gigantical little big whoopsie with their like system and screwed it all up
+            You can use awesome user-made projects such as https://returnyoutubedislike.com to obtain the dislike count
+        """
+
+        return self.data['dislikes']
+
+
+
+    class Stream(BasePipedModel):
+        """
+            Either an audio or video stream of a video
+        """
+
+        @property
+        def url(self) -> str:
+            """
+                The URL of the stream
+            """
+
+            return self.data['url']
+
+
+        @property
+        def format(self) -> str:
+            """
+                The format of the stream (`'M4A' or 'WEBMA_OPUS' or 'MPEG_4' or 'WEBM' or 'v3GPP'`
+                
+                No, I don't know how many are there or what does each mean
+            """
+
+            return self.data['format']
+
+
+        @property
+        def quality(self) -> str:
+            """
+                The standard quality we all know and love (e. g.: `'240p'` for video or `'128k'` for audio)
+            """
+
+            return self.data['quality']
+
+
+        @property
+        def mime_type(self) -> str:
+            """
+                If you come from web development (or other invidious area that works with these French mimes),
+                then you already know what this is. If not, consider [checking the Mozilla documentation](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types)
+            """
+
+            return self.data['mimeType']
+
+
+        @property
+        def codec(self) -> str:
+            """
+                What is this? I don't know. A codec?
+            """
+
+            return self.data['codec']
+
+
+        @property
+        def video_only(self) -> bool:
+            """
+                Whether or not the stream is video only (AKA. muted video)
+            """
+
+            return self.data['videoOnly']
+
+
+        @property
+        def bitrate(self) -> int:
+            """
+                The bitrate of the stream
+            """
+
+            return self.data['bitrate']
+
+
+        @property
+        def init_start(self) -> int:
+            """
+                Not sure what this does, but it seems to be useful for creating dash streams
+            """
+
+            return self.data['initStart']
+
+
+        @property
+        def init_end(self) -> int:
+            """
+                Not sure what this does, but it seems to be useful for creating dash streams
+            """
+
+            return self.data['initEnd']
+
+
+        @property
+        def index_start(self) -> int:
+            """
+                Not sure what this does, but it seems to be useful for creating dash streams
+            """
+
+            return self.data['indexStart']
+
+
+        @property
+        def index_end(self) -> int:
+            """
+                Not sure what this does, but it seems to be useful for creating dash streams
+            """
+
+            return self.data['indexEnd']
+
+
+        @property
+        def width(self) -> int:
+            """
+                The width of the stream. `'0'` for audio streams (makes sense)
+            """
+
+            return self.data['width']
+
+
+        @property
+        def height(self) -> int:
+            """
+                The height of the stream. `'0'` for audio streams (makes sense)
+            """
+
+            return self.data['width']
+
+
+        @property
+        def fps(self) -> int:
+            """
+                Frames Per Second. This is usually `'0'` for audio and `'30'` or `'60'` for video
+            """
+
+            return self.data['fps']
+
+
+    def get_streams(self, type: t.Literal['video', 'audio']='video') -> t.List[Stream]:
+        """
+            Get the streams of a video.
+
+            ### Parameters:
+            - `type` - The type of stream to get. Either `'video'` or `'audio'`
+        """
+
+        if type == 'video' or type == 'audio':
+            return [self.Stream(stream_data) for stream_data in self.data[f"{type}Streams"]]
+
+        raise ValueError('Invalid stream type. Must be either `video` or `audio`')
+
+
+
+    class RelatedStream(BasePipedModel):
+        """
+            A related stream (e. g.: related video to the current one from the right sidebar, video related to/uploaded by a channel and trending video).
+        """
+
+        @property
+        def url(self) -> str:
+            """
+                The URL to the related video
+            """
+
+            return self.data['url']
+        
+
+        @property
+        def title(self) -> str:
+            """
+                The title of the related video
+            """
+
+            return self.data['title']
+        
+
+        @property
+        def thumbnail(self) -> str:
+            """
+                The thumbnail URL of the related video
+            """
+
+            return self.data['thumbnail']
+        
+
+        @property
+        def uploader_name(self) -> str:
+            """
+                The name of the channel that uploaded the related video
+            """
+
+            return self.data['uploaderName']
+        
+
+        @property
+        def uploader_url(self) -> str:
+            """
+                The URL of the channel that uploaded the related video
+            """
+
+            return self.data['uploaderUrl']
+        
+
+        @property
+        def uploader_avatar(self) -> str:
+            """
+                The URL of the channel's avatar
+            """
+
+            return self.data['uploaderAvatar']
+
+
+        @property
+        def uploaded_date(self) -> str:
+            """
+                The date the related video was uploaded (format: `'x y ago'`)
+            """
+
+            return self.data['uploadedDate']
+        
+
+        @property
+        def short_description(self) -> t.Optional[str]:
+            """
+                The short description of the related video. As far as I know, this is always `None` - perhaps some unused YouTube feature?
+            """
+
+            return self.data['shortDescription']
+
+
+        @property
+        def duration(self) -> timedelta:
+            """
+                The duration of the related video.
+
+                ### Note:
+                The original value from the API was in seconds (`Video.data['duration']`), but this package
+                converts it to a `datetime.timedelta` object.
+            """
+
+            return timedelta(seconds=self.data['duration'])
+
+
+        @property
+        def views(self) -> str:
+            """
+                The amount of views the related video has received
+            """
+
+            return self.data['views']
+
+
+        @property
+        def uploaded(self) -> datetime:
+            """
+                The date the related video was uploaded (as a `datetime.datetime` object).
+
+                ### Note:
+                The original value was in milliseconds since epoch (`Video.data['uploaded']`), but this package converts it to a `datetime.datetime` object.
+            """
+
+            return datetime.fromtimestamp(self.data['uploaded'] / 1000)
+
+
+        @property
+        def uploader_verified(self) -> bool:
+            """
+                Whether or not the channel that uploaded the related video is verified by YouTube (e. g.: has badge)
+            """
+
+            return self.data['uploaderVerified']
+
+
+
+    @property
+    def related_videos(self) -> t.List[RelatedStream]:
+        """
+            List of related streams
+        """
+
+        return [self.RelatedStream(video_data) for video_data in self.data['relatedStreams']]
+
+
+
+    class Subtitle(BasePipedModel):
+        @property
+        def url(self) -> str:
+            """
+                The URL to the subtitle
+            """
+
+            return self.data['url']
+
+
+        @property
+        def mime_type(self) -> str:
+            """
+                If you come from web development (or other invidious area that works with these French mimes),
+                then you already know what this is. If not, consider [checking the Mozilla documentation](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types)
+            """
+
+            return self.data['mimeType']
+
+
+        @property
+        def name(self) -> str:
+            """
+                The name of the language the captions are in
+            """
+
+            return self.data['name']
+
+
+        @property
+        def code(self) -> str:
+            """
+                The country code for the captions
+            """
+
+            return self.data['code']
+
+
+        @property
+        def auto_generated(self) -> bool:
+            """
+                Whether or not the captions are auto-generated by YouTube
+            """
+
+            return self.data['autoGenerated']
+
+
+
+    @property
+    def subtitles(self) -> t.List[Subtitle]:
+        """
+            A list of captions for the video
+        """
+
+        return [self.Subtitle(subtitle_data) for subtitle_data in self.data['subtitles']]
+
+
+    @property
+    def livestream(self) -> bool:
+        """
+            Whether or not the video is a livestream
+        """
+
+        return self.data['livestream']
+
+
+    @property
+    def proxy_url(self) -> str:
+        """
+            The base URL for Piped proxy
+        """
+
+        return self.data['proxyUrl']
+
+
+
+    class Chapter(BasePipedModel):
+        """
+            A video chapter (or "section").
+
+            YouTube displays a list of chapters, if there are timestamps in the description.
+        """
+
+        @property
+        def title(self) -> str:
+            """
+                The title of the chapter
+            """
+
+            return self.data['title']
+
+
+        @property
+        def image(self) -> str:
+            """
+                The image URL for the chapter
+            """
+
+            return self.data['image']
+
+
+        @property
+        def start(self) -> timedelta:
+            """
+                The start time of the chapter
+
+                ### Note:
+                The original value from the API was in seconds, this package automatically converts it to `datetime.timedelta`
+            """
+
+            return timedelta(seconds=self.data['start'])
+
+
+
+    @property
+    def chapters(self) -> t.List[Chapter]:
+        """
+            A list of chapters for the video
+        """
+
+        return [self.Chapter(chapter_data) for chapter_data in self.data['chapters']]
+
+ +
+ +

Base class for all Piped models.

+
+ + +
+
#   + + title: str +
+ + +

The title/name of the video

+
+ + +
+
+
#   + + description: str +
+ + +

The description of the video

+
+ + +
+
+
#   + + upload_date: datetime.date +
+ + +

The date the video was uploaded at.

+ +

Note:

+ +

Use Video.data['uploadDate'] to get the raw string that was obtained from the API - this package +automatically converts the raw string to a datetime.date object.

+
+ + +
+
+
#   + + uploader: str +
+ + +

The channel name of the author of the video

+
+ + +
+
+
#   + + uploader_url: str +
+ + +

The URI to the author's channel

+
+ + +
+
+
#   + + uploader_avatar: str +
+ + +

The URL to the video author's avatar image

+
+ + +
+
+
#   + + thumbnail_url: str +
+ + +

The URL to the video's thumbnail image

+
+ + +
+
+
#   + + hls: Optional[str] +
+ + +

The hls manifest URL, to be used for Livestreams

+
+ + +
+
+
#   + + dash: Optional[str] +
+ + +

The dash manifest URL for OTF streams

+
+ + +
+
+
#   + + lbry_id: str +
+ + +

The lbry id of the video, if available. I assume this has something to do with https://lbry.com/

+
+ + +
+
+
#   + + uploader_verified: str +
+ + +

Whether or not the channel that uploaded the video is verified by YouTube (badge)

+
+ + +
+
+
#   + + duration: datetime.timedelta +
+ + +

The duration of the video.

+ +

Note:

+ +

The original value from the API was in seconds (Video.data['duration']), but this package +converts it to a datetime.timedelta object.

+
+ + +
+
+
#   + + views: int +
+ + +

The number of views the video has received

+
+ + +
+
+
#   + + likes: int +
+ + +

The amount of likes the video has received. -1 if hidden

+
+ + +
+
+
#   + + dislikes: int +
+ + +

The amount of dislikes the video has received. -1 if hidden

+ +

Note:

+ +

This is obsolete since YouTube did a tiny gigantical little big whoopsie with their like system and screwed it all up +You can use awesome user-made projects such as https://returnyoutubedislike.com to obtain the dislike count

+
+ + +
+
+
#   + + + def + get_streams( + self, + type: Literal['video', 'audio'] = 'video' +) -> List[piped_api.models.videos.Video.Stream]: +
+ +
+ View Source +
    def get_streams(self, type: t.Literal['video', 'audio']='video') -> t.List[Stream]:
+        """
+            Get the streams of a video.
+
+            ### Parameters:
+            - `type` - The type of stream to get. Either `'video'` or `'audio'`
+        """
+
+        if type == 'video' or type == 'audio':
+            return [self.Stream(stream_data) for stream_data in self.data[f"{type}Streams"]]
+
+        raise ValueError('Invalid stream type. Must be either `video` or `audio`')
+
+ +
+ +

Get the streams of a video.

+ +

Parameters:

+ +
    +
  • type - The type of stream to get. Either 'video' or 'audio'
  • +
+
+ + +
+
+ + + +

List of related streams

+
+ + +
+
+ + + +

A list of captions for the video

+
+ + +
+
+
#   + + livestream: bool +
+ + +

Whether or not the video is a livestream

+
+ + +
+
+
#   + + proxy_url: str +
+ + +

The base URL for Piped proxy

+
+ + +
+
+ + + +

A list of chapters for the video

+
+ + +
+
+
Inherited Members
+
+
piped_api.models.BasePipedModel
+
BasePipedModel
+ +
+
+
+
+
+
+ #   + + + class + Video.Stream(piped_api.models.BasePipedModel): +
+ +
+ View Source +
    class Stream(BasePipedModel):
+        """
+            Either an audio or video stream of a video
+        """
+
+        @property
+        def url(self) -> str:
+            """
+                The URL of the stream
+            """
+
+            return self.data['url']
+
+
+        @property
+        def format(self) -> str:
+            """
+                The format of the stream (`'M4A' or 'WEBMA_OPUS' or 'MPEG_4' or 'WEBM' or 'v3GPP'`
+                
+                No, I don't know how many are there or what does each mean
+            """
+
+            return self.data['format']
+
+
+        @property
+        def quality(self) -> str:
+            """
+                The standard quality we all know and love (e. g.: `'240p'` for video or `'128k'` for audio)
+            """
+
+            return self.data['quality']
+
+
+        @property
+        def mime_type(self) -> str:
+            """
+                If you come from web development (or other invidious area that works with these French mimes),
+                then you already know what this is. If not, consider [checking the Mozilla documentation](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types)
+            """
+
+            return self.data['mimeType']
+
+
+        @property
+        def codec(self) -> str:
+            """
+                What is this? I don't know. A codec?
+            """
+
+            return self.data['codec']
+
+
+        @property
+        def video_only(self) -> bool:
+            """
+                Whether or not the stream is video only (AKA. muted video)
+            """
+
+            return self.data['videoOnly']
+
+
+        @property
+        def bitrate(self) -> int:
+            """
+                The bitrate of the stream
+            """
+
+            return self.data['bitrate']
+
+
+        @property
+        def init_start(self) -> int:
+            """
+                Not sure what this does, but it seems to be useful for creating dash streams
+            """
+
+            return self.data['initStart']
+
+
+        @property
+        def init_end(self) -> int:
+            """
+                Not sure what this does, but it seems to be useful for creating dash streams
+            """
+
+            return self.data['initEnd']
+
+
+        @property
+        def index_start(self) -> int:
+            """
+                Not sure what this does, but it seems to be useful for creating dash streams
+            """
+
+            return self.data['indexStart']
+
+
+        @property
+        def index_end(self) -> int:
+            """
+                Not sure what this does, but it seems to be useful for creating dash streams
+            """
+
+            return self.data['indexEnd']
+
+
+        @property
+        def width(self) -> int:
+            """
+                The width of the stream. `'0'` for audio streams (makes sense)
+            """
+
+            return self.data['width']
+
+
+        @property
+        def height(self) -> int:
+            """
+                The height of the stream. `'0'` for audio streams (makes sense)
+            """
+
+            return self.data['width']
+
+
+        @property
+        def fps(self) -> int:
+            """
+                Frames Per Second. This is usually `'0'` for audio and `'30'` or `'60'` for video
+            """
+
+            return self.data['fps']
+
+ +
+ +

Either an audio or video stream of a video

+
+ + +
+
#   + + url: str +
+ + +

The URL of the stream

+
+ + +
+
+
#   + + format: str +
+ + +

The format of the stream ('M4A' or 'WEBMA_OPUS' or 'MPEG_4' or 'WEBM' or 'v3GPP'

+ +

No, I don't know how many are there or what does each mean

+
+ + +
+
+
#   + + quality: str +
+ + +

The standard quality we all know and love (e. g.: '240p' for video or '128k' for audio)

+
+ + +
+
+
#   + + mime_type: str +
+ + +

If you come from web development (or other invidious area that works with these French mimes), +then you already know what this is. If not, consider checking the Mozilla documentation

+
+ + +
+
+
#   + + codec: str +
+ + +

What is this? I don't know. A codec?

+
+ + +
+
+
#   + + video_only: bool +
+ + +

Whether or not the stream is video only (AKA. muted video)

+
+ + +
+
+
#   + + bitrate: int +
+ + +

The bitrate of the stream

+
+ + +
+
+
#   + + init_start: int +
+ + +

Not sure what this does, but it seems to be useful for creating dash streams

+
+ + +
+
+
#   + + init_end: int +
+ + +

Not sure what this does, but it seems to be useful for creating dash streams

+
+ + +
+
+
#   + + index_start: int +
+ + +

Not sure what this does, but it seems to be useful for creating dash streams

+
+ + +
+
+
#   + + index_end: int +
+ + +

Not sure what this does, but it seems to be useful for creating dash streams

+
+ + +
+
+
#   + + width: int +
+ + +

The width of the stream. '0' for audio streams (makes sense)

+
+ + +
+
+
#   + + height: int +
+ + +

The height of the stream. '0' for audio streams (makes sense)

+
+ + +
+
+
#   + + fps: int +
+ + +

Frames Per Second. This is usually '0' for audio and '30' or '60' for video

+
+ + +
+
+
Inherited Members
+
+
piped_api.models.BasePipedModel
+
BasePipedModel
+ +
+
+
+
+
+
+ #   + + + class + Video.RelatedStream(piped_api.models.BasePipedModel): +
+ +
+ View Source +
    class RelatedStream(BasePipedModel):
+        """
+            A related stream (e. g.: related video to the current one from the right sidebar, video related to/uploaded by a channel and trending video).
+        """
+
+        @property
+        def url(self) -> str:
+            """
+                The URL to the related video
+            """
+
+            return self.data['url']
+        
+
+        @property
+        def title(self) -> str:
+            """
+                The title of the related video
+            """
+
+            return self.data['title']
+        
+
+        @property
+        def thumbnail(self) -> str:
+            """
+                The thumbnail URL of the related video
+            """
+
+            return self.data['thumbnail']
+        
+
+        @property
+        def uploader_name(self) -> str:
+            """
+                The name of the channel that uploaded the related video
+            """
+
+            return self.data['uploaderName']
+        
+
+        @property
+        def uploader_url(self) -> str:
+            """
+                The URL of the channel that uploaded the related video
+            """
+
+            return self.data['uploaderUrl']
+        
+
+        @property
+        def uploader_avatar(self) -> str:
+            """
+                The URL of the channel's avatar
+            """
+
+            return self.data['uploaderAvatar']
+
+
+        @property
+        def uploaded_date(self) -> str:
+            """
+                The date the related video was uploaded (format: `'x y ago'`)
+            """
+
+            return self.data['uploadedDate']
+        
+
+        @property
+        def short_description(self) -> t.Optional[str]:
+            """
+                The short description of the related video. As far as I know, this is always `None` - perhaps some unused YouTube feature?
+            """
+
+            return self.data['shortDescription']
+
+
+        @property
+        def duration(self) -> timedelta:
+            """
+                The duration of the related video.
+
+                ### Note:
+                The original value from the API was in seconds (`Video.data['duration']`), but this package
+                converts it to a `datetime.timedelta` object.
+            """
+
+            return timedelta(seconds=self.data['duration'])
+
+
+        @property
+        def views(self) -> str:
+            """
+                The amount of views the related video has received
+            """
+
+            return self.data['views']
+
+
+        @property
+        def uploaded(self) -> datetime:
+            """
+                The date the related video was uploaded (as a `datetime.datetime` object).
+
+                ### Note:
+                The original value was in milliseconds since epoch (`Video.data['uploaded']`), but this package converts it to a `datetime.datetime` object.
+            """
+
+            return datetime.fromtimestamp(self.data['uploaded'] / 1000)
+
+
+        @property
+        def uploader_verified(self) -> bool:
+            """
+                Whether or not the channel that uploaded the related video is verified by YouTube (e. g.: has badge)
+            """
+
+            return self.data['uploaderVerified']
+
+ +
+ +

A related stream (e. g.: related video to the current one from the right sidebar, video related to/uploaded by a channel and trending video).

+
+ + +
+
#   + + url: str +
+ + +

The URL to the related video

+
+ + +
+
+
#   + + title: str +
+ + +

The title of the related video

+
+ + +
+
+
#   + + thumbnail: str +
+ + +

The thumbnail URL of the related video

+
+ + +
+
+
#   + + uploader_name: str +
+ + +

The name of the channel that uploaded the related video

+
+ + +
+
+
#   + + uploader_url: str +
+ + +

The URL of the channel that uploaded the related video

+
+ + +
+
+
#   + + uploader_avatar: str +
+ + +

The URL of the channel's avatar

+
+ + +
+
+
#   + + uploaded_date: str +
+ + +

The date the related video was uploaded (format: 'x y ago')

+
+ + +
+
+
#   + + short_description: Optional[str] +
+ + +

The short description of the related video. As far as I know, this is always None - perhaps some unused YouTube feature?

+
+ + +
+
+
#   + + duration: datetime.timedelta +
+ + +

The duration of the related video.

+ +

Note:

+ +

The original value from the API was in seconds (Video.data['duration']), but this package +converts it to a datetime.timedelta object.

+
+ + +
+
+
#   + + views: str +
+ + +

The amount of views the related video has received

+
+ + +
+
+
#   + + uploaded: datetime.datetime +
+ + +

The date the related video was uploaded (as a datetime.datetime object).

+ +

Note:

+ +

The original value was in milliseconds since epoch (Video.data['uploaded']), but this package converts it to a datetime.datetime object.

+
+ + +
+
+
#   + + uploader_verified: bool +
+ + +

Whether or not the channel that uploaded the related video is verified by YouTube (e. g.: has badge)

+
+ + +
+
+
Inherited Members
+
+
piped_api.models.BasePipedModel
+
BasePipedModel
+ +
+
+
+
+
+
+ #   + + + class + Video.Subtitle(piped_api.models.BasePipedModel): +
+ +
+ View Source +
    class Subtitle(BasePipedModel):
+        @property
+        def url(self) -> str:
+            """
+                The URL to the subtitle
+            """
+
+            return self.data['url']
+
+
+        @property
+        def mime_type(self) -> str:
+            """
+                If you come from web development (or other invidious area that works with these French mimes),
+                then you already know what this is. If not, consider [checking the Mozilla documentation](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types)
+            """
+
+            return self.data['mimeType']
+
+
+        @property
+        def name(self) -> str:
+            """
+                The name of the language the captions are in
+            """
+
+            return self.data['name']
+
+
+        @property
+        def code(self) -> str:
+            """
+                The country code for the captions
+            """
+
+            return self.data['code']
+
+
+        @property
+        def auto_generated(self) -> bool:
+            """
+                Whether or not the captions are auto-generated by YouTube
+            """
+
+            return self.data['autoGenerated']
+
+ +
+ +

Base class for all Piped models.

+
+ + +
+
#   + + url: str +
+ + +

The URL to the subtitle

+
+ + +
+
+
#   + + mime_type: str +
+ + +

If you come from web development (or other invidious area that works with these French mimes), +then you already know what this is. If not, consider checking the Mozilla documentation

+
+ + +
+
+
#   + + name: str +
+ + +

The name of the language the captions are in

+
+ + +
+
+
#   + + code: str +
+ + +

The country code for the captions

+
+ + +
+
+
#   + + auto_generated: bool +
+ + +

Whether or not the captions are auto-generated by YouTube

+
+ + +
+
+
Inherited Members
+
+
piped_api.models.BasePipedModel
+
BasePipedModel
+ +
+
+
+
+
+
+ #   + + + class + Video.Chapter(piped_api.models.BasePipedModel): +
+ +
+ View Source +
    class Chapter(BasePipedModel):
+        """
+            A video chapter (or "section").
+
+            YouTube displays a list of chapters, if there are timestamps in the description.
+        """
+
+        @property
+        def title(self) -> str:
+            """
+                The title of the chapter
+            """
+
+            return self.data['title']
+
+
+        @property
+        def image(self) -> str:
+            """
+                The image URL for the chapter
+            """
+
+            return self.data['image']
+
+
+        @property
+        def start(self) -> timedelta:
+            """
+                The start time of the chapter
+
+                ### Note:
+                The original value from the API was in seconds, this package automatically converts it to `datetime.timedelta`
+            """
+
+            return timedelta(seconds=self.data['start'])
+
+ +
+ +

A video chapter (or "section").

+ +

YouTube displays a list of chapters, if there are timestamps in the description.

+
+ + +
+
#   + + title: str +
+ + +

The title of the chapter

+
+ + +
+
+
#   + + image: str +
+ + +

The image URL for the chapter

+
+ + +
+
+
#   + + start: datetime.timedelta +
+ + +

The start time of the chapter

+ +

Note:

+ +

The original value from the API was in seconds, this package automatically converts it to datetime.timedelta

+
+ + +
+
+
Inherited Members
+
+
piped_api.models.BasePipedModel
+
BasePipedModel
+ +
+
+
+
+
+ + \ No newline at end of file diff --git a/piped_api/models/videos.py b/piped_api/models/videos.py deleted file mode 100644 index ce8e8ad..0000000 --- a/piped_api/models/videos.py +++ /dev/null @@ -1,559 +0,0 @@ -import typing as t - -from datetime import datetime, date, timedelta - -from . import BasePipedModel - - -class Video(BasePipedModel): - @property - def title(self) -> str: - """ - The title/name of the video - """ - - return self.data['title'] - - - @property - def description(self) -> str: - """ - The description of the video - """ - - return self.data['description'] - - - @property - def upload_date(self) -> date: - """ - The date the video was uploaded at. - - ### Note: - Use `Video.data['uploadDate']` to get the raw string that was obtained from the API - this package - automatically converts the raw string to a `datetime.date` object. - """ - - raw = self.data['uploadDate'] - - return datetime.strptime(raw, r"%Y-%m-%d").date() - - - @property - def uploader(self) -> str: - """ - The channel name of the author of the video - """ - - return self.data['uploader'] - - - @property - def uploader_url(self) -> str: - """ - The URI to the author's channel - """ - - return self.data['uploaderUrl'] - - - @property - def uploader_avatar(self) -> str: - """ - The URL to the video author's avatar image - """ - - return self.data['uploaderAvatar'] - - - @property - def thumbnail_url(self) -> str: - """ - The URL to the video's thumbnail image - """ - - return self.data['thumbnail'] - - - @property - def hls(self) -> t.Optional[str]: - """ - The hls manifest URL, to be used for Livestreams - """ - - return self.data['hls'] - - - @property - def dash(self) -> t.Optional[str]: - """ - The dash manifest URL for OTF streams - """ - - return self.data['dash'] - - - @property - def lbry_id(self) -> str: - """ - The lbry id of the video, if available. I assume this has something to do with https://lbry.com/ - """ - - return self.data['lbryId'] - - - @property - def uploader_verified(self) -> str: - """ - Whether or not the channel that uploaded the video is verified by YouTube (badge) - """ - - return self.data['uploaderVerified'] - - - @property - def duration(self) -> timedelta: - """ - The duration of the video. - - ### Note: - The original value from the API was in seconds (`Video.data['duration']`), but this package - converts it to a `datetime.timedelta` object. - """ - - return timedelta(seconds=self.data['duration']) - - - @property - def views(self) -> int: - """ - The number of views the video has received - """ - - return self.data['views'] - - - @property - def likes(self) -> int: - """ - The amount of likes the video has received. `-1` if hidden - """ - - return self.data['likes'] - - - @property - def dislikes(self) -> int: - """ - The amount of dislikes the video has received. `-1` if hidden - - ### Note: - This is obsolete since YouTube did a tiny gigantical little big whoopsie with their like system and screwed it all up - You can use awesome user-made projects such as https://returnyoutubedislike.com to obtain the dislike count - """ - - return self.data['dislikes'] - - - - class Stream(BasePipedModel): - """ - Either an audio or video stream of a video - """ - - @property - def url(self) -> str: - """ - The URL of the stream - """ - - return self.data['url'] - - - @property - def format(self) -> str: - """ - The format of the stream (`'M4A' or 'WEBMA_OPUS' or 'MPEG_4' or 'WEBM' or 'v3GPP'` - - No, I don't know how many are there or what does each mean - """ - - return self.data['format'] - - - @property - def quality(self) -> str: - """ - The standard quality we all know and love (e. g.: `'240p'` for video or `'128k'` for audio) - """ - - return self.data['quality'] - - - @property - def mime_type(self) -> str: - """ - If you come from web development (or other invidious area that works with these French mimes), - then you already know what this is. If not, consider [checking the Mozilla documentation](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) - """ - - return self.data['mimeType'] - - - @property - def codec(self) -> str: - """ - What is this? I don't know. A codec? - """ - - return self.data['codec'] - - - @property - def video_only(self) -> bool: - """ - Whether or not the stream is video only (AKA. muted video) - """ - - return self.data['videoOnly'] - - - @property - def bitrate(self) -> int: - """ - The bitrate of the stream - """ - - return self.data['bitrate'] - - - @property - def init_start(self) -> int: - """ - Not sure what this does, but it seems to be useful for creating dash streams - """ - - return self.data['initStart'] - - - @property - def init_end(self) -> int: - """ - Not sure what this does, but it seems to be useful for creating dash streams - """ - - return self.data['initEnd'] - - - @property - def index_start(self) -> int: - """ - Not sure what this does, but it seems to be useful for creating dash streams - """ - - return self.data['indexStart'] - - - @property - def index_end(self) -> int: - """ - Not sure what this does, but it seems to be useful for creating dash streams - """ - - return self.data['indexEnd'] - - - @property - def width(self) -> int: - """ - The width of the stream. `'0'` for audio streams (makes sense) - """ - - return self.data['width'] - - - @property - def height(self) -> int: - """ - The height of the stream. `'0'` for audio streams (makes sense) - """ - - return self.data['width'] - - - @property - def fps(self) -> int: - """ - Frames Per Second. This is usually `'0'` for audio and `'30'` or `'60'` for video - """ - - return self.data['fps'] - - - def get_streams(self, type: t.Literal['video', 'audio']='video') -> t.List[Stream]: - """ - Get the streams of a video. - - ### Parameters: - - `type` - The type of stream to get. Either `'video'` or `'audio'` - """ - - if type == 'video' or type == 'audio': - return [self.Stream(stream_data) for stream_data in self.data[f"{type}Streams"]] - - raise ValueError('Invalid stream type. Must be either `video` or `audio`') - - - - class RelatedStream(BasePipedModel): - """ - A related stream (e. g.: related video to the current one from the right sidebar, video related to/uploaded by a channel and trending video). - """ - - @property - def url(self) -> str: - """ - The URL to the related video - """ - - return self.data['url'] - - - @property - def title(self) -> str: - """ - The title of the related video - """ - - return self.data['title'] - - - @property - def thumbnail(self) -> str: - """ - The thumbnail URL of the related video - """ - - return self.data['thumbnail'] - - - @property - def uploader_name(self) -> str: - """ - The name of the channel that uploaded the related video - """ - - return self.data['uploaderName'] - - - @property - def uploader_url(self) -> str: - """ - The URL of the channel that uploaded the related video - """ - - return self.data['uploaderUrl'] - - - @property - def uploader_avatar(self) -> str: - """ - The URL of the channel's avatar - """ - - return self.data['uploaderAvatar'] - - - @property - def uploaded_date(self) -> str: - """ - The date the related video was uploaded (format: `'x y ago'`) - """ - - return self.data['uploadedDate'] - - - @property - def short_description(self) -> t.Optional[str]: - """ - The short description of the related video. As far as I know, this is always `None` - perhaps some unused YouTube feature? - """ - - return self.data['shortDescription'] - - - @property - def duration(self) -> timedelta: - """ - The duration of the related video. - - ### Note: - The original value from the API was in seconds (`Video.data['duration']`), but this package - converts it to a `datetime.timedelta` object. - """ - - return timedelta(seconds=self.data['duration']) - - - @property - def views(self) -> str: - """ - The amount of views the related video has received - """ - - return self.data['views'] - - - @property - def uploaded(self) -> datetime: - """ - The date the related video was uploaded (as a `datetime.datetime` object). - - ### Note: - The original value was in milliseconds since epoch (`Video.data['uploaded']`), but this package converts it to a `datetime.datetime` object. - """ - - return datetime.fromtimestamp(self.data['uploaded'] / 1000) - - - @property - def uploader_verified(self) -> bool: - """ - Whether or not the channel that uploaded the related video is verified by YouTube (e. g.: has badge) - """ - - return self.data['uploaderVerified'] - - - - @property - def related_videos(self) -> t.List[RelatedStream]: - """ - List of related streams - """ - - return [self.RelatedStream(video_data) for video_data in self.data['relatedStreams']] - - - - class Subtitle(BasePipedModel): - @property - def url(self) -> str: - """ - The URL to the subtitle - """ - - return self.data['url'] - - - @property - def mime_type(self) -> str: - """ - If you come from web development (or other invidious area that works with these French mimes), - then you already know what this is. If not, consider [checking the Mozilla documentation](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types) - """ - - return self.data['mimeType'] - - - @property - def name(self) -> str: - """ - The name of the language the captions are in - """ - - return self.data['name'] - - - @property - def code(self) -> str: - """ - The country code for the captions - """ - - return self.data['code'] - - - @property - def auto_generated(self) -> bool: - """ - Whether or not the captions are auto-generated by YouTube - """ - - return self.data['autoGenerated'] - - - - @property - def subtitles(self) -> t.List[Subtitle]: - """ - A list of captions for the video - """ - - return [self.Subtitle(subtitle_data) for subtitle_data in self.data['subtitles']] - - - @property - def livestream(self) -> bool: - """ - Whether or not the video is a livestream - """ - - return self.data['livestream'] - - - @property - def proxy_url(self) -> str: - """ - The base URL for Piped proxy - """ - - return self.data['proxyUrl'] - - - - class Chapter(BasePipedModel): - """ - A video chapter (or "section"). - - YouTube displays a list of chapters, if there are timestamps in the description. - """ - - @property - def title(self) -> str: - """ - The title of the chapter - """ - - return self.data['title'] - - - @property - def image(self) -> str: - """ - The image URL for the chapter - """ - - return self.data['image'] - - - @property - def start(self) -> timedelta: - """ - The start time of the chapter - - ### Note: - The original value from the API was in seconds, this package automatically converts it to `datetime.timedelta` - """ - - return timedelta(seconds=self.data['start']) - - - - @property - def chapters(self) -> t.List[Chapter]: - """ - A list of chapters for the video - """ - - return [self.Chapter(chapter_data) for chapter_data in self.data['chapters']] diff --git a/requirements.txt b/requirements.txt deleted file mode 100644 index 3d76b0f..0000000 --- a/requirements.txt +++ /dev/null @@ -1,3 +0,0 @@ -pytest - -requests diff --git a/scripts/build_documentation.sh b/scripts/build_documentation.sh deleted file mode 100644 index 219ff9b..0000000 --- a/scripts/build_documentation.sh +++ /dev/null @@ -1,4 +0,0 @@ -cd "$(dirname "$0")" -cd ../ - -pdoc -o documentation piped_api diff --git a/scripts/compile_everything.sh b/scripts/compile_everything.sh deleted file mode 100644 index 8cdb0fd..0000000 --- a/scripts/compile_everything.sh +++ /dev/null @@ -1,4 +0,0 @@ -cd "$(dirname "$0")" - -bash ./build_documentation.sh -bash ./compile_for_pypi.sh diff --git a/scripts/compile_for_pypi.sh b/scripts/compile_for_pypi.sh deleted file mode 100644 index 906e55d..0000000 --- a/scripts/compile_for_pypi.sh +++ /dev/null @@ -1,4 +0,0 @@ -cd "$(dirname "$0")" -cd ../ - -python setup.py sdist diff --git a/search.js b/search.js new file mode 100644 index 0000000..4eec8b4 --- /dev/null +++ b/search.js @@ -0,0 +1,46 @@ +window.pdocSearch = (function(){ +/** elasticlunr - http://weixsong.github.io * Copyright (C) 2017 Oliver Nightingale * Copyright (C) 2017 Wei Song * MIT Licensed */!function(){function e(e){if(null===e||"object"!=typeof e)return e;var t=e.constructor();for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}var t=function(e){var n=new t.Index;return n.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),e&&e.call(n,n),n};t.version="0.9.5",lunr=t,t.utils={},t.utils.warn=function(e){return function(t){e.console&&console.warn&&console.warn(t)}}(this),t.utils.toString=function(e){return void 0===e||null===e?"":e.toString()},t.EventEmitter=function(){this.events={}},t.EventEmitter.prototype.addListener=function(){var e=Array.prototype.slice.call(arguments),t=e.pop(),n=e;if("function"!=typeof t)throw new TypeError("last argument must be a function");n.forEach(function(e){this.hasHandler(e)||(this.events[e]=[]),this.events[e].push(t)},this)},t.EventEmitter.prototype.removeListener=function(e,t){if(this.hasHandler(e)){var n=this.events[e].indexOf(t);-1!==n&&(this.events[e].splice(n,1),0==this.events[e].length&&delete this.events[e])}},t.EventEmitter.prototype.emit=function(e){if(this.hasHandler(e)){var t=Array.prototype.slice.call(arguments,1);this.events[e].forEach(function(e){e.apply(void 0,t)},this)}},t.EventEmitter.prototype.hasHandler=function(e){return e in this.events},t.tokenizer=function(e){if(!arguments.length||null===e||void 0===e)return[];if(Array.isArray(e)){var n=e.filter(function(e){return null===e||void 0===e?!1:!0});n=n.map(function(e){return t.utils.toString(e).toLowerCase()});var i=[];return n.forEach(function(e){var n=e.split(t.tokenizer.seperator);i=i.concat(n)},this),i}return e.toString().trim().toLowerCase().split(t.tokenizer.seperator)},t.tokenizer.defaultSeperator=/[\s\-]+/,t.tokenizer.seperator=t.tokenizer.defaultSeperator,t.tokenizer.setSeperator=function(e){null!==e&&void 0!==e&&"object"==typeof e&&(t.tokenizer.seperator=e)},t.tokenizer.resetSeperator=function(){t.tokenizer.seperator=t.tokenizer.defaultSeperator},t.tokenizer.getSeperator=function(){return t.tokenizer.seperator},t.Pipeline=function(){this._queue=[]},t.Pipeline.registeredFunctions={},t.Pipeline.registerFunction=function(e,n){n in t.Pipeline.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+n),e.label=n,t.Pipeline.registeredFunctions[n]=e},t.Pipeline.getRegisteredFunction=function(e){return e in t.Pipeline.registeredFunctions!=!0?null:t.Pipeline.registeredFunctions[e]},t.Pipeline.warnIfFunctionNotRegistered=function(e){var n=e.label&&e.label in this.registeredFunctions;n||t.utils.warn("Function is not registered with pipeline. This may cause problems when serialising the index.\n",e)},t.Pipeline.load=function(e){var n=new t.Pipeline;return e.forEach(function(e){var i=t.Pipeline.getRegisteredFunction(e);if(!i)throw new Error("Cannot load un-registered function: "+e);n.add(i)}),n},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(e){t.Pipeline.warnIfFunctionNotRegistered(e),this._queue.push(e)},this)},t.Pipeline.prototype.after=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var i=this._queue.indexOf(e);if(-1===i)throw new Error("Cannot find existingFn");this._queue.splice(i+1,0,n)},t.Pipeline.prototype.before=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var i=this._queue.indexOf(e);if(-1===i)throw new Error("Cannot find existingFn");this._queue.splice(i,0,n)},t.Pipeline.prototype.remove=function(e){var t=this._queue.indexOf(e);-1!==t&&this._queue.splice(t,1)},t.Pipeline.prototype.run=function(e){for(var t=[],n=e.length,i=this._queue.length,o=0;n>o;o++){for(var r=e[o],s=0;i>s&&(r=this._queue[s](r,o,e),void 0!==r&&null!==r);s++);void 0!==r&&null!==r&&t.push(r)}return t},t.Pipeline.prototype.reset=function(){this._queue=[]},t.Pipeline.prototype.get=function(){return this._queue},t.Pipeline.prototype.toJSON=function(){return this._queue.map(function(e){return t.Pipeline.warnIfFunctionNotRegistered(e),e.label})},t.Index=function(){this._fields=[],this._ref="id",this.pipeline=new t.Pipeline,this.documentStore=new t.DocumentStore,this.index={},this.eventEmitter=new t.EventEmitter,this._idfCache={},this.on("add","remove","update",function(){this._idfCache={}}.bind(this))},t.Index.prototype.on=function(){var e=Array.prototype.slice.call(arguments);return this.eventEmitter.addListener.apply(this.eventEmitter,e)},t.Index.prototype.off=function(e,t){return this.eventEmitter.removeListener(e,t)},t.Index.load=function(e){e.version!==t.version&&t.utils.warn("version mismatch: current "+t.version+" importing "+e.version);var n=new this;n._fields=e.fields,n._ref=e.ref,n.documentStore=t.DocumentStore.load(e.documentStore),n.pipeline=t.Pipeline.load(e.pipeline),n.index={};for(var i in e.index)n.index[i]=t.InvertedIndex.load(e.index[i]);return n},t.Index.prototype.addField=function(e){return this._fields.push(e),this.index[e]=new t.InvertedIndex,this},t.Index.prototype.setRef=function(e){return this._ref=e,this},t.Index.prototype.saveDocument=function(e){return this.documentStore=new t.DocumentStore(e),this},t.Index.prototype.addDoc=function(e,n){if(e){var n=void 0===n?!0:n,i=e[this._ref];this.documentStore.addDoc(i,e),this._fields.forEach(function(n){var o=this.pipeline.run(t.tokenizer(e[n]));this.documentStore.addFieldLength(i,n,o.length);var r={};o.forEach(function(e){e in r?r[e]+=1:r[e]=1},this);for(var s in r){var u=r[s];u=Math.sqrt(u),this.index[n].addToken(s,{ref:i,tf:u})}},this),n&&this.eventEmitter.emit("add",e,this)}},t.Index.prototype.removeDocByRef=function(e){if(e&&this.documentStore.isDocStored()!==!1&&this.documentStore.hasDoc(e)){var t=this.documentStore.getDoc(e);this.removeDoc(t,!1)}},t.Index.prototype.removeDoc=function(e,n){if(e){var n=void 0===n?!0:n,i=e[this._ref];this.documentStore.hasDoc(i)&&(this.documentStore.removeDoc(i),this._fields.forEach(function(n){var o=this.pipeline.run(t.tokenizer(e[n]));o.forEach(function(e){this.index[n].removeToken(e,i)},this)},this),n&&this.eventEmitter.emit("remove",e,this))}},t.Index.prototype.updateDoc=function(e,t){var t=void 0===t?!0:t;this.removeDocByRef(e[this._ref],!1),this.addDoc(e,!1),t&&this.eventEmitter.emit("update",e,this)},t.Index.prototype.idf=function(e,t){var n="@"+t+"/"+e;if(Object.prototype.hasOwnProperty.call(this._idfCache,n))return this._idfCache[n];var i=this.index[t].getDocFreq(e),o=1+Math.log(this.documentStore.length/(i+1));return this._idfCache[n]=o,o},t.Index.prototype.getFields=function(){return this._fields.slice()},t.Index.prototype.search=function(e,n){if(!e)return[];e="string"==typeof e?{any:e}:JSON.parse(JSON.stringify(e));var i=null;null!=n&&(i=JSON.stringify(n));for(var o=new t.Configuration(i,this.getFields()).get(),r={},s=Object.keys(e),u=0;u0&&t.push(e);for(var i in n)"docs"!==i&&"df"!==i&&this.expandToken(e+i,t,n[i]);return t},t.InvertedIndex.prototype.toJSON=function(){return{root:this.root}},t.Configuration=function(e,n){var e=e||"";if(void 0==n||null==n)throw new Error("fields should not be null");this.config={};var i;try{i=JSON.parse(e),this.buildUserConfig(i,n)}catch(o){t.utils.warn("user configuration parse failed, will use default configuration"),this.buildDefaultConfig(n)}},t.Configuration.prototype.buildDefaultConfig=function(e){this.reset(),e.forEach(function(e){this.config[e]={boost:1,bool:"OR",expand:!1}},this)},t.Configuration.prototype.buildUserConfig=function(e,n){var i="OR",o=!1;if(this.reset(),"bool"in e&&(i=e.bool||i),"expand"in e&&(o=e.expand||o),"fields"in e)for(var r in e.fields)if(n.indexOf(r)>-1){var s=e.fields[r],u=o;void 0!=s.expand&&(u=s.expand),this.config[r]={boost:s.boost||0===s.boost?s.boost:1,bool:s.bool||i,expand:u}}else t.utils.warn("field name in user configuration not found in index instance fields");else this.addAllFields2UserConfig(i,o,n)},t.Configuration.prototype.addAllFields2UserConfig=function(e,t,n){n.forEach(function(n){this.config[n]={boost:1,bool:e,expand:t}},this)},t.Configuration.prototype.get=function(){return this.config},t.Configuration.prototype.reset=function(){this.config={}},lunr.SortedSet=function(){this.length=0,this.elements=[]},lunr.SortedSet.load=function(e){var t=new this;return t.elements=e,t.length=e.length,t},lunr.SortedSet.prototype.add=function(){var e,t;for(e=0;e1;){if(r===e)return o;e>r&&(t=o),r>e&&(n=o),i=n-t,o=t+Math.floor(i/2),r=this.elements[o]}return r===e?o:-1},lunr.SortedSet.prototype.locationFor=function(e){for(var t=0,n=this.elements.length,i=n-t,o=t+Math.floor(i/2),r=this.elements[o];i>1;)e>r&&(t=o),r>e&&(n=o),i=n-t,o=t+Math.floor(i/2),r=this.elements[o];return r>e?o:e>r?o+1:void 0},lunr.SortedSet.prototype.intersect=function(e){for(var t=new lunr.SortedSet,n=0,i=0,o=this.length,r=e.length,s=this.elements,u=e.elements;;){if(n>o-1||i>r-1)break;s[n]!==u[i]?s[n]u[i]&&i++:(t.add(s[n]),n++,i++)}return t},lunr.SortedSet.prototype.clone=function(){var e=new lunr.SortedSet;return e.elements=this.toArray(),e.length=e.elements.length,e},lunr.SortedSet.prototype.union=function(e){var t,n,i;this.length>=e.length?(t=this,n=e):(t=e,n=this),i=t.clone();for(var o=0,r=n.toArray();oPiped API client (Python)\n\n

\"Test

\n\n

A Python API wrapper for Piped. This can essentially be used as an alternative way to access YouTube's API, without needing to use an API key.

\n\n

Installation

\n\n
pip install piped-api\n
\n\n

Quickstart

\n\n

Getting started is very easy:

\n\n
from piped_api import PipedClient\n\nCLIENT = PipedClient()\n\n\n# Print out the first audio stream URL for a video:\nvideo = CLIENT.get_video(video_id)\naudio_stream = video.get_streams('audio')[0]\n\nprint(f"Audio stream URL: {audio_stream.url} ({audio_stream.mime_type})")\n
\n\n

You can find more examples in the tests folder.

\n\n

Why?

\n\n\n\n

The creation of this package was primarily fueled by the same type of motivation Piped has.

\n\n

Google's API is not very easy-to-use - you must obtain some JSON thingy to use it, and it is very low-level and not very user-friendly.\nOn the other hand, this package accessed the Piped API, which has a much more high-level API and doesn't need an account or API keys.

\n\n

It is not meant to be a replacement for the official YouTube API, but it can help you to cut the strings that Google attaches to you when using their API.

\n\n

Useful links

\n\n\n\n

\ud83c\udf81 Support me

\n\n

I create free software to benefit people.\nIf this project helps you and you like it, consider supporting me by donating via cryptocurrency:

\n\n\n\n\n \n \n\n\n\n\n \n \n\n\n \n \n\n\n \n \n\n\n \n \n\n\n \n \n\n\n \n \n\n\n \n \n\n\n \n \n\n\n \n \n\n\n \n \n\n\n
CryptoAddress
BitcoinE-mail me
Ethereum0x12C598b3bC084710507c9d6d19C9434fD26864Cc
LitecoinLgHQK1NQrRQ56AKvVtSxMubqbjSWh7DTD2
DashXe7TYoRCYPdZyiQYDjgzCGxR5juPWV8PgZ
Zcash:t1Pesobv3SShMHGfrZWe926nsnBo2pyqN3f
Dogecoin:DALxrKSbcCXz619QqLj9qKXFnTp8u2cS12
Ripple:rNQsgQvMbbBAd957XyDeNudA4jLH1ANERL
Monero:48TfTddnpgnKBn13MdJNJwHfxDwwGngPgL3v6bNSTwGaXveeaUWzJcMUVrbWUyDSyPDwEJVoup2gmDuskkcFuNG99zatYFS
Bitcoin Cash:qzx6pqzcltm7ely24wnhpzp65r8ltrqgeuevtrsj9n
Ethereum Classic:0x383Dc3B83afBD66b4a5e64511525FbFeb2C023Db
\n\n

More cryptocurrencies are supported. If you are interested in donating with a different one, please E-mail me.\nNo other forms of donation are currently supported.

\n"}, "piped_api.client": {"fullname": "piped_api.client", "modulename": "piped_api.client", "type": "module", "doc": "

\n"}, "piped_api.client.APIError": {"fullname": "piped_api.client.APIError", "modulename": "piped_api.client", "qualname": "APIError", "type": "class", "doc": "

Raised when an API call fails

\n", "bases": "builtins.Exception"}, "piped_api.client.PipedClient": {"fullname": "piped_api.client.PipedClient", "modulename": "piped_api.client", "qualname": "PipedClient", "type": "class", "doc": "

An API client for Piped.

\n\n

See also Piped API docs

\n"}, "piped_api.client.PipedClient.__init__": {"fullname": "piped_api.client.PipedClient.__init__", "modulename": "piped_api.client", "qualname": "PipedClient.__init__", "type": "function", "doc": "

Parameters:

\n\n
    \n
  • base_api_url - The base URL to the instance's API. Trailing slashes will be stripped.
  • \n
  • session - A class/subclass of requests.Session to use for all requests.\nFor example, you could use requests-cache to make all requests cacheable.
  • \n
\n", "signature": "(\n self,\n base_api_url: str = 'https://pipedapi.kavin.rocks',\n session: Type[requests.sessions.Session] = \n)", "funcdef": "def"}, "piped_api.client.PipedClient.get_video": {"fullname": "piped_api.client.PipedClient.get_video", "modulename": "piped_api.client", "qualname": "PipedClient.get_video", "type": "function", "doc": "

Gets information about a specific video.

\n\n

Parameters:

\n\n
    \n
  • video_id - The ID of the video to get information for
  • \n
  • **kwargs - Additional keyword arguments to pass to requests.Session.get
  • \n
\n\n

Piped Documentation

\n", "signature": "(self, video_id: str, **kwargs) -> piped_api.models.videos.Video", "funcdef": "def"}, "piped_api.client.PipedClient.get_comments": {"fullname": "piped_api.client.PipedClient.get_comments", "modulename": "piped_api.client", "qualname": "PipedClient.get_comments", "type": "function", "doc": "

Gets a list of comments for a specific video.

\n\n

Parameters:

\n\n
    \n
  • video_id - The ID of the video to get comments for
  • \n
  • nextpage - Nextpage data, obtained from .models.comments.Comments.nextpage property. If this is None, the first page of comments is returned.\nThere are often 20 comments per page.
  • \n
  • **kwargs - Additional keyword arguments to pass to requests.Session.get
  • \n
\n\n

Piped Documentation

\n", "signature": "(\n self,\n video_id: str,\n nextpage: Optional[Dict[str, Optional[str]]] = None,\n **kwargs\n) -> piped_api.models.comments.Comments", "funcdef": "def"}, "piped_api.client.PipedClient.get_trending": {"fullname": "piped_api.client.PipedClient.get_trending", "modulename": "piped_api.client", "qualname": "PipedClient.get_trending", "type": "function", "doc": "

Obtains trending videos for a specific country. If there are no trending videos (or country_code is invalid),\nan empty list is returned.

\n\n

Parameters:

\n\n
    \n
  • country_code - The country code (ISO 3166-1 alpha-2) to get trending videos for. This is automatically capitalized by this package,\nsince Piped for some reason doesn't accept lowercase country codes. Note: countries such as China or North Korea don't have trending videos, so they will always return an empty list.
  • \n
  • **kwargs - Additional keyword arguments to pass to requests.Session.get
  • \n
\n\n

Piped Documentation

\n", "signature": "(\n self,\n country_code: str = 'US',\n **kwargs\n) -> List[piped_api.models.videos.Video.RelatedStream]", "funcdef": "def"}, "piped_api.client.PipedClient.get_channel_by_id": {"fullname": "piped_api.client.PipedClient.get_channel_by_id", "modulename": "piped_api.client", "qualname": "PipedClient.get_channel_by_id", "type": "function", "doc": "

Gets information about a specific channel by its ID.

\n\n

Parameters:

\n\n
    \n
  • channel_id - The ID of the channel to get information for
  • \n
  • **kwargs - Additional keyword arguments to pass to requests.Session.get
  • \n
\n\n

Piped Documentation

\n", "signature": "(\n self,\n channel_id: str,\n nextpage: Optional[Dict[str, Optional[str]]] = None,\n **kwargs\n) -> Union[piped_api.models.channels.NextPageChannel, piped_api.models.channels.Channel]", "funcdef": "def"}, "piped_api.client.PipedClient.get_channel_by_name": {"fullname": "piped_api.client.PipedClient.get_channel_by_name", "modulename": "piped_api.client", "qualname": "PipedClient.get_channel_by_name", "type": "function", "doc": "

Gets information about a specific channel by its name.

\n\n

Parameters:

\n\n
    \n
  • channel_name - The name of the channel to get information for
  • \n
  • **kwargs - Additional keyword arguments to pass to requests.Session.get
  • \n
\n\n

Piped Documentation

\n", "signature": "(\n self,\n channel_name: str,\n **kwargs\n) -> piped_api.models.channels.Channel", "funcdef": "def"}, "piped_api.client.PipedClient.get_search_suggestions": {"fullname": "piped_api.client.PipedClient.get_search_suggestions", "modulename": "piped_api.client", "qualname": "PipedClient.get_search_suggestions", "type": "function", "doc": "

Obtains search suggestions for a query.

\n\n

Parameters:

\n\n
    \n
  • search_query - The query to get search suggestions for
  • \n
  • **kwargs - Additional keyword arguments to pass to requests.Session.get
  • \n
\n\n

Piped Documentation

\n", "signature": "(self, search_query: str, **kwargs) -> List[str]", "funcdef": "def"}, "piped_api.models": {"fullname": "piped_api.models", "modulename": "piped_api.models", "type": "module", "doc": "

\n"}, "piped_api.models.BasePipedModel": {"fullname": "piped_api.models.BasePipedModel", "modulename": "piped_api.models", "qualname": "BasePipedModel", "type": "class", "doc": "

Base class for all Piped models.

\n"}, "piped_api.models.BasePipedModel.__init__": {"fullname": "piped_api.models.BasePipedModel.__init__", "modulename": "piped_api.models", "qualname": "BasePipedModel.__init__", "type": "function", "doc": "

Parameters:

\n\n
    \n
  • data - The JSON (dict) data to initialize the model with.
  • \n
\n", "signature": "(self, data: Dict[str, Any])", "funcdef": "def"}, "piped_api.models.channels": {"fullname": "piped_api.models.channels", "modulename": "piped_api.models.channels", "type": "module", "doc": "

\n"}, "piped_api.models.channels.NextPageChannel": {"fullname": "piped_api.models.channels.NextPageChannel", "modulename": "piped_api.models.channels", "qualname": "NextPageChannel", "type": "class", "doc": "

Represents a channel obtained via the nextpage endpoint.

\n\n

This model contains only nextpage and relatedStreams. It's a parent for Channel.

\n", "bases": "piped_api.models.BasePipedModel"}, "piped_api.models.channels.NextPageChannel.nextpage": {"fullname": "piped_api.models.channels.NextPageChannel.nextpage", "modulename": "piped_api.models.channels", "qualname": "NextPageChannel.nextpage", "type": "variable", "doc": "

A JSON encoded string to be passed to the 'nextpage' endpoint(s) when\nobtaining paginated data.

\n", "annotation": ": str"}, "piped_api.models.channels.NextPageChannel.uploaded_videos": {"fullname": "piped_api.models.channels.NextPageChannel.uploaded_videos", "modulename": "piped_api.models.channels", "qualname": "NextPageChannel.uploaded_videos", "type": "variable", "doc": "

List of uploaded videos from the current fetched data

\n\n

There are max. 30 videos per page

\n", "annotation": ": List[piped_api.models.videos.Video.RelatedStream]"}, "piped_api.models.channels.Channel": {"fullname": "piped_api.models.channels.Channel", "modulename": "piped_api.models.channels", "qualname": "Channel", "type": "class", "doc": "

Represents a YouTube channel.

\n\n

Contains properties of NextPageChannel.

\n", "bases": "NextPageChannel"}, "piped_api.models.channels.Channel.id": {"fullname": "piped_api.models.channels.Channel.id", "modulename": "piped_api.models.channels", "qualname": "Channel.id", "type": "variable", "doc": "

The channel's ID

\n", "annotation": ": str"}, "piped_api.models.channels.Channel.name": {"fullname": "piped_api.models.channels.Channel.name", "modulename": "piped_api.models.channels", "qualname": "Channel.name", "type": "variable", "doc": "

The channel's name

\n", "annotation": ": str"}, "piped_api.models.channels.Channel.avatar_url": {"fullname": "piped_api.models.channels.Channel.avatar_url", "modulename": "piped_api.models.channels", "qualname": "Channel.avatar_url", "type": "variable", "doc": "

The channel's avatar URL

\n", "annotation": ": str"}, "piped_api.models.channels.Channel.banner_url": {"fullname": "piped_api.models.channels.Channel.banner_url", "modulename": "piped_api.models.channels", "qualname": "Channel.banner_url", "type": "variable", "doc": "

The channel's banner URL

\n", "annotation": ": str"}, "piped_api.models.channels.Channel.description": {"fullname": "piped_api.models.channels.Channel.description", "modulename": "piped_api.models.channels", "qualname": "Channel.description", "type": "variable", "doc": "

The channel's description

\n", "annotation": ": str"}, "piped_api.models.channels.Channel.subscriber_count": {"fullname": "piped_api.models.channels.Channel.subscriber_count", "modulename": "piped_api.models.channels", "qualname": "Channel.subscriber_count", "type": "variable", "doc": "

The number of subscribers the channel has

\n", "annotation": ": int"}, "piped_api.models.channels.Channel.verified": {"fullname": "piped_api.models.channels.Channel.verified", "modulename": "piped_api.models.channels", "qualname": "Channel.verified", "type": "variable", "doc": "

Whether or not the channel is verified by YouTube (has a badge)

\n", "annotation": ": bool"}, "piped_api.models.comments": {"fullname": "piped_api.models.comments", "modulename": "piped_api.models.comments", "type": "module", "doc": "

\n"}, "piped_api.models.comments.Comments": {"fullname": "piped_api.models.comments.Comments", "modulename": "piped_api.models.comments", "qualname": "Comments", "type": "class", "doc": "

Base class for all Piped models.

\n", "bases": "piped_api.models.BasePipedModel"}, "piped_api.models.comments.Comments.Comment": {"fullname": "piped_api.models.comments.Comments.Comment", "modulename": "piped_api.models.comments", "qualname": "Comments.Comment", "type": "class", "doc": "

Base class for all Piped models.

\n", "bases": "piped_api.models.BasePipedModel"}, "piped_api.models.comments.Comments.Comment.author": {"fullname": "piped_api.models.comments.Comments.Comment.author", "modulename": "piped_api.models.comments", "qualname": "Comments.Comment.author", "type": "variable", "doc": "

The name of the author of the comment

\n", "annotation": ": str"}, "piped_api.models.comments.Comments.Comment.comment_id": {"fullname": "piped_api.models.comments.Comments.Comment.comment_id", "modulename": "piped_api.models.comments", "qualname": "Comments.Comment.comment_id", "type": "variable", "doc": "

The comment ID

\n", "annotation": ": str"}, "piped_api.models.comments.Comments.Comment.comment_text": {"fullname": "piped_api.models.comments.Comments.Comment.comment_text", "modulename": "piped_api.models.comments", "qualname": "Comments.Comment.comment_text", "type": "variable", "doc": "

The text of the comment

\n", "annotation": ": str"}, "piped_api.models.comments.Comments.Comment.commented_time": {"fullname": "piped_api.models.comments.Comments.Comment.commented_time", "modulename": "piped_api.models.comments", "qualname": "Comments.Comment.commented_time", "type": "variable", "doc": "

The time the comment was made (format: 'x y ago').

\n\n

Note:

\n\n

The raw time from API also includes the '(edited)' suffix to mark comment as edited (if it was).\nBy accessing this property, the suffix is automatically removed.\nIf you for whatever reason want to keep the suffix, access this property directly via Comment.data['commentedTime']

\n", "annotation": ": str"}, "piped_api.models.comments.Comments.Comment.is_edited": {"fullname": "piped_api.models.comments.Comments.Comment.is_edited", "modulename": "piped_api.models.comments", "qualname": "Comments.Comment.is_edited", "type": "variable", "doc": "

Whether or not the comment is edited.

\n\n

Note:

\n\n

This property checks whether there is '(edited)' in the commentedTime property, because that's where you get that from.\nSee Comments.Comment.commented_time

\n", "annotation": ": bool"}, "piped_api.models.comments.Comments.Comment.commentor_url": {"fullname": "piped_api.models.comments.Comments.Comment.commentor_url", "modulename": "piped_api.models.comments", "qualname": "Comments.Comment.commentor_url", "type": "variable", "doc": "

The URL of the channel that made the comment

\n", "annotation": ": str"}, "piped_api.models.comments.Comments.Comment.replies_page": {"fullname": "piped_api.models.comments.Comments.Comment.replies_page", "modulename": "piped_api.models.comments", "qualname": "Comments.Comment.replies_page", "type": "variable", "doc": "

Same as Comments.nextpage, but to load replies.

\n\n

None means that there are no replies.

\n", "annotation": ": Optional[str]"}, "piped_api.models.comments.Comments.Comment.hearted": {"fullname": "piped_api.models.comments.Comments.Comment.hearted", "modulename": "piped_api.models.comments", "qualname": "Comments.Comment.hearted", "type": "variable", "doc": "

Whether or not the comment has been hearted

\n", "annotation": ": bool"}, "piped_api.models.comments.Comments.Comment.like_count": {"fullname": "piped_api.models.comments.Comments.Comment.like_count", "modulename": "piped_api.models.comments", "qualname": "Comments.Comment.like_count", "type": "variable", "doc": "

The number of likes the comment has

\n", "annotation": ": int"}, "piped_api.models.comments.Comments.Comment.pinned": {"fullname": "piped_api.models.comments.Comments.Comment.pinned", "modulename": "piped_api.models.comments", "qualname": "Comments.Comment.pinned", "type": "variable", "doc": "

Whether or not the comment is pinned

\n", "annotation": ": bool"}, "piped_api.models.comments.Comments.Comment.thumbnail": {"fullname": "piped_api.models.comments.Comments.Comment.thumbnail", "modulename": "piped_api.models.comments", "qualname": "Comments.Comment.thumbnail", "type": "variable", "doc": "

The thumbnail of the commentor's channel

\n", "annotation": ": str"}, "piped_api.models.comments.Comments.Comment.verified": {"fullname": "piped_api.models.comments.Comments.Comment.verified", "modulename": "piped_api.models.comments", "qualname": "Comments.Comment.verified", "type": "variable", "doc": "

Whether or not the author of the comment is verified

\n", "annotation": ": bool"}, "piped_api.models.comments.Comments.get_comments": {"fullname": "piped_api.models.comments.Comments.get_comments", "modulename": "piped_api.models.comments", "qualname": "Comments.get_comments", "type": "function", "doc": "

Obtain a list of comments

\n", "signature": "(self) -> List[piped_api.models.comments.Comments.Comment]", "funcdef": "def"}, "piped_api.models.comments.Comments.disabled": {"fullname": "piped_api.models.comments.Comments.disabled", "modulename": "piped_api.models.comments", "qualname": "Comments.disabled", "type": "variable", "doc": "

Whether or not the comments are disabled

\n", "annotation": ": bool"}, "piped_api.models.comments.Comments.nextpage": {"fullname": "piped_api.models.comments.Comments.nextpage", "modulename": "piped_api.models.comments", "qualname": "Comments.nextpage", "type": "variable", "doc": "

A JSON encoded page, which is used for the nextpage endpoint.

\n\n

If there is no nextpage data, this returns None.

\n", "annotation": ": Optional[str]"}, "piped_api.models.videos": {"fullname": "piped_api.models.videos", "modulename": "piped_api.models.videos", "type": "module", "doc": "

\n"}, "piped_api.models.videos.Video": {"fullname": "piped_api.models.videos.Video", "modulename": "piped_api.models.videos", "qualname": "Video", "type": "class", "doc": "

Base class for all Piped models.

\n", "bases": "piped_api.models.BasePipedModel"}, "piped_api.models.videos.Video.title": {"fullname": "piped_api.models.videos.Video.title", "modulename": "piped_api.models.videos", "qualname": "Video.title", "type": "variable", "doc": "

The title/name of the video

\n", "annotation": ": str"}, "piped_api.models.videos.Video.description": {"fullname": "piped_api.models.videos.Video.description", "modulename": "piped_api.models.videos", "qualname": "Video.description", "type": "variable", "doc": "

The description of the video

\n", "annotation": ": str"}, "piped_api.models.videos.Video.upload_date": {"fullname": "piped_api.models.videos.Video.upload_date", "modulename": "piped_api.models.videos", "qualname": "Video.upload_date", "type": "variable", "doc": "

The date the video was uploaded at.

\n\n

Note:

\n\n

Use Video.data['uploadDate'] to get the raw string that was obtained from the API - this package\nautomatically converts the raw string to a datetime.date object.

\n", "annotation": ": datetime.date"}, "piped_api.models.videos.Video.uploader": {"fullname": "piped_api.models.videos.Video.uploader", "modulename": "piped_api.models.videos", "qualname": "Video.uploader", "type": "variable", "doc": "

The channel name of the author of the video

\n", "annotation": ": str"}, "piped_api.models.videos.Video.uploader_url": {"fullname": "piped_api.models.videos.Video.uploader_url", "modulename": "piped_api.models.videos", "qualname": "Video.uploader_url", "type": "variable", "doc": "

The URI to the author's channel

\n", "annotation": ": str"}, "piped_api.models.videos.Video.uploader_avatar": {"fullname": "piped_api.models.videos.Video.uploader_avatar", "modulename": "piped_api.models.videos", "qualname": "Video.uploader_avatar", "type": "variable", "doc": "

The URL to the video author's avatar image

\n", "annotation": ": str"}, "piped_api.models.videos.Video.thumbnail_url": {"fullname": "piped_api.models.videos.Video.thumbnail_url", "modulename": "piped_api.models.videos", "qualname": "Video.thumbnail_url", "type": "variable", "doc": "

The URL to the video's thumbnail image

\n", "annotation": ": str"}, "piped_api.models.videos.Video.hls": {"fullname": "piped_api.models.videos.Video.hls", "modulename": "piped_api.models.videos", "qualname": "Video.hls", "type": "variable", "doc": "

The hls manifest URL, to be used for Livestreams

\n", "annotation": ": Optional[str]"}, "piped_api.models.videos.Video.dash": {"fullname": "piped_api.models.videos.Video.dash", "modulename": "piped_api.models.videos", "qualname": "Video.dash", "type": "variable", "doc": "

The dash manifest URL for OTF streams

\n", "annotation": ": Optional[str]"}, "piped_api.models.videos.Video.lbry_id": {"fullname": "piped_api.models.videos.Video.lbry_id", "modulename": "piped_api.models.videos", "qualname": "Video.lbry_id", "type": "variable", "doc": "

The lbry id of the video, if available. I assume this has something to do with https://lbry.com/

\n", "annotation": ": str"}, "piped_api.models.videos.Video.uploader_verified": {"fullname": "piped_api.models.videos.Video.uploader_verified", "modulename": "piped_api.models.videos", "qualname": "Video.uploader_verified", "type": "variable", "doc": "

Whether or not the channel that uploaded the video is verified by YouTube (badge)

\n", "annotation": ": str"}, "piped_api.models.videos.Video.duration": {"fullname": "piped_api.models.videos.Video.duration", "modulename": "piped_api.models.videos", "qualname": "Video.duration", "type": "variable", "doc": "

The duration of the video.

\n\n

Note:

\n\n

The original value from the API was in seconds (Video.data['duration']), but this package\nconverts it to a datetime.timedelta object.

\n", "annotation": ": datetime.timedelta"}, "piped_api.models.videos.Video.views": {"fullname": "piped_api.models.videos.Video.views", "modulename": "piped_api.models.videos", "qualname": "Video.views", "type": "variable", "doc": "

The number of views the video has received

\n", "annotation": ": int"}, "piped_api.models.videos.Video.likes": {"fullname": "piped_api.models.videos.Video.likes", "modulename": "piped_api.models.videos", "qualname": "Video.likes", "type": "variable", "doc": "

The amount of likes the video has received. -1 if hidden

\n", "annotation": ": int"}, "piped_api.models.videos.Video.dislikes": {"fullname": "piped_api.models.videos.Video.dislikes", "modulename": "piped_api.models.videos", "qualname": "Video.dislikes", "type": "variable", "doc": "

The amount of dislikes the video has received. -1 if hidden

\n\n

Note:

\n\n

This is obsolete since YouTube did a tiny gigantical little big whoopsie with their like system and screwed it all up\nYou can use awesome user-made projects such as https://returnyoutubedislike.com to obtain the dislike count

\n", "annotation": ": int"}, "piped_api.models.videos.Video.Stream": {"fullname": "piped_api.models.videos.Video.Stream", "modulename": "piped_api.models.videos", "qualname": "Video.Stream", "type": "class", "doc": "

Either an audio or video stream of a video

\n", "bases": "piped_api.models.BasePipedModel"}, "piped_api.models.videos.Video.Stream.url": {"fullname": "piped_api.models.videos.Video.Stream.url", "modulename": "piped_api.models.videos", "qualname": "Video.Stream.url", "type": "variable", "doc": "

The URL of the stream

\n", "annotation": ": str"}, "piped_api.models.videos.Video.Stream.format": {"fullname": "piped_api.models.videos.Video.Stream.format", "modulename": "piped_api.models.videos", "qualname": "Video.Stream.format", "type": "variable", "doc": "

The format of the stream ('M4A' or 'WEBMA_OPUS' or 'MPEG_4' or 'WEBM' or 'v3GPP'

\n\n

No, I don't know how many are there or what does each mean

\n", "annotation": ": str"}, "piped_api.models.videos.Video.Stream.quality": {"fullname": "piped_api.models.videos.Video.Stream.quality", "modulename": "piped_api.models.videos", "qualname": "Video.Stream.quality", "type": "variable", "doc": "

The standard quality we all know and love (e. g.: '240p' for video or '128k' for audio)

\n", "annotation": ": str"}, "piped_api.models.videos.Video.Stream.mime_type": {"fullname": "piped_api.models.videos.Video.Stream.mime_type", "modulename": "piped_api.models.videos", "qualname": "Video.Stream.mime_type", "type": "variable", "doc": "

If you come from web development (or other invidious area that works with these French mimes),\nthen you already know what this is. If not, consider checking the Mozilla documentation

\n", "annotation": ": str"}, "piped_api.models.videos.Video.Stream.codec": {"fullname": "piped_api.models.videos.Video.Stream.codec", "modulename": "piped_api.models.videos", "qualname": "Video.Stream.codec", "type": "variable", "doc": "

What is this? I don't know. A codec?

\n", "annotation": ": str"}, "piped_api.models.videos.Video.Stream.video_only": {"fullname": "piped_api.models.videos.Video.Stream.video_only", "modulename": "piped_api.models.videos", "qualname": "Video.Stream.video_only", "type": "variable", "doc": "

Whether or not the stream is video only (AKA. muted video)

\n", "annotation": ": bool"}, "piped_api.models.videos.Video.Stream.bitrate": {"fullname": "piped_api.models.videos.Video.Stream.bitrate", "modulename": "piped_api.models.videos", "qualname": "Video.Stream.bitrate", "type": "variable", "doc": "

The bitrate of the stream

\n", "annotation": ": int"}, "piped_api.models.videos.Video.Stream.init_start": {"fullname": "piped_api.models.videos.Video.Stream.init_start", "modulename": "piped_api.models.videos", "qualname": "Video.Stream.init_start", "type": "variable", "doc": "

Not sure what this does, but it seems to be useful for creating dash streams

\n", "annotation": ": int"}, "piped_api.models.videos.Video.Stream.init_end": {"fullname": "piped_api.models.videos.Video.Stream.init_end", "modulename": "piped_api.models.videos", "qualname": "Video.Stream.init_end", "type": "variable", "doc": "

Not sure what this does, but it seems to be useful for creating dash streams

\n", "annotation": ": int"}, "piped_api.models.videos.Video.Stream.index_start": {"fullname": "piped_api.models.videos.Video.Stream.index_start", "modulename": "piped_api.models.videos", "qualname": "Video.Stream.index_start", "type": "variable", "doc": "

Not sure what this does, but it seems to be useful for creating dash streams

\n", "annotation": ": int"}, "piped_api.models.videos.Video.Stream.index_end": {"fullname": "piped_api.models.videos.Video.Stream.index_end", "modulename": "piped_api.models.videos", "qualname": "Video.Stream.index_end", "type": "variable", "doc": "

Not sure what this does, but it seems to be useful for creating dash streams

\n", "annotation": ": int"}, "piped_api.models.videos.Video.Stream.width": {"fullname": "piped_api.models.videos.Video.Stream.width", "modulename": "piped_api.models.videos", "qualname": "Video.Stream.width", "type": "variable", "doc": "

The width of the stream. '0' for audio streams (makes sense)

\n", "annotation": ": int"}, "piped_api.models.videos.Video.Stream.height": {"fullname": "piped_api.models.videos.Video.Stream.height", "modulename": "piped_api.models.videos", "qualname": "Video.Stream.height", "type": "variable", "doc": "

The height of the stream. '0' for audio streams (makes sense)

\n", "annotation": ": int"}, "piped_api.models.videos.Video.Stream.fps": {"fullname": "piped_api.models.videos.Video.Stream.fps", "modulename": "piped_api.models.videos", "qualname": "Video.Stream.fps", "type": "variable", "doc": "

Frames Per Second. This is usually '0' for audio and '30' or '60' for video

\n", "annotation": ": int"}, "piped_api.models.videos.Video.get_streams": {"fullname": "piped_api.models.videos.Video.get_streams", "modulename": "piped_api.models.videos", "qualname": "Video.get_streams", "type": "function", "doc": "

Get the streams of a video.

\n\n

Parameters:

\n\n
    \n
  • type - The type of stream to get. Either 'video' or 'audio'
  • \n
\n", "signature": "(\n self,\n type: Literal['video', 'audio'] = 'video'\n) -> List[piped_api.models.videos.Video.Stream]", "funcdef": "def"}, "piped_api.models.videos.Video.RelatedStream": {"fullname": "piped_api.models.videos.Video.RelatedStream", "modulename": "piped_api.models.videos", "qualname": "Video.RelatedStream", "type": "class", "doc": "

A related stream (e. g.: related video to the current one from the right sidebar, video related to/uploaded by a channel and trending video).

\n", "bases": "piped_api.models.BasePipedModel"}, "piped_api.models.videos.Video.RelatedStream.url": {"fullname": "piped_api.models.videos.Video.RelatedStream.url", "modulename": "piped_api.models.videos", "qualname": "Video.RelatedStream.url", "type": "variable", "doc": "

The URL to the related video

\n", "annotation": ": str"}, "piped_api.models.videos.Video.RelatedStream.title": {"fullname": "piped_api.models.videos.Video.RelatedStream.title", "modulename": "piped_api.models.videos", "qualname": "Video.RelatedStream.title", "type": "variable", "doc": "

The title of the related video

\n", "annotation": ": str"}, "piped_api.models.videos.Video.RelatedStream.thumbnail": {"fullname": "piped_api.models.videos.Video.RelatedStream.thumbnail", "modulename": "piped_api.models.videos", "qualname": "Video.RelatedStream.thumbnail", "type": "variable", "doc": "

The thumbnail URL of the related video

\n", "annotation": ": str"}, "piped_api.models.videos.Video.RelatedStream.uploader_name": {"fullname": "piped_api.models.videos.Video.RelatedStream.uploader_name", "modulename": "piped_api.models.videos", "qualname": "Video.RelatedStream.uploader_name", "type": "variable", "doc": "

The name of the channel that uploaded the related video

\n", "annotation": ": str"}, "piped_api.models.videos.Video.RelatedStream.uploader_url": {"fullname": "piped_api.models.videos.Video.RelatedStream.uploader_url", "modulename": "piped_api.models.videos", "qualname": "Video.RelatedStream.uploader_url", "type": "variable", "doc": "

The URL of the channel that uploaded the related video

\n", "annotation": ": str"}, "piped_api.models.videos.Video.RelatedStream.uploader_avatar": {"fullname": "piped_api.models.videos.Video.RelatedStream.uploader_avatar", "modulename": "piped_api.models.videos", "qualname": "Video.RelatedStream.uploader_avatar", "type": "variable", "doc": "

The URL of the channel's avatar

\n", "annotation": ": str"}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"fullname": "piped_api.models.videos.Video.RelatedStream.uploaded_date", "modulename": "piped_api.models.videos", "qualname": "Video.RelatedStream.uploaded_date", "type": "variable", "doc": "

The date the related video was uploaded (format: 'x y ago')

\n", "annotation": ": str"}, "piped_api.models.videos.Video.RelatedStream.short_description": {"fullname": "piped_api.models.videos.Video.RelatedStream.short_description", "modulename": "piped_api.models.videos", "qualname": "Video.RelatedStream.short_description", "type": "variable", "doc": "

The short description of the related video. As far as I know, this is always None - perhaps some unused YouTube feature?

\n", "annotation": ": Optional[str]"}, "piped_api.models.videos.Video.RelatedStream.duration": {"fullname": "piped_api.models.videos.Video.RelatedStream.duration", "modulename": "piped_api.models.videos", "qualname": "Video.RelatedStream.duration", "type": "variable", "doc": "

The duration of the related video.

\n\n

Note:

\n\n

The original value from the API was in seconds (Video.data['duration']), but this package\nconverts it to a datetime.timedelta object.

\n", "annotation": ": datetime.timedelta"}, "piped_api.models.videos.Video.RelatedStream.views": {"fullname": "piped_api.models.videos.Video.RelatedStream.views", "modulename": "piped_api.models.videos", "qualname": "Video.RelatedStream.views", "type": "variable", "doc": "

The amount of views the related video has received

\n", "annotation": ": str"}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"fullname": "piped_api.models.videos.Video.RelatedStream.uploaded", "modulename": "piped_api.models.videos", "qualname": "Video.RelatedStream.uploaded", "type": "variable", "doc": "

The date the related video was uploaded (as a datetime.datetime object).

\n\n

Note:

\n\n

The original value was in milliseconds since epoch (Video.data['uploaded']), but this package converts it to a datetime.datetime object.

\n", "annotation": ": datetime.datetime"}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"fullname": "piped_api.models.videos.Video.RelatedStream.uploader_verified", "modulename": "piped_api.models.videos", "qualname": "Video.RelatedStream.uploader_verified", "type": "variable", "doc": "

Whether or not the channel that uploaded the related video is verified by YouTube (e. g.: has badge)

\n", "annotation": ": bool"}, "piped_api.models.videos.Video.related_videos": {"fullname": "piped_api.models.videos.Video.related_videos", "modulename": "piped_api.models.videos", "qualname": "Video.related_videos", "type": "variable", "doc": "

List of related streams

\n", "annotation": ": List[piped_api.models.videos.Video.RelatedStream]"}, "piped_api.models.videos.Video.Subtitle": {"fullname": "piped_api.models.videos.Video.Subtitle", "modulename": "piped_api.models.videos", "qualname": "Video.Subtitle", "type": "class", "doc": "

Base class for all Piped models.

\n", "bases": "piped_api.models.BasePipedModel"}, "piped_api.models.videos.Video.Subtitle.url": {"fullname": "piped_api.models.videos.Video.Subtitle.url", "modulename": "piped_api.models.videos", "qualname": "Video.Subtitle.url", "type": "variable", "doc": "

The URL to the subtitle

\n", "annotation": ": str"}, "piped_api.models.videos.Video.Subtitle.mime_type": {"fullname": "piped_api.models.videos.Video.Subtitle.mime_type", "modulename": "piped_api.models.videos", "qualname": "Video.Subtitle.mime_type", "type": "variable", "doc": "

If you come from web development (or other invidious area that works with these French mimes),\nthen you already know what this is. If not, consider checking the Mozilla documentation

\n", "annotation": ": str"}, "piped_api.models.videos.Video.Subtitle.name": {"fullname": "piped_api.models.videos.Video.Subtitle.name", "modulename": "piped_api.models.videos", "qualname": "Video.Subtitle.name", "type": "variable", "doc": "

The name of the language the captions are in

\n", "annotation": ": str"}, "piped_api.models.videos.Video.Subtitle.code": {"fullname": "piped_api.models.videos.Video.Subtitle.code", "modulename": "piped_api.models.videos", "qualname": "Video.Subtitle.code", "type": "variable", "doc": "

The country code for the captions

\n", "annotation": ": str"}, "piped_api.models.videos.Video.Subtitle.auto_generated": {"fullname": "piped_api.models.videos.Video.Subtitle.auto_generated", "modulename": "piped_api.models.videos", "qualname": "Video.Subtitle.auto_generated", "type": "variable", "doc": "

Whether or not the captions are auto-generated by YouTube

\n", "annotation": ": bool"}, "piped_api.models.videos.Video.subtitles": {"fullname": "piped_api.models.videos.Video.subtitles", "modulename": "piped_api.models.videos", "qualname": "Video.subtitles", "type": "variable", "doc": "

A list of captions for the video

\n", "annotation": ": List[piped_api.models.videos.Video.Subtitle]"}, "piped_api.models.videos.Video.livestream": {"fullname": "piped_api.models.videos.Video.livestream", "modulename": "piped_api.models.videos", "qualname": "Video.livestream", "type": "variable", "doc": "

Whether or not the video is a livestream

\n", "annotation": ": bool"}, "piped_api.models.videos.Video.proxy_url": {"fullname": "piped_api.models.videos.Video.proxy_url", "modulename": "piped_api.models.videos", "qualname": "Video.proxy_url", "type": "variable", "doc": "

The base URL for Piped proxy

\n", "annotation": ": str"}, "piped_api.models.videos.Video.Chapter": {"fullname": "piped_api.models.videos.Video.Chapter", "modulename": "piped_api.models.videos", "qualname": "Video.Chapter", "type": "class", "doc": "

A video chapter (or \"section\").

\n\n

YouTube displays a list of chapters, if there are timestamps in the description.

\n", "bases": "piped_api.models.BasePipedModel"}, "piped_api.models.videos.Video.Chapter.title": {"fullname": "piped_api.models.videos.Video.Chapter.title", "modulename": "piped_api.models.videos", "qualname": "Video.Chapter.title", "type": "variable", "doc": "

The title of the chapter

\n", "annotation": ": str"}, "piped_api.models.videos.Video.Chapter.image": {"fullname": "piped_api.models.videos.Video.Chapter.image", "modulename": "piped_api.models.videos", "qualname": "Video.Chapter.image", "type": "variable", "doc": "

The image URL for the chapter

\n", "annotation": ": str"}, "piped_api.models.videos.Video.Chapter.start": {"fullname": "piped_api.models.videos.Video.Chapter.start", "modulename": "piped_api.models.videos", "qualname": "Video.Chapter.start", "type": "variable", "doc": "

The start time of the chapter

\n\n

Note:

\n\n

The original value from the API was in seconds, this package automatically converts it to datetime.timedelta

\n", "annotation": ": datetime.timedelta"}, "piped_api.models.videos.Video.chapters": {"fullname": "piped_api.models.videos.Video.chapters", "modulename": "piped_api.models.videos", "qualname": "Video.chapters", "type": "variable", "doc": "

A list of chapters for the video

\n", "annotation": ": List[piped_api.models.videos.Video.Chapter]"}}, "docInfo": {"piped_api": {"qualname": 0, "fullname": 2, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 596}, "piped_api.client": {"qualname": 0, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "piped_api.client.APIError": {"qualname": 1, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 0, "bases": 2, "doc": 8}, "piped_api.client.PipedClient": {"qualname": 1, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 19}, "piped_api.client.PipedClient.__init__": {"qualname": 3, "fullname": 6, "annotation": 0, "default_value": 0, "signature": 16, "bases": 0, "doc": 60}, "piped_api.client.PipedClient.get_video": {"qualname": 3, "fullname": 6, "annotation": 0, "default_value": 0, "signature": 12, "bases": 0, "doc": 53}, "piped_api.client.PipedClient.get_comments": {"qualname": 3, "fullname": 6, "annotation": 0, "default_value": 0, "signature": 16, "bases": 0, "doc": 94}, "piped_api.client.PipedClient.get_trending": {"qualname": 3, "fullname": 6, "annotation": 0, "default_value": 0, "signature": 14, "bases": 0, "doc": 118}, "piped_api.client.PipedClient.get_channel_by_id": {"qualname": 5, "fullname": 8, "annotation": 0, "default_value": 0, "signature": 21, "bases": 0, "doc": 56}, "piped_api.client.PipedClient.get_channel_by_name": {"qualname": 5, "fullname": 8, "annotation": 0, "default_value": 0, "signature": 12, "bases": 0, "doc": 56}, "piped_api.client.PipedClient.get_search_suggestions": {"qualname": 4, "fullname": 7, "annotation": 0, "default_value": 0, "signature": 8, "bases": 0, "doc": 51}, "piped_api.models": {"qualname": 0, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "piped_api.models.BasePipedModel": {"qualname": 1, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 9}, "piped_api.models.BasePipedModel.__init__": {"qualname": 3, "fullname": 6, "annotation": 0, "default_value": 0, "signature": 6, "bases": 0, "doc": 24}, "piped_api.models.channels": {"qualname": 0, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "piped_api.models.channels.NextPageChannel": {"qualname": 1, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 35}, "piped_api.models.channels.NextPageChannel.nextpage": {"qualname": 2, "fullname": 6, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 23}, "piped_api.models.channels.NextPageChannel.uploaded_videos": {"qualname": 3, "fullname": 7, "annotation": 7, "default_value": 0, "signature": 0, "bases": 0, "doc": 20}, "piped_api.models.channels.Channel": {"qualname": 1, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 0, "bases": 1, "doc": 16}, "piped_api.models.channels.Channel.id": {"qualname": 2, "fullname": 6, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 6}, "piped_api.models.channels.Channel.name": {"qualname": 2, "fullname": 6, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 6}, "piped_api.models.channels.Channel.avatar_url": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 7}, "piped_api.models.channels.Channel.banner_url": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 7}, "piped_api.models.channels.Channel.description": {"qualname": 2, "fullname": 6, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 6}, "piped_api.models.channels.Channel.subscriber_count": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 9}, "piped_api.models.channels.Channel.verified": {"qualname": 2, "fullname": 6, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 15}, "piped_api.models.comments": {"qualname": 0, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "piped_api.models.comments.Comments": {"qualname": 1, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 9}, "piped_api.models.comments.Comments.Comment": {"qualname": 2, "fullname": 6, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 9}, "piped_api.models.comments.Comments.Comment.author": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 10}, "piped_api.models.comments.Comments.Comment.comment_id": {"qualname": 4, "fullname": 8, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 5}, "piped_api.models.comments.Comments.Comment.comment_text": {"qualname": 4, "fullname": 8, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 7}, "piped_api.models.comments.Comments.Comment.commented_time": {"qualname": 4, "fullname": 8, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 74}, "piped_api.models.comments.Comments.Comment.is_edited": {"qualname": 4, "fullname": 8, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 47}, "piped_api.models.comments.Comments.Comment.commentor_url": {"qualname": 4, "fullname": 8, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 11}, "piped_api.models.comments.Comments.Comment.replies_page": {"qualname": 4, "fullname": 8, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 25}, "piped_api.models.comments.Comments.Comment.hearted": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 10}, "piped_api.models.comments.Comments.Comment.like_count": {"qualname": 4, "fullname": 8, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 9}, "piped_api.models.comments.Comments.Comment.pinned": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 9}, "piped_api.models.comments.Comments.Comment.thumbnail": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 9}, "piped_api.models.comments.Comments.Comment.verified": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 12}, "piped_api.models.comments.Comments.get_comments": {"qualname": 3, "fullname": 7, "annotation": 0, "default_value": 0, "signature": 9, "bases": 0, "doc": 7}, "piped_api.models.comments.Comments.disabled": {"qualname": 2, "fullname": 6, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 9}, "piped_api.models.comments.Comments.nextpage": {"qualname": 2, "fullname": 6, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 28}, "piped_api.models.videos": {"qualname": 0, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "piped_api.models.videos.Video": {"qualname": 1, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 9}, "piped_api.models.videos.Video.title": {"qualname": 2, "fullname": 6, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 7}, "piped_api.models.videos.Video.description": {"qualname": 2, "fullname": 6, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 7}, "piped_api.models.videos.Video.upload_date": {"qualname": 3, "fullname": 7, "annotation": 3, "default_value": 0, "signature": 0, "bases": 0, "doc": 48}, "piped_api.models.videos.Video.uploader": {"qualname": 2, "fullname": 6, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 11}, "piped_api.models.videos.Video.uploader_url": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 9}, "piped_api.models.videos.Video.uploader_avatar": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 11}, "piped_api.models.videos.Video.thumbnail_url": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 10}, "piped_api.models.videos.Video.hls": {"qualname": 2, "fullname": 6, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 11}, "piped_api.models.videos.Video.dash": {"qualname": 2, "fullname": 6, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 9}, "piped_api.models.videos.Video.lbry_id": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 20}, "piped_api.models.videos.Video.uploader_verified": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 17}, "piped_api.models.videos.Video.duration": {"qualname": 2, "fullname": 6, "annotation": 3, "default_value": 0, "signature": 0, "bases": 0, "doc": 41}, "piped_api.models.videos.Video.views": {"qualname": 2, "fullname": 6, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 10}, "piped_api.models.videos.Video.likes": {"qualname": 2, "fullname": 6, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 16}, "piped_api.models.videos.Video.dislikes": {"qualname": 2, "fullname": 6, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 58}, "piped_api.models.videos.Video.Stream": {"qualname": 2, "fullname": 6, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 11}, "piped_api.models.videos.Video.Stream.url": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 7}, "piped_api.models.videos.Video.Stream.format": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 38}, "piped_api.models.videos.Video.Stream.quality": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 29}, "piped_api.models.videos.Video.Stream.mime_type": {"qualname": 4, "fullname": 8, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 34}, "piped_api.models.videos.Video.Stream.codec": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 11}, "piped_api.models.videos.Video.Stream.video_only": {"qualname": 4, "fullname": 8, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 14}, "piped_api.models.videos.Video.Stream.bitrate": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 7}, "piped_api.models.videos.Video.Stream.init_start": {"qualname": 4, "fullname": 8, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 17}, "piped_api.models.videos.Video.Stream.init_end": {"qualname": 4, "fullname": 8, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 17}, "piped_api.models.videos.Video.Stream.index_start": {"qualname": 4, "fullname": 8, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 17}, "piped_api.models.videos.Video.Stream.index_end": {"qualname": 4, "fullname": 8, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 17}, "piped_api.models.videos.Video.Stream.width": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 18}, "piped_api.models.videos.Video.Stream.height": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 18}, "piped_api.models.videos.Video.Stream.fps": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 29}, "piped_api.models.videos.Video.get_streams": {"qualname": 3, "fullname": 7, "annotation": 0, "default_value": 0, "signature": 15, "bases": 0, "doc": 39}, "piped_api.models.videos.Video.RelatedStream": {"qualname": 2, "fullname": 6, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 28}, "piped_api.models.videos.Video.RelatedStream.url": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 8}, "piped_api.models.videos.Video.RelatedStream.title": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 8}, "piped_api.models.videos.Video.RelatedStream.thumbnail": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 9}, "piped_api.models.videos.Video.RelatedStream.uploader_name": {"qualname": 4, "fullname": 8, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 12}, "piped_api.models.videos.Video.RelatedStream.uploader_url": {"qualname": 4, "fullname": 8, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 12}, "piped_api.models.videos.Video.RelatedStream.uploader_avatar": {"qualname": 4, "fullname": 8, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 9}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"qualname": 4, "fullname": 8, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 18}, "piped_api.models.videos.Video.RelatedStream.short_description": {"qualname": 4, "fullname": 8, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 25}, "piped_api.models.videos.Video.RelatedStream.duration": {"qualname": 3, "fullname": 7, "annotation": 3, "default_value": 0, "signature": 0, "bases": 0, "doc": 42}, "piped_api.models.videos.Video.RelatedStream.views": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 11}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"qualname": 3, "fullname": 7, "annotation": 3, "default_value": 0, "signature": 0, "bases": 0, "doc": 49}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"qualname": 4, "fullname": 8, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 22}, "piped_api.models.videos.Video.related_videos": {"qualname": 3, "fullname": 7, "annotation": 7, "default_value": 0, "signature": 0, "bases": 0, "doc": 6}, "piped_api.models.videos.Video.Subtitle": {"qualname": 2, "fullname": 6, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 9}, "piped_api.models.videos.Video.Subtitle.url": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 7}, "piped_api.models.videos.Video.Subtitle.mime_type": {"qualname": 4, "fullname": 8, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 34}, "piped_api.models.videos.Video.Subtitle.name": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 11}, "piped_api.models.videos.Video.Subtitle.code": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 8}, "piped_api.models.videos.Video.Subtitle.auto_generated": {"qualname": 4, "fullname": 8, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 12}, "piped_api.models.videos.Video.subtitles": {"qualname": 2, "fullname": 6, "annotation": 7, "default_value": 0, "signature": 0, "bases": 0, "doc": 9}, "piped_api.models.videos.Video.livestream": {"qualname": 2, "fullname": 6, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 10}, "piped_api.models.videos.Video.proxy_url": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 8}, "piped_api.models.videos.Video.Chapter": {"qualname": 2, "fullname": 6, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 24}, "piped_api.models.videos.Video.Chapter.title": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 7}, "piped_api.models.videos.Video.Chapter.image": {"qualname": 3, "fullname": 7, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 8}, "piped_api.models.videos.Video.Chapter.start": {"qualname": 3, "fullname": 7, "annotation": 3, "default_value": 0, "signature": 0, "bases": 0, "doc": 32}, "piped_api.models.videos.Video.chapters": {"qualname": 2, "fullname": 6, "annotation": 7, "default_value": 0, "signature": 0, "bases": 0, "doc": 9}}, "length": 105, "save": true}, "index": {"qualname": {"root": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}, "piped_api.models.BasePipedModel.__init__": {"tf": 1}}, "df": 2, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.client.APIError": {"tf": 1}}, "df": 1}}}}}}}, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.channels.Channel.avatar_url": {"tf": 1}, "piped_api.models.videos.Video.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_avatar": {"tf": 1}}, "df": 3}}}}}, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.comments.Comments.Comment.author": {"tf": 1}}, "df": 1}}}, "o": {"docs": {"piped_api.models.videos.Video.Subtitle.auto_generated": {"tf": 1}}, "df": 1}}}}, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.client.PipedClient": {"tf": 1}, "piped_api.client.PipedClient.__init__": {"tf": 1}, "piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}}, "df": 8}}}}}}}}}, "n": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.comments.Comments.Comment.pinned": {"tf": 1}}, "df": 1}}}}}, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1}}, "df": 1}}}, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.models.videos.Video.proxy_url": {"tf": 1}}, "df": 1}}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}, "piped_api.models.BasePipedModel.__init__": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}}, "df": 4}}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "x": {"docs": {"piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}}, "df": 2}}}}, "d": {"docs": {"piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.models.channels.Channel.id": {"tf": 1}, "piped_api.models.comments.Comments.Comment.comment_id": {"tf": 1}, "piped_api.models.videos.Video.lbry_id": {"tf": 1}}, "df": 4}, "s": {"docs": {"piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}}, "df": 1}, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.Chapter.image": {"tf": 1}}, "df": 1}}}}}, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}, "piped_api.models.comments.Comments.get_comments": {"tf": 1}, "piped_api.models.videos.Video.get_streams": {"tf": 1}}, "df": 8}, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.videos.Video.Subtitle.auto_generated": {"tf": 1}}, "df": 1}}}}}}}}}, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {"piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.models.videos.Video": {"tf": 1}, "piped_api.models.videos.Video.title": {"tf": 1}, "piped_api.models.videos.Video.description": {"tf": 1}, "piped_api.models.videos.Video.upload_date": {"tf": 1}, "piped_api.models.videos.Video.uploader": {"tf": 1}, "piped_api.models.videos.Video.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.thumbnail_url": {"tf": 1}, "piped_api.models.videos.Video.hls": {"tf": 1}, "piped_api.models.videos.Video.dash": {"tf": 1}, "piped_api.models.videos.Video.lbry_id": {"tf": 1}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.views": {"tf": 1}, "piped_api.models.videos.Video.likes": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.Stream": {"tf": 1}, "piped_api.models.videos.Video.Stream.url": {"tf": 1}, "piped_api.models.videos.Video.Stream.format": {"tf": 1}, "piped_api.models.videos.Video.Stream.quality": {"tf": 1}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Stream.codec": {"tf": 1}, "piped_api.models.videos.Video.Stream.video_only": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Stream.bitrate": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.width": {"tf": 1}, "piped_api.models.videos.Video.Stream.height": {"tf": 1}, "piped_api.models.videos.Video.Stream.fps": {"tf": 1}, "piped_api.models.videos.Video.get_streams": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.title": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.thumbnail": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_name": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.views": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.related_videos": {"tf": 1}, "piped_api.models.videos.Video.Subtitle": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.url": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.name": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.code": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.auto_generated": {"tf": 1}, "piped_api.models.videos.Video.subtitles": {"tf": 1}, "piped_api.models.videos.Video.livestream": {"tf": 1}, "piped_api.models.videos.Video.proxy_url": {"tf": 1}, "piped_api.models.videos.Video.Chapter": {"tf": 1}, "piped_api.models.videos.Video.Chapter.title": {"tf": 1}, "piped_api.models.videos.Video.Chapter.image": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}, "piped_api.models.videos.Video.chapters": {"tf": 1}}, "df": 61, "s": {"docs": {"piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.videos.Video.related_videos": {"tf": 1}}, "df": 2}}}}, "e": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.videos.Video.views": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.views": {"tf": 1}}, "df": 2}}}}, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.channels.Channel.verified": {"tf": 1}, "piped_api.models.comments.Comments.Comment.verified": {"tf": 1}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}}, "df": 4}}}}}}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.comments.Comments.Comment": {"tf": 1}, "piped_api.models.comments.Comments.Comment.author": {"tf": 1}, "piped_api.models.comments.Comments.Comment.comment_id": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.comment_text": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commentor_url": {"tf": 1}, "piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1}, "piped_api.models.comments.Comments.Comment.hearted": {"tf": 1}, "piped_api.models.comments.Comments.Comment.like_count": {"tf": 1}, "piped_api.models.comments.Comments.Comment.pinned": {"tf": 1}, "piped_api.models.comments.Comments.Comment.thumbnail": {"tf": 1}, "piped_api.models.comments.Comments.Comment.verified": {"tf": 1}}, "df": 13, "s": {"docs": {"piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.models.comments.Comments": {"tf": 1}, "piped_api.models.comments.Comments.Comment": {"tf": 1}, "piped_api.models.comments.Comments.Comment.author": {"tf": 1}, "piped_api.models.comments.Comments.Comment.comment_id": {"tf": 1}, "piped_api.models.comments.Comments.Comment.comment_text": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commentor_url": {"tf": 1}, "piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1}, "piped_api.models.comments.Comments.Comment.hearted": {"tf": 1}, "piped_api.models.comments.Comments.Comment.like_count": {"tf": 1}, "piped_api.models.comments.Comments.Comment.pinned": {"tf": 1}, "piped_api.models.comments.Comments.Comment.thumbnail": {"tf": 1}, "piped_api.models.comments.Comments.Comment.verified": {"tf": 1}, "piped_api.models.comments.Comments.get_comments": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.disabled": {"tf": 1}, "piped_api.models.comments.Comments.nextpage": {"tf": 1}}, "df": 18}, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}}, "df": 1}}, "o": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.comments.Comments.Comment.commentor_url": {"tf": 1}}, "df": 1}}}}}}}, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.channels.Channel.subscriber_count": {"tf": 1}, "piped_api.models.comments.Comments.Comment.like_count": {"tf": 1}}, "df": 2}}}, "d": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.Subtitle.code": {"tf": 1}}, "df": 1, "c": {"docs": {"piped_api.models.videos.Video.Stream.codec": {"tf": 1}}, "df": 1}}}}, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.models.channels.Channel": {"tf": 1}, "piped_api.models.channels.Channel.id": {"tf": 1}, "piped_api.models.channels.Channel.name": {"tf": 1}, "piped_api.models.channels.Channel.avatar_url": {"tf": 1}, "piped_api.models.channels.Channel.banner_url": {"tf": 1}, "piped_api.models.channels.Channel.description": {"tf": 1}, "piped_api.models.channels.Channel.subscriber_count": {"tf": 1}, "piped_api.models.channels.Channel.verified": {"tf": 1}}, "df": 10}}}}, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.videos.Video.Chapter": {"tf": 1}, "piped_api.models.videos.Video.Chapter.title": {"tf": 1}, "piped_api.models.videos.Video.Chapter.image": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}}, "df": 4, "s": {"docs": {"piped_api.models.videos.Video.chapters": {"tf": 1}}, "df": 1}}}}}}}}, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 1}}}}}}}, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.comments.Comments.Comment.comment_text": {"tf": 1}}, "df": 1}}}, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}}, "df": 1}}, "t": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.title": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.title": {"tf": 1}, "piped_api.models.videos.Video.Chapter.title": {"tf": 1}}, "df": 3}}}}, "h": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.models.comments.Comments.Comment.thumbnail": {"tf": 1}, "piped_api.models.videos.Video.thumbnail_url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.thumbnail": {"tf": 1}}, "df": 3}}}}}}}}, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}}, "df": 2}}}}, "b": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}}, "df": 2}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.models.BasePipedModel": {"tf": 1}, "piped_api.models.BasePipedModel.__init__": {"tf": 1}}, "df": 2}}}}}}}}}}}}, "n": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.channels.Channel.banner_url": {"tf": 1}}, "df": 1}}}}}, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.Stream.bitrate": {"tf": 1}}, "df": 1}}}}}}}, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.models.channels.Channel.name": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_name": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.name": {"tf": 1}}, "df": 4}}}, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.channels.NextPageChannel.nextpage": {"tf": 1}, "piped_api.models.comments.Comments.nextpage": {"tf": 1}}, "df": 2, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.models.channels.NextPageChannel": {"tf": 1}, "piped_api.models.channels.NextPageChannel.nextpage": {"tf": 1}, "piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}}, "df": 3}}}}}}}}}}}}}}}, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}}, "df": 1}}}}}, "u": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}}, "df": 1}}}}}}}}}, "b": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.channels.Channel.subscriber_count": {"tf": 1}}, "df": 1}}}}}}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.Subtitle": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.url": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.name": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.code": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.auto_generated": {"tf": 1}}, "df": 6, "s": {"docs": {"piped_api.models.videos.Video.subtitles": {"tf": 1}}, "df": 1}}}}}}}}, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {"piped_api.models.videos.Video.Stream": {"tf": 1}, "piped_api.models.videos.Video.Stream.url": {"tf": 1}, "piped_api.models.videos.Video.Stream.format": {"tf": 1}, "piped_api.models.videos.Video.Stream.quality": {"tf": 1}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Stream.codec": {"tf": 1}, "piped_api.models.videos.Video.Stream.video_only": {"tf": 1}, "piped_api.models.videos.Video.Stream.bitrate": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.width": {"tf": 1}, "piped_api.models.videos.Video.Stream.height": {"tf": 1}, "piped_api.models.videos.Video.Stream.fps": {"tf": 1}}, "df": 15, "s": {"docs": {"piped_api.models.videos.Video.get_streams": {"tf": 1}}, "df": 1}}}}}, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}}, "df": 3}}}}, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}}, "df": 1}}}}}, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.videos.Video.upload_date": {"tf": 1}}, "df": 1, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}}, "df": 3}, "r": {"docs": {"piped_api.models.videos.Video.uploader": {"tf": 1}, "piped_api.models.videos.Video.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_name": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}}, "df": 8}}}}}}}, "r": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.models.channels.Channel.avatar_url": {"tf": 1}, "piped_api.models.channels.Channel.banner_url": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commentor_url": {"tf": 1}, "piped_api.models.videos.Video.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.thumbnail_url": {"tf": 1}, "piped_api.models.videos.Video.Stream.url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.url": {"tf": 1}, "piped_api.models.videos.Video.proxy_url": {"tf": 1}}, "df": 10}}}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"piped_api.models.channels.Channel.description": {"tf": 1}, "piped_api.models.videos.Video.description": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}}, "df": 3}}}}}}}}}}, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.comments.Comments.disabled": {"tf": 1}}, "df": 1}}}}}, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 1}}}}}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.upload_date": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"tf": 1}}, "df": 2}}, "s": {"docs": {}, "df": 0, "h": {"docs": {"piped_api.models.videos.Video.dash": {"tf": 1}}, "df": 1}}}, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}}, "df": 2}}}}}}}}, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}}, "df": 1}}}}}, "n": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}}, "df": 2}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1}}, "df": 1}}}}}, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.videos.Video.related_videos": {"tf": 1}}, "df": 1, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {"piped_api.models.videos.Video.RelatedStream": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.title": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.thumbnail": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_name": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.views": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}}, "df": 13}}}}}}}}}}}}}, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.comments.Comments.Comment.hearted": {"tf": 1}}, "df": 1}}}}}, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.videos.Video.Stream.height": {"tf": 1}}, "df": 1}}}}}, "l": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.videos.Video.hls": {"tf": 1}}, "df": 1}}}, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.comments.Comments.Comment.like_count": {"tf": 1}}, "df": 1, "s": {"docs": {"piped_api.models.videos.Video.likes": {"tf": 1}}, "df": 1}}}, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {"piped_api.models.videos.Video.livestream": {"tf": 1}}, "df": 1}}}}}}}}}, "b": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.models.videos.Video.lbry_id": {"tf": 1}}, "df": 1}}}}, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.videos.Video.Stream.format": {"tf": 1}}, "df": 1}}}}}, "p": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.videos.Video.Stream.fps": {"tf": 1}}, "df": 1}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.models.videos.Video.Stream.quality": {"tf": 1}}, "df": 1}}}}}}}, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}}, "df": 2}}}}, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.models.videos.Video.Stream.video_only": {"tf": 1}}, "df": 1}}}}, "w": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {"piped_api.models.videos.Video.Stream.width": {"tf": 1}}, "df": 1}}}}}}}, "fullname": {"root": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}, "piped_api.models.BasePipedModel.__init__": {"tf": 1}}, "df": 2, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api": {"tf": 1}, "piped_api.client": {"tf": 1}, "piped_api.client.APIError": {"tf": 1}, "piped_api.client.PipedClient": {"tf": 1}, "piped_api.client.PipedClient.__init__": {"tf": 1}, "piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}, "piped_api.models": {"tf": 1}, "piped_api.models.BasePipedModel": {"tf": 1}, "piped_api.models.BasePipedModel.__init__": {"tf": 1}, "piped_api.models.channels": {"tf": 1}, "piped_api.models.channels.NextPageChannel": {"tf": 1}, "piped_api.models.channels.NextPageChannel.nextpage": {"tf": 1}, "piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.channels.Channel": {"tf": 1}, "piped_api.models.channels.Channel.id": {"tf": 1}, "piped_api.models.channels.Channel.name": {"tf": 1}, "piped_api.models.channels.Channel.avatar_url": {"tf": 1}, "piped_api.models.channels.Channel.banner_url": {"tf": 1}, "piped_api.models.channels.Channel.description": {"tf": 1}, "piped_api.models.channels.Channel.subscriber_count": {"tf": 1}, "piped_api.models.channels.Channel.verified": {"tf": 1}, "piped_api.models.comments": {"tf": 1}, "piped_api.models.comments.Comments": {"tf": 1}, "piped_api.models.comments.Comments.Comment": {"tf": 1}, "piped_api.models.comments.Comments.Comment.author": {"tf": 1}, "piped_api.models.comments.Comments.Comment.comment_id": {"tf": 1}, "piped_api.models.comments.Comments.Comment.comment_text": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commentor_url": {"tf": 1}, "piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1}, "piped_api.models.comments.Comments.Comment.hearted": {"tf": 1}, "piped_api.models.comments.Comments.Comment.like_count": {"tf": 1}, "piped_api.models.comments.Comments.Comment.pinned": {"tf": 1}, "piped_api.models.comments.Comments.Comment.thumbnail": {"tf": 1}, "piped_api.models.comments.Comments.Comment.verified": {"tf": 1}, "piped_api.models.comments.Comments.get_comments": {"tf": 1}, "piped_api.models.comments.Comments.disabled": {"tf": 1}, "piped_api.models.comments.Comments.nextpage": {"tf": 1}, "piped_api.models.videos": {"tf": 1}, "piped_api.models.videos.Video": {"tf": 1}, "piped_api.models.videos.Video.title": {"tf": 1}, "piped_api.models.videos.Video.description": {"tf": 1}, "piped_api.models.videos.Video.upload_date": {"tf": 1}, "piped_api.models.videos.Video.uploader": {"tf": 1}, "piped_api.models.videos.Video.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.thumbnail_url": {"tf": 1}, "piped_api.models.videos.Video.hls": {"tf": 1}, "piped_api.models.videos.Video.dash": {"tf": 1}, "piped_api.models.videos.Video.lbry_id": {"tf": 1}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.views": {"tf": 1}, "piped_api.models.videos.Video.likes": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.Stream": {"tf": 1}, "piped_api.models.videos.Video.Stream.url": {"tf": 1}, "piped_api.models.videos.Video.Stream.format": {"tf": 1}, "piped_api.models.videos.Video.Stream.quality": {"tf": 1}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Stream.codec": {"tf": 1}, "piped_api.models.videos.Video.Stream.video_only": {"tf": 1}, "piped_api.models.videos.Video.Stream.bitrate": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.width": {"tf": 1}, "piped_api.models.videos.Video.Stream.height": {"tf": 1}, "piped_api.models.videos.Video.Stream.fps": {"tf": 1}, "piped_api.models.videos.Video.get_streams": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.title": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.thumbnail": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_name": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.views": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.related_videos": {"tf": 1}, "piped_api.models.videos.Video.Subtitle": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.url": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.name": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.code": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.auto_generated": {"tf": 1}, "piped_api.models.videos.Video.subtitles": {"tf": 1}, "piped_api.models.videos.Video.livestream": {"tf": 1}, "piped_api.models.videos.Video.proxy_url": {"tf": 1}, "piped_api.models.videos.Video.Chapter": {"tf": 1}, "piped_api.models.videos.Video.Chapter.title": {"tf": 1}, "piped_api.models.videos.Video.Chapter.image": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}, "piped_api.models.videos.Video.chapters": {"tf": 1}}, "df": 105, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.client.PipedClient": {"tf": 1}, "piped_api.client.PipedClient.__init__": {"tf": 1}, "piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}}, "df": 8}}}}}}}}}, "n": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.comments.Comments.Comment.pinned": {"tf": 1}}, "df": 1}}}}}, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1}}, "df": 1}}}, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.models.videos.Video.proxy_url": {"tf": 1}}, "df": 1}}}}}, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {"piped_api": {"tf": 1}, "piped_api.client": {"tf": 1}, "piped_api.client.APIError": {"tf": 1}, "piped_api.client.PipedClient": {"tf": 1}, "piped_api.client.PipedClient.__init__": {"tf": 1}, "piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}, "piped_api.models": {"tf": 1}, "piped_api.models.BasePipedModel": {"tf": 1}, "piped_api.models.BasePipedModel.__init__": {"tf": 1}, "piped_api.models.channels": {"tf": 1}, "piped_api.models.channels.NextPageChannel": {"tf": 1}, "piped_api.models.channels.NextPageChannel.nextpage": {"tf": 1}, "piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.channels.Channel": {"tf": 1}, "piped_api.models.channels.Channel.id": {"tf": 1}, "piped_api.models.channels.Channel.name": {"tf": 1}, "piped_api.models.channels.Channel.avatar_url": {"tf": 1}, "piped_api.models.channels.Channel.banner_url": {"tf": 1}, "piped_api.models.channels.Channel.description": {"tf": 1}, "piped_api.models.channels.Channel.subscriber_count": {"tf": 1}, "piped_api.models.channels.Channel.verified": {"tf": 1}, "piped_api.models.comments": {"tf": 1}, "piped_api.models.comments.Comments": {"tf": 1}, "piped_api.models.comments.Comments.Comment": {"tf": 1}, "piped_api.models.comments.Comments.Comment.author": {"tf": 1}, "piped_api.models.comments.Comments.Comment.comment_id": {"tf": 1}, "piped_api.models.comments.Comments.Comment.comment_text": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commentor_url": {"tf": 1}, "piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1}, "piped_api.models.comments.Comments.Comment.hearted": {"tf": 1}, "piped_api.models.comments.Comments.Comment.like_count": {"tf": 1}, "piped_api.models.comments.Comments.Comment.pinned": {"tf": 1}, "piped_api.models.comments.Comments.Comment.thumbnail": {"tf": 1}, "piped_api.models.comments.Comments.Comment.verified": {"tf": 1}, "piped_api.models.comments.Comments.get_comments": {"tf": 1}, "piped_api.models.comments.Comments.disabled": {"tf": 1}, "piped_api.models.comments.Comments.nextpage": {"tf": 1}, "piped_api.models.videos": {"tf": 1}, "piped_api.models.videos.Video": {"tf": 1}, "piped_api.models.videos.Video.title": {"tf": 1}, "piped_api.models.videos.Video.description": {"tf": 1}, "piped_api.models.videos.Video.upload_date": {"tf": 1}, "piped_api.models.videos.Video.uploader": {"tf": 1}, "piped_api.models.videos.Video.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.thumbnail_url": {"tf": 1}, "piped_api.models.videos.Video.hls": {"tf": 1}, "piped_api.models.videos.Video.dash": {"tf": 1}, "piped_api.models.videos.Video.lbry_id": {"tf": 1}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.views": {"tf": 1}, "piped_api.models.videos.Video.likes": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.Stream": {"tf": 1}, "piped_api.models.videos.Video.Stream.url": {"tf": 1}, "piped_api.models.videos.Video.Stream.format": {"tf": 1}, "piped_api.models.videos.Video.Stream.quality": {"tf": 1}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Stream.codec": {"tf": 1}, "piped_api.models.videos.Video.Stream.video_only": {"tf": 1}, "piped_api.models.videos.Video.Stream.bitrate": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.width": {"tf": 1}, "piped_api.models.videos.Video.Stream.height": {"tf": 1}, "piped_api.models.videos.Video.Stream.fps": {"tf": 1}, "piped_api.models.videos.Video.get_streams": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.title": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.thumbnail": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_name": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.views": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.related_videos": {"tf": 1}, "piped_api.models.videos.Video.Subtitle": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.url": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.name": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.code": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.auto_generated": {"tf": 1}, "piped_api.models.videos.Video.subtitles": {"tf": 1}, "piped_api.models.videos.Video.livestream": {"tf": 1}, "piped_api.models.videos.Video.proxy_url": {"tf": 1}, "piped_api.models.videos.Video.Chapter": {"tf": 1}, "piped_api.models.videos.Video.Chapter.title": {"tf": 1}, "piped_api.models.videos.Video.Chapter.image": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}, "piped_api.models.videos.Video.chapters": {"tf": 1}}, "df": 105, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.client.APIError": {"tf": 1}}, "df": 1}}}}}}}, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.channels.Channel.avatar_url": {"tf": 1}, "piped_api.models.videos.Video.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_avatar": {"tf": 1}}, "df": 3}}}}}, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.comments.Comments.Comment.author": {"tf": 1}}, "df": 1}}}, "o": {"docs": {"piped_api.models.videos.Video.Subtitle.auto_generated": {"tf": 1}}, "df": 1}}}}, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.client": {"tf": 1}, "piped_api.client.APIError": {"tf": 1}, "piped_api.client.PipedClient": {"tf": 1}, "piped_api.client.PipedClient.__init__": {"tf": 1}, "piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}}, "df": 10}}}}}, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.comments.Comments.Comment": {"tf": 1}, "piped_api.models.comments.Comments.Comment.author": {"tf": 1}, "piped_api.models.comments.Comments.Comment.comment_id": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.comment_text": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commentor_url": {"tf": 1}, "piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1}, "piped_api.models.comments.Comments.Comment.hearted": {"tf": 1}, "piped_api.models.comments.Comments.Comment.like_count": {"tf": 1}, "piped_api.models.comments.Comments.Comment.pinned": {"tf": 1}, "piped_api.models.comments.Comments.Comment.thumbnail": {"tf": 1}, "piped_api.models.comments.Comments.Comment.verified": {"tf": 1}}, "df": 13, "s": {"docs": {"piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.models.comments": {"tf": 1}, "piped_api.models.comments.Comments": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.author": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.comment_id": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.comment_text": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.commentor_url": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.hearted": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.like_count": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.pinned": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.thumbnail": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.verified": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.get_comments": {"tf": 1.7320508075688772}, "piped_api.models.comments.Comments.disabled": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.nextpage": {"tf": 1.4142135623730951}}, "df": 19}, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}}, "df": 1}}, "o": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.comments.Comments.Comment.commentor_url": {"tf": 1}}, "df": 1}}}}}}}, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.channels.Channel.subscriber_count": {"tf": 1}, "piped_api.models.comments.Comments.Comment.like_count": {"tf": 1}}, "df": 2}}}, "d": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.Subtitle.code": {"tf": 1}}, "df": 1, "c": {"docs": {"piped_api.models.videos.Video.Stream.codec": {"tf": 1}}, "df": 1}}}}, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.models.channels.Channel": {"tf": 1}, "piped_api.models.channels.Channel.id": {"tf": 1}, "piped_api.models.channels.Channel.name": {"tf": 1}, "piped_api.models.channels.Channel.avatar_url": {"tf": 1}, "piped_api.models.channels.Channel.banner_url": {"tf": 1}, "piped_api.models.channels.Channel.description": {"tf": 1}, "piped_api.models.channels.Channel.subscriber_count": {"tf": 1}, "piped_api.models.channels.Channel.verified": {"tf": 1}}, "df": 10, "s": {"docs": {"piped_api.models.channels": {"tf": 1}, "piped_api.models.channels.NextPageChannel": {"tf": 1}, "piped_api.models.channels.NextPageChannel.nextpage": {"tf": 1}, "piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.channels.Channel": {"tf": 1}, "piped_api.models.channels.Channel.id": {"tf": 1}, "piped_api.models.channels.Channel.name": {"tf": 1}, "piped_api.models.channels.Channel.avatar_url": {"tf": 1}, "piped_api.models.channels.Channel.banner_url": {"tf": 1}, "piped_api.models.channels.Channel.description": {"tf": 1}, "piped_api.models.channels.Channel.subscriber_count": {"tf": 1}, "piped_api.models.channels.Channel.verified": {"tf": 1}}, "df": 12}}}}}, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.videos.Video.Chapter": {"tf": 1}, "piped_api.models.videos.Video.Chapter.title": {"tf": 1}, "piped_api.models.videos.Video.Chapter.image": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}}, "df": 4, "s": {"docs": {"piped_api.models.videos.Video.chapters": {"tf": 1}}, "df": 1}}}}}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}, "piped_api.models.BasePipedModel.__init__": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}}, "df": 4}}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "x": {"docs": {"piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}}, "df": 2}}}}, "d": {"docs": {"piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.models.channels.Channel.id": {"tf": 1}, "piped_api.models.comments.Comments.Comment.comment_id": {"tf": 1}, "piped_api.models.videos.Video.lbry_id": {"tf": 1}}, "df": 4}, "s": {"docs": {"piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}}, "df": 1}, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.Chapter.image": {"tf": 1}}, "df": 1}}}}}, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}, "piped_api.models.comments.Comments.get_comments": {"tf": 1}, "piped_api.models.videos.Video.get_streams": {"tf": 1}}, "df": 8}, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.videos.Video.Subtitle.auto_generated": {"tf": 1}}, "df": 1}}}}}}}}}, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {"piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.models.videos.Video": {"tf": 1}, "piped_api.models.videos.Video.title": {"tf": 1}, "piped_api.models.videos.Video.description": {"tf": 1}, "piped_api.models.videos.Video.upload_date": {"tf": 1}, "piped_api.models.videos.Video.uploader": {"tf": 1}, "piped_api.models.videos.Video.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.thumbnail_url": {"tf": 1}, "piped_api.models.videos.Video.hls": {"tf": 1}, "piped_api.models.videos.Video.dash": {"tf": 1}, "piped_api.models.videos.Video.lbry_id": {"tf": 1}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.views": {"tf": 1}, "piped_api.models.videos.Video.likes": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.Stream": {"tf": 1}, "piped_api.models.videos.Video.Stream.url": {"tf": 1}, "piped_api.models.videos.Video.Stream.format": {"tf": 1}, "piped_api.models.videos.Video.Stream.quality": {"tf": 1}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Stream.codec": {"tf": 1}, "piped_api.models.videos.Video.Stream.video_only": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Stream.bitrate": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.width": {"tf": 1}, "piped_api.models.videos.Video.Stream.height": {"tf": 1}, "piped_api.models.videos.Video.Stream.fps": {"tf": 1}, "piped_api.models.videos.Video.get_streams": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.title": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.thumbnail": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_name": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.views": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.related_videos": {"tf": 1}, "piped_api.models.videos.Video.Subtitle": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.url": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.name": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.code": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.auto_generated": {"tf": 1}, "piped_api.models.videos.Video.subtitles": {"tf": 1}, "piped_api.models.videos.Video.livestream": {"tf": 1}, "piped_api.models.videos.Video.proxy_url": {"tf": 1}, "piped_api.models.videos.Video.Chapter": {"tf": 1}, "piped_api.models.videos.Video.Chapter.title": {"tf": 1}, "piped_api.models.videos.Video.Chapter.image": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}, "piped_api.models.videos.Video.chapters": {"tf": 1}}, "df": 61, "s": {"docs": {"piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.videos": {"tf": 1}, "piped_api.models.videos.Video": {"tf": 1}, "piped_api.models.videos.Video.title": {"tf": 1}, "piped_api.models.videos.Video.description": {"tf": 1}, "piped_api.models.videos.Video.upload_date": {"tf": 1}, "piped_api.models.videos.Video.uploader": {"tf": 1}, "piped_api.models.videos.Video.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.thumbnail_url": {"tf": 1}, "piped_api.models.videos.Video.hls": {"tf": 1}, "piped_api.models.videos.Video.dash": {"tf": 1}, "piped_api.models.videos.Video.lbry_id": {"tf": 1}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.views": {"tf": 1}, "piped_api.models.videos.Video.likes": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.Stream": {"tf": 1}, "piped_api.models.videos.Video.Stream.url": {"tf": 1}, "piped_api.models.videos.Video.Stream.format": {"tf": 1}, "piped_api.models.videos.Video.Stream.quality": {"tf": 1}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Stream.codec": {"tf": 1}, "piped_api.models.videos.Video.Stream.video_only": {"tf": 1}, "piped_api.models.videos.Video.Stream.bitrate": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.width": {"tf": 1}, "piped_api.models.videos.Video.Stream.height": {"tf": 1}, "piped_api.models.videos.Video.Stream.fps": {"tf": 1}, "piped_api.models.videos.Video.get_streams": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.title": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.thumbnail": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_name": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.views": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.related_videos": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Subtitle": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.url": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.name": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.code": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.auto_generated": {"tf": 1}, "piped_api.models.videos.Video.subtitles": {"tf": 1}, "piped_api.models.videos.Video.livestream": {"tf": 1}, "piped_api.models.videos.Video.proxy_url": {"tf": 1}, "piped_api.models.videos.Video.Chapter": {"tf": 1}, "piped_api.models.videos.Video.Chapter.title": {"tf": 1}, "piped_api.models.videos.Video.Chapter.image": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}, "piped_api.models.videos.Video.chapters": {"tf": 1}}, "df": 62}}}}, "e": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.videos.Video.views": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.views": {"tf": 1}}, "df": 2}}}}, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.channels.Channel.verified": {"tf": 1}, "piped_api.models.comments.Comments.Comment.verified": {"tf": 1}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}}, "df": 4}}}}}}}}, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 1}}}}}}}, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.comments.Comments.Comment.comment_text": {"tf": 1}}, "df": 1}}}, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}}, "df": 1}}, "t": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.title": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.title": {"tf": 1}, "piped_api.models.videos.Video.Chapter.title": {"tf": 1}}, "df": 3}}}}, "h": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.models.comments.Comments.Comment.thumbnail": {"tf": 1}, "piped_api.models.videos.Video.thumbnail_url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.thumbnail": {"tf": 1}}, "df": 3}}}}}}}}, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}}, "df": 2}}}}, "b": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}}, "df": 2}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.models.BasePipedModel": {"tf": 1}, "piped_api.models.BasePipedModel.__init__": {"tf": 1}}, "df": 2}}}}}}}}}}}}, "n": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.channels.Channel.banner_url": {"tf": 1}}, "df": 1}}}}}, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.Stream.bitrate": {"tf": 1}}, "df": 1}}}}}}}, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.models.channels.Channel.name": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_name": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.name": {"tf": 1}}, "df": 4}}}, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.channels.NextPageChannel.nextpage": {"tf": 1}, "piped_api.models.comments.Comments.nextpage": {"tf": 1}}, "df": 2, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.models.channels.NextPageChannel": {"tf": 1}, "piped_api.models.channels.NextPageChannel.nextpage": {"tf": 1}, "piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}}, "df": 3}}}}}}}}}}}}}}}, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}}, "df": 1}}}}}, "u": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}}, "df": 1}}}}}}}}}, "b": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.channels.Channel.subscriber_count": {"tf": 1}}, "df": 1}}}}}}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.Subtitle": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.url": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.name": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.code": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.auto_generated": {"tf": 1}}, "df": 6, "s": {"docs": {"piped_api.models.videos.Video.subtitles": {"tf": 1}}, "df": 1}}}}}}}}, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {"piped_api.models.videos.Video.Stream": {"tf": 1}, "piped_api.models.videos.Video.Stream.url": {"tf": 1}, "piped_api.models.videos.Video.Stream.format": {"tf": 1}, "piped_api.models.videos.Video.Stream.quality": {"tf": 1}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Stream.codec": {"tf": 1}, "piped_api.models.videos.Video.Stream.video_only": {"tf": 1}, "piped_api.models.videos.Video.Stream.bitrate": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.width": {"tf": 1}, "piped_api.models.videos.Video.Stream.height": {"tf": 1}, "piped_api.models.videos.Video.Stream.fps": {"tf": 1}}, "df": 15, "s": {"docs": {"piped_api.models.videos.Video.get_streams": {"tf": 1}}, "df": 1}}}}}, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}}, "df": 3}}}}, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}}, "df": 1}}}}}, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models": {"tf": 1}, "piped_api.models.BasePipedModel": {"tf": 1}, "piped_api.models.BasePipedModel.__init__": {"tf": 1}, "piped_api.models.channels": {"tf": 1}, "piped_api.models.channels.NextPageChannel": {"tf": 1}, "piped_api.models.channels.NextPageChannel.nextpage": {"tf": 1}, "piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.channels.Channel": {"tf": 1}, "piped_api.models.channels.Channel.id": {"tf": 1}, "piped_api.models.channels.Channel.name": {"tf": 1}, "piped_api.models.channels.Channel.avatar_url": {"tf": 1}, "piped_api.models.channels.Channel.banner_url": {"tf": 1}, "piped_api.models.channels.Channel.description": {"tf": 1}, "piped_api.models.channels.Channel.subscriber_count": {"tf": 1}, "piped_api.models.channels.Channel.verified": {"tf": 1}, "piped_api.models.comments": {"tf": 1}, "piped_api.models.comments.Comments": {"tf": 1}, "piped_api.models.comments.Comments.Comment": {"tf": 1}, "piped_api.models.comments.Comments.Comment.author": {"tf": 1}, "piped_api.models.comments.Comments.Comment.comment_id": {"tf": 1}, "piped_api.models.comments.Comments.Comment.comment_text": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commentor_url": {"tf": 1}, "piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1}, "piped_api.models.comments.Comments.Comment.hearted": {"tf": 1}, "piped_api.models.comments.Comments.Comment.like_count": {"tf": 1}, "piped_api.models.comments.Comments.Comment.pinned": {"tf": 1}, "piped_api.models.comments.Comments.Comment.thumbnail": {"tf": 1}, "piped_api.models.comments.Comments.Comment.verified": {"tf": 1}, "piped_api.models.comments.Comments.get_comments": {"tf": 1}, "piped_api.models.comments.Comments.disabled": {"tf": 1}, "piped_api.models.comments.Comments.nextpage": {"tf": 1}, "piped_api.models.videos": {"tf": 1}, "piped_api.models.videos.Video": {"tf": 1}, "piped_api.models.videos.Video.title": {"tf": 1}, "piped_api.models.videos.Video.description": {"tf": 1}, "piped_api.models.videos.Video.upload_date": {"tf": 1}, "piped_api.models.videos.Video.uploader": {"tf": 1}, "piped_api.models.videos.Video.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.thumbnail_url": {"tf": 1}, "piped_api.models.videos.Video.hls": {"tf": 1}, "piped_api.models.videos.Video.dash": {"tf": 1}, "piped_api.models.videos.Video.lbry_id": {"tf": 1}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.views": {"tf": 1}, "piped_api.models.videos.Video.likes": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.Stream": {"tf": 1}, "piped_api.models.videos.Video.Stream.url": {"tf": 1}, "piped_api.models.videos.Video.Stream.format": {"tf": 1}, "piped_api.models.videos.Video.Stream.quality": {"tf": 1}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Stream.codec": {"tf": 1}, "piped_api.models.videos.Video.Stream.video_only": {"tf": 1}, "piped_api.models.videos.Video.Stream.bitrate": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.width": {"tf": 1}, "piped_api.models.videos.Video.Stream.height": {"tf": 1}, "piped_api.models.videos.Video.Stream.fps": {"tf": 1}, "piped_api.models.videos.Video.get_streams": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.title": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.thumbnail": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_name": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.views": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.related_videos": {"tf": 1}, "piped_api.models.videos.Video.Subtitle": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.url": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.name": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.code": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.auto_generated": {"tf": 1}, "piped_api.models.videos.Video.subtitles": {"tf": 1}, "piped_api.models.videos.Video.livestream": {"tf": 1}, "piped_api.models.videos.Video.proxy_url": {"tf": 1}, "piped_api.models.videos.Video.Chapter": {"tf": 1}, "piped_api.models.videos.Video.Chapter.title": {"tf": 1}, "piped_api.models.videos.Video.Chapter.image": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}, "piped_api.models.videos.Video.chapters": {"tf": 1}}, "df": 94}}}}}, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}}, "df": 2}}}}, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.videos.Video.upload_date": {"tf": 1}}, "df": 1, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}}, "df": 3}, "r": {"docs": {"piped_api.models.videos.Video.uploader": {"tf": 1}, "piped_api.models.videos.Video.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_name": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}}, "df": 8}}}}}}}, "r": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.models.channels.Channel.avatar_url": {"tf": 1}, "piped_api.models.channels.Channel.banner_url": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commentor_url": {"tf": 1}, "piped_api.models.videos.Video.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.thumbnail_url": {"tf": 1}, "piped_api.models.videos.Video.Stream.url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.url": {"tf": 1}, "piped_api.models.videos.Video.proxy_url": {"tf": 1}}, "df": 10}}}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"piped_api.models.channels.Channel.description": {"tf": 1}, "piped_api.models.videos.Video.description": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}}, "df": 3}}}}}}}}}}, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.comments.Comments.disabled": {"tf": 1}}, "df": 1}}}}}, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 1}}}}}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.upload_date": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"tf": 1}}, "df": 2}}, "s": {"docs": {}, "df": 0, "h": {"docs": {"piped_api.models.videos.Video.dash": {"tf": 1}}, "df": 1}}}, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}}, "df": 2}}}}}}}}, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}}, "df": 1}}}}}, "n": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}}, "df": 2}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1}}, "df": 1}}}}}, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.videos.Video.related_videos": {"tf": 1}}, "df": 1, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {"piped_api.models.videos.Video.RelatedStream": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.title": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.thumbnail": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_name": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.views": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}}, "df": 13}}}}}}}}}}}}}, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.comments.Comments.Comment.hearted": {"tf": 1}}, "df": 1}}}}}, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.videos.Video.Stream.height": {"tf": 1}}, "df": 1}}}}}, "l": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.videos.Video.hls": {"tf": 1}}, "df": 1}}}, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.comments.Comments.Comment.like_count": {"tf": 1}}, "df": 1, "s": {"docs": {"piped_api.models.videos.Video.likes": {"tf": 1}}, "df": 1}}}, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {"piped_api.models.videos.Video.livestream": {"tf": 1}}, "df": 1}}}}}}}}}, "b": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.models.videos.Video.lbry_id": {"tf": 1}}, "df": 1}}}}, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.videos.Video.Stream.format": {"tf": 1}}, "df": 1}}}}}, "p": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.videos.Video.Stream.fps": {"tf": 1}}, "df": 1}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.models.videos.Video.Stream.quality": {"tf": 1}}, "df": 1}}}}}}}, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.models.videos.Video.Stream.video_only": {"tf": 1}}, "df": 1}}}}, "w": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {"piped_api.models.videos.Video.Stream.width": {"tf": 1}}, "df": 1}}}}}}}, "annotation": {"root": {"docs": {"piped_api.models.channels.NextPageChannel.nextpage": {"tf": 1}, "piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.channels.Channel.id": {"tf": 1}, "piped_api.models.channels.Channel.name": {"tf": 1}, "piped_api.models.channels.Channel.avatar_url": {"tf": 1}, "piped_api.models.channels.Channel.banner_url": {"tf": 1}, "piped_api.models.channels.Channel.description": {"tf": 1}, "piped_api.models.channels.Channel.subscriber_count": {"tf": 1}, "piped_api.models.channels.Channel.verified": {"tf": 1}, "piped_api.models.comments.Comments.Comment.author": {"tf": 1}, "piped_api.models.comments.Comments.Comment.comment_id": {"tf": 1}, "piped_api.models.comments.Comments.Comment.comment_text": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commentor_url": {"tf": 1}, "piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1}, "piped_api.models.comments.Comments.Comment.hearted": {"tf": 1}, "piped_api.models.comments.Comments.Comment.like_count": {"tf": 1}, "piped_api.models.comments.Comments.Comment.pinned": {"tf": 1}, "piped_api.models.comments.Comments.Comment.thumbnail": {"tf": 1}, "piped_api.models.comments.Comments.Comment.verified": {"tf": 1}, "piped_api.models.comments.Comments.disabled": {"tf": 1}, "piped_api.models.comments.Comments.nextpage": {"tf": 1}, "piped_api.models.videos.Video.title": {"tf": 1}, "piped_api.models.videos.Video.description": {"tf": 1}, "piped_api.models.videos.Video.upload_date": {"tf": 1}, "piped_api.models.videos.Video.uploader": {"tf": 1}, "piped_api.models.videos.Video.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.thumbnail_url": {"tf": 1}, "piped_api.models.videos.Video.hls": {"tf": 1}, "piped_api.models.videos.Video.dash": {"tf": 1}, "piped_api.models.videos.Video.lbry_id": {"tf": 1}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.views": {"tf": 1}, "piped_api.models.videos.Video.likes": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.Stream.url": {"tf": 1}, "piped_api.models.videos.Video.Stream.format": {"tf": 1}, "piped_api.models.videos.Video.Stream.quality": {"tf": 1}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Stream.codec": {"tf": 1}, "piped_api.models.videos.Video.Stream.video_only": {"tf": 1}, "piped_api.models.videos.Video.Stream.bitrate": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.width": {"tf": 1}, "piped_api.models.videos.Video.Stream.height": {"tf": 1}, "piped_api.models.videos.Video.Stream.fps": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.title": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.thumbnail": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_name": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.views": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.related_videos": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.url": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.name": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.code": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.auto_generated": {"tf": 1}, "piped_api.models.videos.Video.subtitles": {"tf": 1}, "piped_api.models.videos.Video.livestream": {"tf": 1}, "piped_api.models.videos.Video.proxy_url": {"tf": 1}, "piped_api.models.videos.Video.Chapter.title": {"tf": 1}, "piped_api.models.videos.Video.Chapter.image": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}, "piped_api.models.videos.Video.chapters": {"tf": 1}}, "df": 77, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.channels.NextPageChannel.nextpage": {"tf": 1}, "piped_api.models.channels.Channel.id": {"tf": 1}, "piped_api.models.channels.Channel.name": {"tf": 1}, "piped_api.models.channels.Channel.avatar_url": {"tf": 1}, "piped_api.models.channels.Channel.banner_url": {"tf": 1}, "piped_api.models.channels.Channel.description": {"tf": 1}, "piped_api.models.comments.Comments.Comment.author": {"tf": 1}, "piped_api.models.comments.Comments.Comment.comment_id": {"tf": 1}, "piped_api.models.comments.Comments.Comment.comment_text": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commentor_url": {"tf": 1}, "piped_api.models.comments.Comments.Comment.thumbnail": {"tf": 1}, "piped_api.models.videos.Video.title": {"tf": 1}, "piped_api.models.videos.Video.description": {"tf": 1}, "piped_api.models.videos.Video.uploader": {"tf": 1}, "piped_api.models.videos.Video.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.thumbnail_url": {"tf": 1}, "piped_api.models.videos.Video.lbry_id": {"tf": 1}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.Stream.url": {"tf": 1}, "piped_api.models.videos.Video.Stream.format": {"tf": 1}, "piped_api.models.videos.Video.Stream.quality": {"tf": 1}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Stream.codec": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.title": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.thumbnail": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_name": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.views": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.url": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.name": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.code": {"tf": 1}, "piped_api.models.videos.Video.proxy_url": {"tf": 1}, "piped_api.models.videos.Video.Chapter.title": {"tf": 1}, "piped_api.models.videos.Video.Chapter.image": {"tf": 1}}, "df": 40}}, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.subtitles": {"tf": 1}}, "df": 1}}}}}}}}, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "[": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.videos.Video.related_videos": {"tf": 1}, "piped_api.models.videos.Video.subtitles": {"tf": 1}, "piped_api.models.videos.Video.chapters": {"tf": 1}}, "df": 4}}}}}}}}}}, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {"piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.videos.Video.related_videos": {"tf": 1}, "piped_api.models.videos.Video.subtitles": {"tf": 1}, "piped_api.models.videos.Video.chapters": {"tf": 1}}, "df": 4}}}, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.videos.Video.related_videos": {"tf": 1}, "piped_api.models.videos.Video.subtitles": {"tf": 1}, "piped_api.models.videos.Video.chapters": {"tf": 1}}, "df": 4}}}}}}, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {"piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.videos.Video.related_videos": {"tf": 1}, "piped_api.models.videos.Video.subtitles": {"tf": 1}, "piped_api.models.videos.Video.chapters": {"tf": 1}}, "df": 4, "s": {"docs": {"piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.videos.Video.related_videos": {"tf": 1}, "piped_api.models.videos.Video.subtitles": {"tf": 1}, "piped_api.models.videos.Video.chapters": {"tf": 1}}, "df": 4}}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {"piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.videos.Video.related_videos": {"tf": 1}}, "df": 2}}}}}}}}}}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.channels.Channel.subscriber_count": {"tf": 1}, "piped_api.models.comments.Comments.Comment.like_count": {"tf": 1}, "piped_api.models.videos.Video.views": {"tf": 1}, "piped_api.models.videos.Video.likes": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.Stream.bitrate": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.width": {"tf": 1}, "piped_api.models.videos.Video.Stream.height": {"tf": 1}, "piped_api.models.videos.Video.Stream.fps": {"tf": 1}}, "df": 13}}}, "b": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.models.channels.Channel.verified": {"tf": 1}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}, "piped_api.models.comments.Comments.Comment.hearted": {"tf": 1}, "piped_api.models.comments.Comments.Comment.pinned": {"tf": 1}, "piped_api.models.comments.Comments.Comment.verified": {"tf": 1}, "piped_api.models.comments.Comments.disabled": {"tf": 1}, "piped_api.models.videos.Video.Stream.video_only": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.auto_generated": {"tf": 1}, "piped_api.models.videos.Video.livestream": {"tf": 1}}, "df": 10}}}}, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "[": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1}, "piped_api.models.comments.Comments.nextpage": {"tf": 1}, "piped_api.models.videos.Video.hls": {"tf": 1}, "piped_api.models.videos.Video.dash": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}}, "df": 5}}}}}}}}}}}}, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.upload_date": {"tf": 1}}, "df": 1, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.upload_date": {"tf": 1}, "piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}}, "df": 5}}}}}}}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {"piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}}, "df": 3}}}}}}}}}, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.videos.Video.chapters": {"tf": 1}}, "df": 1}}}}}}}}}, "default_value": {"root": {"docs": {}, "df": 0}}, "signature": {"root": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 2}, "piped_api.client.PipedClient.get_video": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_comments": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_trending": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1.4142135623730951}, "piped_api.models.BasePipedModel.__init__": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.get_comments": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.get_streams": {"tf": 1.7320508075688772}}, "df": 10, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "f": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}, "piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}, "piped_api.models.BasePipedModel.__init__": {"tf": 1}, "piped_api.models.comments.Comments.get_comments": {"tf": 1}, "piped_api.models.videos.Video.get_streams": {"tf": 1}}, "df": 10}}, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1.4142135623730951}}, "df": 1, "s": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}}, "df": 1}}}}}}, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}}, "df": 1}}}}}, "t": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}, "piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}}, "df": 7, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {"piped_api.models.videos.Video.get_streams": {"tf": 1}}, "df": 1}}}}}}, "b": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}}, "df": 1}}}}, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}, "piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.models.comments.Comments.get_comments": {"tf": 1}, "piped_api.models.videos.Video.get_streams": {"tf": 1}}, "df": 8}}, "n": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.models.BasePipedModel.__init__": {"tf": 1}}, "df": 1}}, "u": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {"piped_api.models.videos.Video.get_streams": {"tf": 1}}, "df": 1}}}}}, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}}, "df": 1}}, "s": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 1}, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "[": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}}, "df": 1}}}}}}}}}}}, "h": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, ":": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}, "k": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}}, "df": 1}}}}, "w": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}}, "df": 6}}}}}}, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}}, "df": 1}}}}, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.get_streams": {"tf": 1}}, "df": 1, "[": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "v": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {"piped_api.client.PipedClient.get_video": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.models.videos.Video.get_streams": {"tf": 1.7320508075688772}}, "df": 4, "s": {"docs": {"piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.models.videos.Video.get_streams": {"tf": 1}}, "df": 3}}}}}}, "i": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}}, "df": 3}}, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}}, "df": 4}}}}}, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.models.comments.Comments.get_comments": {"tf": 1}, "piped_api.models.videos.Video.get_streams": {"tf": 1}}, "df": 7}}}}}}, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}}, "df": 2, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}}, "df": 2}}}, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}}, "df": 1}}}}, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "[": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "[": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}}, "df": 2}}}}}}}}, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}}, "df": 2}}}}}}}}}}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.comments.Comments.get_comments": {"tf": 1}}, "df": 1, "s": {"docs": {"piped_api.client.PipedClient.get_comments": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.get_comments": {"tf": 1.4142135623730951}}, "df": 2}}}}}}, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 1}}}}}, "d": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 1}}}, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.client.PipedClient.get_channel_by_id": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1.4142135623730951}}, "df": 2, "s": {"docs": {"piped_api.client.PipedClient.get_channel_by_id": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}}, "df": 2}}}}}}}}, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "[": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.models.comments.Comments.get_comments": {"tf": 1}, "piped_api.models.videos.Video.get_streams": {"tf": 1}}, "df": 3}}}}}, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}}, "df": 1}}}}}}, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.models.videos.Video.get_streams": {"tf": 1}}, "df": 1}}}}}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}}, "df": 1}}}}}, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {"piped_api.models.BasePipedModel.__init__": {"tf": 1}}, "df": 1}}}, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "[": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.BasePipedModel.__init__": {"tf": 1}}, "df": 1}}}}}}}}}}, "bases": {"root": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.client.APIError": {"tf": 1}}, "df": 1}}}}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.models.channels.NextPageChannel": {"tf": 1}, "piped_api.models.comments.Comments": {"tf": 1}, "piped_api.models.comments.Comments.Comment": {"tf": 1}, "piped_api.models.videos.Video": {"tf": 1}, "piped_api.models.videos.Video.Stream": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream": {"tf": 1}, "piped_api.models.videos.Video.Subtitle": {"tf": 1}, "piped_api.models.videos.Video.Chapter": {"tf": 1}}, "df": 8}}}}}}}}}}}}}}, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"piped_api.client.APIError": {"tf": 1}}, "df": 1}}}}}}}}}, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.channels.NextPageChannel": {"tf": 1}, "piped_api.models.comments.Comments": {"tf": 1}, "piped_api.models.comments.Comments.Comment": {"tf": 1}, "piped_api.models.videos.Video": {"tf": 1}, "piped_api.models.videos.Video.Stream": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream": {"tf": 1}, "piped_api.models.videos.Video.Subtitle": {"tf": 1}, "piped_api.models.videos.Video.Chapter": {"tf": 1}}, "df": 8}}}}}, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "i": {"docs": {"piped_api.models.channels.NextPageChannel": {"tf": 1}, "piped_api.models.comments.Comments": {"tf": 1}, "piped_api.models.comments.Comments.Comment": {"tf": 1}, "piped_api.models.videos.Video": {"tf": 1}, "piped_api.models.videos.Video.Stream": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream": {"tf": 1}, "piped_api.models.videos.Video.Subtitle": {"tf": 1}, "piped_api.models.videos.Video.Chapter": {"tf": 1}}, "df": 8}}}, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.channels.NextPageChannel": {"tf": 1}, "piped_api.models.comments.Comments": {"tf": 1}, "piped_api.models.comments.Comments.Comment": {"tf": 1}, "piped_api.models.videos.Video": {"tf": 1}, "piped_api.models.videos.Video.Stream": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream": {"tf": 1}, "piped_api.models.videos.Video.Subtitle": {"tf": 1}, "piped_api.models.videos.Video.Chapter": {"tf": 1}}, "df": 8}}}}}}, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.models.channels.Channel": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}, "doc": {"root": {"0": {"docs": {"piped_api": {"tf": 1}, "piped_api.models.videos.Video.Stream.width": {"tf": 1}, "piped_api.models.videos.Video.Stream.height": {"tf": 1}, "piped_api.models.videos.Video.Stream.fps": {"tf": 1}}, "df": 4, "x": {"1": {"2": {"docs": {}, "df": 0, "c": {"5": {"9": {"8": {"docs": {}, "df": 0, "b": {"3": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "c": {"0": {"8": {"4": {"7": {"1": {"0": {"5": {"0": {"7": {"docs": {}, "df": 0, "c": {"9": {"docs": {}, "df": 0, "d": {"6": {"docs": {}, "df": 0, "d": {"1": {"9": {"docs": {}, "df": 0, "c": {"9": {"4": {"3": {"4": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "d": {"2": {"6": {"8": {"6": {"4": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "c": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}, "3": {"8": {"3": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "c": {"3": {"docs": {}, "df": 0, "b": {"8": {"3": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "d": {"6": {"6": {"docs": {}, "df": 0, "b": {"4": {"docs": {}, "df": 0, "a": {"5": {"docs": {}, "df": 0, "e": {"6": {"4": {"5": {"1": {"1": {"5": {"2": {"5": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "b": {"2": {"docs": {}, "df": 0, "c": {"0": {"2": {"3": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "b": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}}}}}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}, "1": {"2": {"8": {"docs": {}, "df": 0, "k": {"docs": {"piped_api.models.videos.Video.Stream.quality": {"tf": 1}}, "df": 1}}, "docs": {}, "df": 0}, "docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.models.videos.Video.likes": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 3}, "2": {"0": {"docs": {"piped_api.client.PipedClient.get_comments": {"tf": 1}}, "df": 1}, "4": {"0": {"docs": {}, "df": 0, "p": {"docs": {"piped_api.models.videos.Video.Stream.quality": {"tf": 1}}, "df": 1}}, "docs": {}, "df": 0}, "docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 1}, "3": {"0": {"docs": {"piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.videos.Video.Stream.fps": {"tf": 1}}, "df": 2}, "1": {"6": {"6": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "9": {"docs": {"piped_api": {"tf": 1.4142135623730951}}, "df": 1}, "docs": {}, "df": 0}, "4": {"8": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "n": {"1": {"3": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "j": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "j": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "l": {"3": {"docs": {}, "df": 0, "v": {"6": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "j": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "j": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"2": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"9": {"9": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "s": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}}}}}}}}}}}, "docs": {}, "df": 0}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}}}}}}}}}}}}}}}}}}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}}}}}}}}}}}, "docs": {"piped_api.models.videos.Video.Stream.format": {"tf": 1}}, "df": 1}, "6": {"0": {"docs": {"piped_api.models.videos.Video.Stream.fps": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {"piped_api": {"tf": 17.52141546793523}, "piped_api.client": {"tf": 1.7320508075688772}, "piped_api.client.APIError": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient": {"tf": 3}, "piped_api.client.PipedClient.__init__": {"tf": 4.47213595499958}, "piped_api.client.PipedClient.get_video": {"tf": 4.795831523312719}, "piped_api.client.PipedClient.get_comments": {"tf": 5.744562646538029}, "piped_api.client.PipedClient.get_trending": {"tf": 5.291502622129181}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 4.795831523312719}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 4.795831523312719}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 4.795831523312719}, "piped_api.models": {"tf": 1.7320508075688772}, "piped_api.models.BasePipedModel": {"tf": 1.7320508075688772}, "piped_api.models.BasePipedModel.__init__": {"tf": 3.605551275463989}, "piped_api.models.channels": {"tf": 1.7320508075688772}, "piped_api.models.channels.NextPageChannel": {"tf": 3.7416573867739413}, "piped_api.models.channels.NextPageChannel.nextpage": {"tf": 2.6457513110645907}, "piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 2}, "piped_api.models.channels.Channel": {"tf": 2.8284271247461903}, "piped_api.models.channels.Channel.id": {"tf": 1.4142135623730951}, "piped_api.models.channels.Channel.name": {"tf": 1.4142135623730951}, "piped_api.models.channels.Channel.avatar_url": {"tf": 1.4142135623730951}, "piped_api.models.channels.Channel.banner_url": {"tf": 1.4142135623730951}, "piped_api.models.channels.Channel.description": {"tf": 1.4142135623730951}, "piped_api.models.channels.Channel.subscriber_count": {"tf": 1.4142135623730951}, "piped_api.models.channels.Channel.verified": {"tf": 1.7320508075688772}, "piped_api.models.comments": {"tf": 1.7320508075688772}, "piped_api.models.comments.Comments": {"tf": 1.7320508075688772}, "piped_api.models.comments.Comments.Comment": {"tf": 1.7320508075688772}, "piped_api.models.comments.Comments.Comment.author": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.comment_id": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.comment_text": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 4.242640687119285}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 3.872983346207417}, "piped_api.models.comments.Comments.Comment.commentor_url": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.replies_page": {"tf": 3.1622776601683795}, "piped_api.models.comments.Comments.Comment.hearted": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.like_count": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.pinned": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.thumbnail": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.verified": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.get_comments": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.disabled": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.nextpage": {"tf": 2.8284271247461903}, "piped_api.models.videos": {"tf": 1.7320508075688772}, "piped_api.models.videos.Video": {"tf": 1.7320508075688772}, "piped_api.models.videos.Video.title": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.description": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.upload_date": {"tf": 3.605551275463989}, "piped_api.models.videos.Video.uploader": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.uploader_url": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.uploader_avatar": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.thumbnail_url": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.hls": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.dash": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.lbry_id": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1.7320508075688772}, "piped_api.models.videos.Video.duration": {"tf": 3.605551275463989}, "piped_api.models.videos.Video.views": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.likes": {"tf": 2.23606797749979}, "piped_api.models.videos.Video.dislikes": {"tf": 3}, "piped_api.models.videos.Video.Stream": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Stream.url": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Stream.format": {"tf": 2.8284271247461903}, "piped_api.models.videos.Video.Stream.quality": {"tf": 3.4641016151377544}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 2}, "piped_api.models.videos.Video.Stream.codec": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Stream.video_only": {"tf": 1.7320508075688772}, "piped_api.models.videos.Video.Stream.bitrate": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Stream.init_start": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Stream.width": {"tf": 2.6457513110645907}, "piped_api.models.videos.Video.Stream.height": {"tf": 2.6457513110645907}, "piped_api.models.videos.Video.Stream.fps": {"tf": 3.7416573867739413}, "piped_api.models.videos.Video.get_streams": {"tf": 4.58257569495584}, "piped_api.models.videos.Video.RelatedStream": {"tf": 2}, "piped_api.models.videos.Video.RelatedStream.url": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.RelatedStream.title": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.RelatedStream.thumbnail": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.RelatedStream.uploader_name": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.RelatedStream.uploader_url": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.RelatedStream.uploader_avatar": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"tf": 2.6457513110645907}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 2}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 3.605551275463989}, "piped_api.models.videos.Video.RelatedStream.views": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 3.872983346207417}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 2}, "piped_api.models.videos.Video.related_videos": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Subtitle": {"tf": 1.7320508075688772}, "piped_api.models.videos.Video.Subtitle.url": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 2}, "piped_api.models.videos.Video.Subtitle.name": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Subtitle.code": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Subtitle.auto_generated": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.subtitles": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.livestream": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.proxy_url": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Chapter": {"tf": 2.449489742783178}, "piped_api.models.videos.Video.Chapter.title": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Chapter.image": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Chapter.start": {"tf": 2.8284271247461903}, "piped_api.models.videos.Video.chapters": {"tf": 1.4142135623730951}}, "df": 105, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {"piped_api": {"tf": 1}}, "df": 1, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api": {"tf": 2.6457513110645907}, "piped_api.client.PipedClient": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}, "piped_api.models.BasePipedModel": {"tf": 1}, "piped_api.models.comments.Comments": {"tf": 1}, "piped_api.models.comments.Comments.Comment": {"tf": 1}, "piped_api.models.videos.Video": {"tf": 1}, "piped_api.models.videos.Video.Subtitle": {"tf": 1}, "piped_api.models.videos.Video.proxy_url": {"tf": 1}}, "df": 14, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"piped_api": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}}}, "n": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.comments.Comments.Comment.pinned": {"tf": 1}}, "df": 1}}}}}, "y": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"piped_api": {"tf": 1.4142135623730951}}, "df": 1}}}}}, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"piped_api": {"tf": 1.4142135623730951}}, "df": 1}}, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}}}, "o": {"docs": {}, "df": 0, "j": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"piped_api": {"tf": 1}}, "df": 1, "s": {"docs": {"piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 1}}}}}, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1.4142135623730951}}, "df": 3}, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.channels.Channel": {"tf": 1}}, "df": 1}}}}}}}, "x": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.models.videos.Video.proxy_url": {"tf": 1}}, "df": 1}}}}, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {"piped_api": {"tf": 1.7320508075688772}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.models.videos.Video.upload_date": {"tf": 1}, "piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}}, "df": 7}}}}}, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}, "piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}, "piped_api.models.BasePipedModel.__init__": {"tf": 1}, "piped_api.models.videos.Video.get_streams": {"tf": 1}}, "df": 9}}}}}}}, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.channels.NextPageChannel": {"tf": 1}}, "df": 1}}}}, "s": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}}, "df": 6, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.channels.NextPageChannel.nextpage": {"tf": 1}}, "df": 1}}}}, "g": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.client.PipedClient.get_comments": {"tf": 1.4142135623730951}, "piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.comments.Comments.nextpage": {"tf": 1}}, "df": 3}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.channels.NextPageChannel.nextpage": {"tf": 1}}, "df": 1}}}}}}}}, "e": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {"piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.videos.Video.Stream.fps": {"tf": 1}}, "df": 3, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}}, "df": 1}}}}}}, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}}, "a": {"docs": {"piped_api": {"tf": 2.23606797749979}, "piped_api.client.PipedClient.__init__": {"tf": 1}, "piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}, "piped_api.models.channels.NextPageChannel": {"tf": 1.4142135623730951}, "piped_api.models.channels.NextPageChannel.nextpage": {"tf": 1}, "piped_api.models.channels.Channel": {"tf": 1}, "piped_api.models.channels.Channel.verified": {"tf": 1}, "piped_api.models.comments.Comments.get_comments": {"tf": 1}, "piped_api.models.comments.Comments.nextpage": {"tf": 1}, "piped_api.models.videos.Video.upload_date": {"tf": 1}, "piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.Stream": {"tf": 1}, "piped_api.models.videos.Video.Stream.codec": {"tf": 1}, "piped_api.models.videos.Video.get_streams": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.subtitles": {"tf": 1}, "piped_api.models.videos.Video.livestream": {"tf": 1}, "piped_api.models.videos.Video.Chapter": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.chapters": {"tf": 1}}, "df": 27, "p": {"docs": {}, "df": 0, "i": {"docs": {"piped_api": {"tf": 3.605551275463989}, "piped_api.client.APIError": {"tf": 1}, "piped_api.client.PipedClient": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.__init__": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.videos.Video.upload_date": {"tf": 1}, "piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}}, "df": 9}}, "s": {"docs": {"piped_api": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}}, "df": 7, "s": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.lbry_id": {"tf": 1}}, "df": 1}}}}}, "n": {"docs": {"piped_api": {"tf": 1.7320508075688772}, "piped_api.client.APIError": {"tf": 1}, "piped_api.client.PipedClient": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Stream": {"tf": 1}}, "df": 5, "d": {"docs": {"piped_api": {"tf": 2}, "piped_api.models.channels.NextPageChannel": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.Stream.quality": {"tf": 1}, "piped_api.models.videos.Video.Stream.fps": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream": {"tf": 1}}, "df": 6}}, "l": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}}}}}, "s": {"docs": {}, "df": 0, "o": {"docs": {"piped_api.client.PipedClient": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}}, "df": 2}}, "l": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1.4142135623730951}, "piped_api.models.BasePipedModel": {"tf": 1}, "piped_api.models.comments.Comments": {"tf": 1}, "piped_api.models.comments.Comments.Comment": {"tf": 1}, "piped_api.models.videos.Video": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.Stream.quality": {"tf": 1}, "piped_api.models.videos.Video.Subtitle": {"tf": 1}}, "df": 8}, "p": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "a": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 1}}}, "w": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}}, "df": 2}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}}, "df": 2}}}}}}, "c": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {"piped_api": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}}, "df": 2, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}}, "df": 1}}}}}, "p": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 1}}}, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}}, "u": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {"piped_api": {"tf": 2.449489742783178}, "piped_api.models.videos.Video.Stream": {"tf": 1}, "piped_api.models.videos.Video.Stream.quality": {"tf": 1}, "piped_api.models.videos.Video.Stream.width": {"tf": 1}, "piped_api.models.videos.Video.Stream.height": {"tf": 1}, "piped_api.models.videos.Video.Stream.fps": {"tf": 1}, "piped_api.models.videos.Video.get_streams": {"tf": 1}}, "df": 7}}}, "t": {"docs": {}, "df": 0, "o": {"docs": {"piped_api.models.videos.Video.Subtitle.auto_generated": {"tf": 1}}, "df": 1, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.videos.Video.upload_date": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}}, "df": 4}}}}}}}}}}, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.comments.Comments.Comment.author": {"tf": 1}, "piped_api.models.comments.Comments.Comment.verified": {"tf": 1}, "piped_api.models.videos.Video.uploader": {"tf": 1}, "piped_api.models.videos.Video.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.uploader_avatar": {"tf": 1}}, "df": 5}}}}}, "t": {"docs": {"piped_api.models.videos.Video.upload_date": {"tf": 1}}, "df": 1, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}}}, "d": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}}, "df": 6}}}}}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {"piped_api": {"tf": 1.7320508075688772}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1}, "piped_api.models.comments.Comments.disabled": {"tf": 1}, "piped_api.models.videos.Video.Stream.format": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.name": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.auto_generated": {"tf": 1}, "piped_api.models.videos.Video.Chapter": {"tf": 1}}, "df": 10, "a": {"docs": {"piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}}, "df": 2}}, "g": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}}, "df": 6}}}}}}}}, "b": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}}, "df": 3}}}}, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.channels.Channel.avatar_url": {"tf": 1}, "piped_api.models.videos.Video.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_avatar": {"tf": 1}}, "df": 3}}}, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.lbry_id": {"tf": 1}}, "df": 1}}}}}}}}, "g": {"docs": {}, "df": 0, "o": {"docs": {"piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"tf": 1}}, "df": 2}}, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.videos.Video.likes": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.views": {"tf": 1}}, "df": 3}}}}}, "w": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 1}}}}}}, "k": {"docs": {}, "df": 0, "a": {"docs": {"piped_api.models.videos.Video.Stream.video_only": {"tf": 1}}, "df": 1}}}, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"piped_api": {"tf": 1.7320508075688772}, "piped_api.client.PipedClient": {"tf": 1}}, "df": 2}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.BasePipedModel": {"tf": 1}, "piped_api.models.comments.Comments": {"tf": 1}, "piped_api.models.comments.Comments.Comment": {"tf": 1}, "piped_api.models.videos.Video": {"tf": 1}, "piped_api.models.videos.Video.Subtitle": {"tf": 1}}, "df": 5, "i": {"docs": {}, "df": 0, "c": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}, "/": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {"piped_api": {"tf": 1.7320508075688772}, "piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 2}, "s": {"docs": {}, "df": 0, "h": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}, "l": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.client.APIError": {"tf": 1}}, "df": 1}}, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}}, "df": 1, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}}, "df": 1}}}}}}}, "p": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 1}}}}}}}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.videos.Video.Subtitle.name": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.code": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.auto_generated": {"tf": 1}, "piped_api.models.videos.Video.subtitles": {"tf": 1}}, "df": 4}}}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}, "n": {"docs": {}, "df": 0, "g": {"docs": {"piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}}, "df": 4}}}, "e": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {"piped_api": {"tf": 1}}, "df": 1, "c": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "y": {"docs": {"piped_api": {"tf": 1}}, "df": 1}, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}, "u": {"docs": {}, "df": 0, "t": {"docs": {"piped_api": {"tf": 1}}, "df": 1}, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream": {"tf": 1}}, "df": 2, "l": {"docs": {}, "df": 0, "y": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}}}}, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"piped_api": {"tf": 1}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}}, "df": 3}}}}}, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.channels.NextPageChannel": {"tf": 1}, "piped_api.models.channels.Channel": {"tf": 1}}, "df": 2}}}}}, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.videos.Video.upload_date": {"tf": 1}, "piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}}, "df": 5}}}}}}, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}}, "df": 1}}, "n": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 1, "r": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 2.23606797749979}, "piped_api.models.videos.Video.Subtitle.code": {"tf": 1}}, "df": 2}, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 1}}}}}}}, "m": {"docs": {"piped_api.models.videos.Video.lbry_id": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 2, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.comments.Comments.Comment.author": {"tf": 1}, "piped_api.models.comments.Comments.Comment.comment_id": {"tf": 1}, "piped_api.models.comments.Comments.Comment.comment_text": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1.7320508075688772}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.commentor_url": {"tf": 1}, "piped_api.models.comments.Comments.Comment.hearted": {"tf": 1}, "piped_api.models.comments.Comments.Comment.like_count": {"tf": 1}, "piped_api.models.comments.Comments.Comment.pinned": {"tf": 1}, "piped_api.models.comments.Comments.Comment.verified": {"tf": 1}}, "df": 10, "s": {"docs": {"piped_api.client.PipedClient.get_comments": {"tf": 2.449489742783178}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}, "piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1}, "piped_api.models.comments.Comments.get_comments": {"tf": 1}, "piped_api.models.comments.Comments.disabled": {"tf": 1}}, "df": 5}, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}}, "df": 1, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}}, "df": 2}}}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.comments.Comments.Comment.thumbnail": {"tf": 1}}, "df": 1}}}}}}, "e": {"docs": {"piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}}, "df": 2}}, "d": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1.7320508075688772}, "piped_api.models.videos.Video.Subtitle.code": {"tf": 1}}, "df": 2, "s": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 1}, "c": {"docs": {"piped_api.models.videos.Video.Stream.codec": {"tf": 1}}, "df": 1}}}}, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.client.PipedClient.get_channel_by_id": {"tf": 1.7320508075688772}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1.7320508075688772}, "piped_api.models.channels.NextPageChannel": {"tf": 1.4142135623730951}, "piped_api.models.channels.Channel": {"tf": 1}, "piped_api.models.channels.Channel.id": {"tf": 1}, "piped_api.models.channels.Channel.name": {"tf": 1}, "piped_api.models.channels.Channel.avatar_url": {"tf": 1}, "piped_api.models.channels.Channel.banner_url": {"tf": 1}, "piped_api.models.channels.Channel.description": {"tf": 1}, "piped_api.models.channels.Channel.subscriber_count": {"tf": 1}, "piped_api.models.channels.Channel.verified": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commentor_url": {"tf": 1}, "piped_api.models.comments.Comments.Comment.thumbnail": {"tf": 1}, "piped_api.models.videos.Video.uploader": {"tf": 1}, "piped_api.models.videos.Video.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_name": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}}, "df": 21}}}}, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.videos.Video.Chapter": {"tf": 1}, "piped_api.models.videos.Video.Chapter.title": {"tf": 1}, "piped_api.models.videos.Video.Chapter.image": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}}, "df": 4, "s": {"docs": {"piped_api.models.videos.Video.Chapter": {"tf": 1}, "piped_api.models.videos.Video.chapters": {"tf": 1}}, "df": 2}}}}}}, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}}, "df": 1}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}}, "df": 2}}}}}}}}, "w": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}}, "a": {"docs": {}, "df": 0, "y": {"docs": {"piped_api": {"tf": 1}}, "df": 1}, "s": {"docs": {"piped_api": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.upload_date": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}}, "df": 8}, "n": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}}, "df": 1}}}, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {"piped_api": {"tf": 1}, "piped_api.models.BasePipedModel.__init__": {"tf": 1}, "piped_api.models.videos.Video.lbry_id": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}}, "df": 6, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}, "l": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 2}}, "d": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {"piped_api.models.videos.Video.Stream.width": {"tf": 1}}, "df": 1}}}}, "h": {"docs": {}, "df": 0, "y": {"docs": {"piped_api": {"tf": 1}}, "df": 1}, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"piped_api": {"tf": 1}, "piped_api.models.comments.Comments.nextpage": {"tf": 1}}, "df": 2}}}, "e": {"docs": {}, "df": 0, "n": {"docs": {"piped_api": {"tf": 1}, "piped_api.client.APIError": {"tf": 1}, "piped_api.models.channels.NextPageChannel.nextpage": {"tf": 1}}, "df": 3}, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.channels.Channel.verified": {"tf": 1}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.hearted": {"tf": 1}, "piped_api.models.comments.Comments.Comment.pinned": {"tf": 1}, "piped_api.models.comments.Comments.Comment.verified": {"tf": 1}, "piped_api.models.comments.Comments.disabled": {"tf": 1}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.Stream.video_only": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.auto_generated": {"tf": 1}, "piped_api.models.videos.Video.livestream": {"tf": 1}}, "df": 11}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.videos.Video.Stream.format": {"tf": 1}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Stream.codec": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}}, "df": 8, "e": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}}, "df": 1}}}}}}, "o": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 1}}}}}}}, "e": {"docs": {"piped_api.models.videos.Video.Stream.quality": {"tf": 1}}, "df": 1, "b": {"docs": {"piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}}, "df": 2, "m": {"docs": {"piped_api.models.videos.Video.Stream.format": {"tf": 1}}, "df": 1, "a": {"docs": {"piped_api.models.videos.Video.Stream.format": {"tf": 1}}, "df": 1}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}}, "df": 2}}}}}, "f": {"docs": {"piped_api": {"tf": 1}}, "df": 1, "o": {"docs": {}, "df": 0, "r": {"docs": {"piped_api": {"tf": 2}, "piped_api.client.PipedClient": {"tf": 1}, "piped_api.client.PipedClient.__init__": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_trending": {"tf": 1.7320508075688772}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1.4142135623730951}, "piped_api.models.BasePipedModel": {"tf": 1}, "piped_api.models.channels.NextPageChannel": {"tf": 1}, "piped_api.models.comments.Comments": {"tf": 1}, "piped_api.models.comments.Comments.Comment": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.comments.Comments.nextpage": {"tf": 1}, "piped_api.models.videos.Video": {"tf": 1}, "piped_api.models.videos.Video.hls": {"tf": 1}, "piped_api.models.videos.Video.dash": {"tf": 1}, "piped_api.models.videos.Video.Stream.quality": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.width": {"tf": 1}, "piped_api.models.videos.Video.Stream.height": {"tf": 1}, "piped_api.models.videos.Video.Stream.fps": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Subtitle": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.code": {"tf": 1}, "piped_api.models.videos.Video.subtitles": {"tf": 1}, "piped_api.models.videos.Video.proxy_url": {"tf": 1}, "piped_api.models.videos.Video.Chapter.image": {"tf": 1}, "piped_api.models.videos.Video.chapters": {"tf": 1}}, "df": 32, "m": {"docs": {}, "df": 0, "s": {"docs": {"piped_api": {"tf": 1}}, "df": 1}, "a": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.videos.Video.Stream.format": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"tf": 1}}, "df": 3}}}}, "l": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {"piped_api": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}, "piped_api.models.videos.Video.upload_date": {"tf": 1}, "piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}}, "df": 12}}, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}}, "e": {"docs": {}, "df": 0, "e": {"docs": {"piped_api": {"tf": 1}}, "df": 1}, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}}, "df": 2}}}}, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.videos.Video.Stream.fps": {"tf": 1}}, "df": 1}}}}}, "i": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"piped_api": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}}, "df": 2}}}, "n": {"docs": {}, "df": 0, "d": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.client.APIError": {"tf": 1}}, "df": 1}}}, "r": {"docs": {"piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}}, "df": 1}}, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}}, "df": 1}}}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}}, "df": 1}}}}}}}, "t": {"1": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "v": {"3": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "e": {"9": {"2": {"6": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "o": {"2": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "n": {"3": {"docs": {}, "df": 0, "f": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}, "docs": {}, "df": 0}}}}}, "docs": {}, "df": 0}}}}}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}}}}}}}}}}, "docs": {}, "df": 0}}}}}}}, "docs": {"piped_api": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Stream.format": {"tf": 1}, "piped_api.models.videos.Video.Stream.codec": {"tf": 1}}, "df": 4, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {"piped_api": {"tf": 2.23606797749979}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1.4142135623730951}, "piped_api.models.channels.NextPageChannel": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}, "piped_api.models.comments.Comments.nextpage": {"tf": 1}, "piped_api.models.videos.Video.upload_date": {"tf": 1}, "piped_api.models.videos.Video.lbry_id": {"tf": 1}, "piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Stream.codec": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.fps": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}}, "df": 23}, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "y": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}, "e": {"docs": {"piped_api": {"tf": 2.8284271247461903}, "piped_api.client.PipedClient.__init__": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_video": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_comments": {"tf": 1.7320508075688772}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}, "piped_api.models.BasePipedModel.__init__": {"tf": 1.4142135623730951}, "piped_api.models.channels.NextPageChannel": {"tf": 1}, "piped_api.models.channels.NextPageChannel.nextpage": {"tf": 1}, "piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.channels.Channel.id": {"tf": 1}, "piped_api.models.channels.Channel.name": {"tf": 1}, "piped_api.models.channels.Channel.avatar_url": {"tf": 1}, "piped_api.models.channels.Channel.banner_url": {"tf": 1}, "piped_api.models.channels.Channel.description": {"tf": 1}, "piped_api.models.channels.Channel.subscriber_count": {"tf": 1.4142135623730951}, "piped_api.models.channels.Channel.verified": {"tf": 1}, "piped_api.models.comments.Comments.Comment.author": {"tf": 1.7320508075688772}, "piped_api.models.comments.Comments.Comment.comment_id": {"tf": 1}, "piped_api.models.comments.Comments.Comment.comment_text": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 2.449489742783178}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.commentor_url": {"tf": 1.7320508075688772}, "piped_api.models.comments.Comments.Comment.hearted": {"tf": 1}, "piped_api.models.comments.Comments.Comment.like_count": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.pinned": {"tf": 1}, "piped_api.models.comments.Comments.Comment.thumbnail": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.verified": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.disabled": {"tf": 1}, "piped_api.models.comments.Comments.nextpage": {"tf": 1}, "piped_api.models.videos.Video.title": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.description": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.upload_date": {"tf": 2.23606797749979}, "piped_api.models.videos.Video.uploader": {"tf": 1.7320508075688772}, "piped_api.models.videos.Video.uploader_url": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.uploader_avatar": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.thumbnail_url": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.hls": {"tf": 1}, "piped_api.models.videos.Video.dash": {"tf": 1}, "piped_api.models.videos.Video.lbry_id": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.duration": {"tf": 2}, "piped_api.models.videos.Video.views": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.likes": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.dislikes": {"tf": 1.7320508075688772}, "piped_api.models.videos.Video.Stream.url": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Stream.format": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Stream.quality": {"tf": 1}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Stream.video_only": {"tf": 1}, "piped_api.models.videos.Video.Stream.bitrate": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Stream.width": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Stream.height": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.get_streams": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.RelatedStream": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.RelatedStream.url": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.RelatedStream.title": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.RelatedStream.thumbnail": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.RelatedStream.uploader_name": {"tf": 1.7320508075688772}, "piped_api.models.videos.Video.RelatedStream.uploader_url": {"tf": 1.7320508075688772}, "piped_api.models.videos.Video.RelatedStream.uploader_avatar": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 2}, "piped_api.models.videos.Video.RelatedStream.views": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1.7320508075688772}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Subtitle.url": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.name": {"tf": 1.7320508075688772}, "piped_api.models.videos.Video.Subtitle.code": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Subtitle.auto_generated": {"tf": 1}, "piped_api.models.videos.Video.subtitles": {"tf": 1}, "piped_api.models.videos.Video.livestream": {"tf": 1}, "piped_api.models.videos.Video.proxy_url": {"tf": 1}, "piped_api.models.videos.Video.Chapter": {"tf": 1}, "piped_api.models.videos.Video.Chapter.title": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Chapter.image": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Chapter.start": {"tf": 2}, "piped_api.models.videos.Video.chapters": {"tf": 1}}, "df": 82, "i": {"docs": {}, "df": 0, "r": {"docs": {"piped_api": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 2}}, "r": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}, "piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1}, "piped_api.models.comments.Comments.nextpage": {"tf": 1}, "piped_api.models.videos.Video.Stream.format": {"tf": 1}, "piped_api.models.videos.Video.Chapter": {"tf": 1}}, "df": 8}}, "y": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 1}, "s": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}}, "df": 2}}, "n": {"docs": {"piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}}, "df": 2}}, "a": {"docs": {}, "df": 0, "t": {"docs": {"piped_api": {"tf": 1}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.commentor_url": {"tf": 1}, "piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1}, "piped_api.models.videos.Video.upload_date": {"tf": 1}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_name": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}}, "df": 11}}, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.models.comments.Comments.Comment.thumbnail": {"tf": 1}, "piped_api.models.videos.Video.thumbnail_url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.thumbnail": {"tf": 1}}, "df": 3}}}}}}}}, "o": {"docs": {"piped_api": {"tf": 2.8284271247461903}, "piped_api.client.PipedClient.__init__": {"tf": 1.7320508075688772}, "piped_api.client.PipedClient.get_video": {"tf": 1.7320508075688772}, "piped_api.client.PipedClient.get_comments": {"tf": 1.7320508075688772}, "piped_api.client.PipedClient.get_trending": {"tf": 1.7320508075688772}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1.7320508075688772}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1.7320508075688772}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1.7320508075688772}, "piped_api.models.BasePipedModel.__init__": {"tf": 1}, "piped_api.models.channels.NextPageChannel.nextpage": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1}, "piped_api.models.videos.Video.upload_date": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.thumbnail_url": {"tf": 1}, "piped_api.models.videos.Video.hls": {"tf": 1}, "piped_api.models.videos.Video.lbry_id": {"tf": 1}, "piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}, "piped_api.models.videos.Video.get_streams": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.url": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}}, "df": 31, "/": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.videos.Video.RelatedStream": {"tf": 1}}, "df": 1}}}}}}}}}}, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"piped_api": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.get_streams": {"tf": 1.4142135623730951}}, "df": 2}}}, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}, "x": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.comments.Comments.Comment.comment_text": {"tf": 1}}, "df": 1}}}, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}}, "df": 1}}}}}}, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 2}, "piped_api.models.videos.Video.RelatedStream": {"tf": 1}}, "df": 2}}}}}}}, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}}, "df": 3, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {"piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}}, "df": 3}}}}}, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.videos.Video.Chapter": {"tf": 1}}, "df": 1}}}}}}}}, "t": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.RelatedStream.title": {"tf": 1}, "piped_api.models.videos.Video.Chapter.title": {"tf": 1}}, "df": 2, "/": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.title": {"tf": 1}}, "df": 1}}}}}}}}, "n": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 1}}}}, "e": {"docs": {"piped_api": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Stream.quality": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}}, "df": 4, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}}}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "y": {"docs": {"piped_api": {"tf": 1.4142135623730951}}, "df": 1}}, "c": {"docs": {}, "df": 0, "h": {"docs": {"piped_api.models.videos.Video.Stream.format": {"tf": 1}}, "df": 1}}}, "x": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}}, "df": 1, "s": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}}}, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {"piped_api": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1.4142135623730951}}, "df": 1}}}}, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.channels.NextPageChannel": {"tf": 1}, "piped_api.models.channels.NextPageChannel.nextpage": {"tf": 1}, "piped_api.models.comments.Comments.nextpage": {"tf": 1}}, "df": 3}}}}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.channels.NextPageChannel.nextpage": {"tf": 1}, "piped_api.models.comments.Comments.nextpage": {"tf": 1}}, "df": 2}}}}}}, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1.4142135623730951}}, "df": 2}}}}}, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.videos.Video.Stream": {"tf": 1}, "piped_api.models.videos.Video.get_streams": {"tf": 1}}, "df": 2}}}}}, "p": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}}, "df": 1}}}}}, "b": {"docs": {}, "df": 0, "e": {"docs": {"piped_api": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.__init__": {"tf": 1}, "piped_api.models.channels.NextPageChannel.nextpage": {"tf": 1}, "piped_api.models.videos.Video.hls": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}}, "df": 8, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}}, "df": 1}}}}}, "e": {"docs": {}, "df": 0, "n": {"docs": {"piped_api.models.comments.Comments.Comment.hearted": {"tf": 1}}, "df": 1}}}, "y": {"docs": {"piped_api": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.models.channels.Channel.verified": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.auto_generated": {"tf": 1}}, "df": 10}, "u": {"docs": {}, "df": 0, "t": {"docs": {"piped_api": {"tf": 1}, "piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1}, "piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}}, "df": 9}}, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"piped_api": {"tf": 1.4142135623730951}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.Stream.bitrate": {"tf": 1}}, "df": 1}}}}}, "g": {"docs": {"piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 1}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1.4142135623730951}, "piped_api.models.BasePipedModel": {"tf": 1}, "piped_api.models.comments.Comments": {"tf": 1}, "piped_api.models.comments.Comments.Comment": {"tf": 1}, "piped_api.models.videos.Video": {"tf": 1}, "piped_api.models.videos.Video.Subtitle": {"tf": 1}, "piped_api.models.videos.Video.proxy_url": {"tf": 1}}, "df": 7}}, "n": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.channels.Channel.banner_url": {"tf": 1}}, "df": 1}}}}, "d": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.channels.Channel.verified": {"tf": 1}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}}, "df": 3}}}}}, "u": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"piped_api": {"tf": 1.7320508075688772}, "piped_api.client.PipedClient.__init__": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.upload_date": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 4, "d": {"docs": {"piped_api": {"tf": 1}, "piped_api.models.comments.Comments.nextpage": {"tf": 1}, "piped_api.models.videos.Video.hls": {"tf": 1}}, "df": 3}, "r": {"docs": {"piped_api": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 2}, "f": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {"piped_api": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}}, "df": 5}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}, "u": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.models.videos.Video.Stream.fps": {"tf": 1}}, "df": 1}}}}}}, "r": {"docs": {}, "df": 0, "l": {"docs": {"piped_api": {"tf": 1.7320508075688772}, "piped_api.client.PipedClient.__init__": {"tf": 1.4142135623730951}, "piped_api.models.channels.Channel.avatar_url": {"tf": 1}, "piped_api.models.channels.Channel.banner_url": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commentor_url": {"tf": 1}, "piped_api.models.videos.Video.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.thumbnail_url": {"tf": 1}, "piped_api.models.videos.Video.hls": {"tf": 1}, "piped_api.models.videos.Video.dash": {"tf": 1}, "piped_api.models.videos.Video.Stream.url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.thumbnail": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.url": {"tf": 1}, "piped_api.models.videos.Video.proxy_url": {"tf": 1}, "piped_api.models.videos.Video.Chapter.image": {"tf": 1}}, "df": 17}, "i": {"docs": {"piped_api.models.videos.Video.uploader_url": {"tf": 1}}, "df": 1}}, "p": {"docs": {"piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 1, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.videos.Video.upload_date": {"tf": 1}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_name": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}}, "df": 8}}, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.upload_date": {"tf": 1}}, "df": 1}}}}}}}}}, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}}, "df": 1}}}}}}, "y": {"docs": {"piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"tf": 1}}, "df": 2, "o": {"docs": {}, "df": 0, "u": {"docs": {"piped_api": {"tf": 2.6457513110645907}, "piped_api.client.PipedClient.__init__": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1.4142135623730951}}, "df": 7, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "e": {"docs": {"piped_api": {"tf": 1.4142135623730951}, "piped_api.models.channels.Channel": {"tf": 1}, "piped_api.models.channels.Channel.verified": {"tf": 1}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.auto_generated": {"tf": 1}, "piped_api.models.videos.Video.Chapter": {"tf": 1}}, "df": 9}}}}}}}, "s": {"docs": {"piped_api": {"tf": 1.7320508075688772}, "piped_api.client.PipedClient.__init__": {"tf": 1}, "piped_api.models.channels.NextPageChannel": {"tf": 1}, "piped_api.models.channels.NextPageChannel.nextpage": {"tf": 1}, "piped_api.models.channels.Channel.id": {"tf": 1}, "piped_api.models.channels.Channel.name": {"tf": 1}, "piped_api.models.channels.Channel.avatar_url": {"tf": 1}, "piped_api.models.channels.Channel.banner_url": {"tf": 1}, "piped_api.models.channels.Channel.description": {"tf": 1}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}, "piped_api.models.comments.Comments.Comment.thumbnail": {"tf": 1}, "piped_api.models.videos.Video.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.thumbnail_url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_avatar": {"tf": 1}}, "df": 15, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.videos.Video.Chapter.start": {"tf": 1}}, "df": 1, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.videos.Video.Stream.quality": {"tf": 1}}, "df": 1}}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {"piped_api": {"tf": 2.23606797749979}, "piped_api.models.videos.Video.Stream": {"tf": 1}, "piped_api.models.videos.Video.Stream.url": {"tf": 1}, "piped_api.models.videos.Video.Stream.format": {"tf": 1}, "piped_api.models.videos.Video.Stream.video_only": {"tf": 1}, "piped_api.models.videos.Video.Stream.bitrate": {"tf": 1}, "piped_api.models.videos.Video.Stream.width": {"tf": 1}, "piped_api.models.videos.Video.Stream.height": {"tf": 1}, "piped_api.models.videos.Video.get_streams": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream": {"tf": 1}}, "df": 10, "s": {"docs": {"piped_api": {"tf": 1}, "piped_api.models.videos.Video.dash": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.width": {"tf": 1}, "piped_api.models.videos.Video.Stream.height": {"tf": 1}, "piped_api.models.videos.Video.get_streams": {"tf": 1}, "piped_api.models.videos.Video.related_videos": {"tf": 1}}, "df": 10}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"piped_api.models.channels.NextPageChannel.nextpage": {"tf": 1}, "piped_api.models.videos.Video.upload_date": {"tf": 1.4142135623730951}}, "df": 2, "s": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}, "p": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}}, "df": 1}}}}}}}, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"piped_api": {"tf": 1}, "piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1}}, "df": 2}}}, "o": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 1, "m": {"docs": {}, "df": 0, "e": {"docs": {"piped_api": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}}, "df": 3, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"piped_api.models.videos.Video.lbry_id": {"tf": 1}}, "df": 1}}}}}}}, "f": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}}}, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {"piped_api": {"tf": 1}}, "df": 1, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}, "c": {"docs": {}, "df": 0, "h": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 2}}, "g": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.client.PipedClient.get_search_suggestions": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}}}, "b": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.channels.Channel.subscriber_count": {"tf": 1}}, "df": 1}}}}}}}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.Subtitle.url": {"tf": 1}}, "df": 1}}}}}}, "f": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "x": {"docs": {"piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1.7320508075688772}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}}, "df": 4}}}, "e": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.client.PipedClient": {"tf": 1}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}}, "df": 2, "m": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}}, "df": 4}}}, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}}, "df": 7}}}}}, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"piped_api.client.PipedClient.get_search_suggestions": {"tf": 1.7320508075688772}}, "df": 1}}}}, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.videos.Video.Stream.fps": {"tf": 1}}, "df": 1, "s": {"docs": {"piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}}, "df": 3}}}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"piped_api.models.videos.Video.Chapter": {"tf": 1}}, "df": 1}}}}}, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.Stream.width": {"tf": 1}, "piped_api.models.videos.Video.Stream.height": {"tf": 1}}, "df": 2}}}}, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}}, "df": 1}}}}}}, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {"piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}}, "df": 5}}}}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}}, "df": 3}}}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.videos.Video.RelatedStream": {"tf": 1}}, "df": 1}}}}}}, "y": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {"piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 1}}}}}, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 1}}}}}}, "h": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}}, "df": 1}}}}}, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api": {"tf": 1}}, "df": 1, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}, "x": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.client.PipedClient.get_comments": {"tf": 1.7320508075688772}, "piped_api.models.channels.NextPageChannel": {"tf": 1.4142135623730951}, "piped_api.models.channels.NextPageChannel.nextpage": {"tf": 1}, "piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1}, "piped_api.models.comments.Comments.nextpage": {"tf": 1.4142135623730951}}, "df": 5, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.models.channels.Channel": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}, "o": {"docs": {"piped_api": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1}, "piped_api.models.comments.Comments.nextpage": {"tf": 1}, "piped_api.models.videos.Video.Stream.format": {"tf": 1}}, "df": 5, "t": {"docs": {"piped_api": {"tf": 1.7320508075688772}, "piped_api.models.channels.Channel.verified": {"tf": 1}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}, "piped_api.models.comments.Comments.Comment.hearted": {"tf": 1}, "piped_api.models.comments.Comments.Comment.pinned": {"tf": 1}, "piped_api.models.comments.Comments.Comment.verified": {"tf": 1}, "piped_api.models.comments.Comments.disabled": {"tf": 1}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Stream.video_only": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.auto_generated": {"tf": 1}, "piped_api.models.videos.Video.livestream": {"tf": 1}}, "df": 18, "e": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}, "piped_api.models.videos.Video.upload_date": {"tf": 1}, "piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}}, "df": 9}}, "n": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1}, "piped_api.models.comments.Comments.nextpage": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}}, "df": 4}}, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 1}}}}, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.client.PipedClient.get_channel_by_name": {"tf": 1.7320508075688772}, "piped_api.models.channels.Channel.name": {"tf": 1}, "piped_api.models.comments.Comments.Comment.author": {"tf": 1}, "piped_api.models.videos.Video.uploader": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_name": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.name": {"tf": 1}}, "df": 6}}}, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"piped_api.models.channels.Channel.subscriber_count": {"tf": 1}, "piped_api.models.comments.Comments.Comment.like_count": {"tf": 1}, "piped_api.models.videos.Video.views": {"tf": 1}}, "df": 3}}}}}}, "k": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "y": {"docs": {"piped_api": {"tf": 1}}, "df": 1, "s": {"docs": {"piped_api": {"tf": 1}}, "df": 1}, "w": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}}, "df": 6}}}}}, "e": {"docs": {}, "df": 0, "p": {"docs": {"piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}}, "df": 1}}}, "w": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}}, "df": 6}}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 1}}}}, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "w": {"docs": {"piped_api.models.videos.Video.Stream.format": {"tf": 1}, "piped_api.models.videos.Video.Stream.quality": {"tf": 1}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Stream.codec": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}}, "df": 6}}}}, "i": {"docs": {"piped_api": {"tf": 1}, "piped_api.models.videos.Video.lbry_id": {"tf": 1}, "piped_api.models.videos.Video.Stream.format": {"tf": 1}, "piped_api.models.videos.Video.Stream.codec": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}}, "df": 5, "n": {"docs": {"piped_api": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}, "piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.name": {"tf": 1}, "piped_api.models.videos.Video.Chapter": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}}, "df": 8, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {"piped_api": {"tf": 1}}, "df": 1, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}}}, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}}, "df": 1}}}}}}, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}}}}, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"piped_api.client.PipedClient.get_video": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1.4142135623730951}}, "df": 3}}}}}}}}}, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 1}}}}, "i": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}}, "df": 2}}}}}}}, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.BasePipedModel.__init__": {"tf": 1}}, "df": 1}}}}}}}}, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}}, "df": 1}}}}}}}, "s": {"docs": {"piped_api": {"tf": 2}, "piped_api.client.PipedClient.get_comments": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_trending": {"tf": 1.7320508075688772}, "piped_api.models.channels.Channel.verified": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.pinned": {"tf": 1}, "piped_api.models.comments.Comments.Comment.verified": {"tf": 1}, "piped_api.models.comments.Comments.nextpage": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Stream.codec": {"tf": 1}, "piped_api.models.videos.Video.Stream.video_only": {"tf": 1}, "piped_api.models.videos.Video.Stream.fps": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}, "piped_api.models.videos.Video.livestream": {"tf": 1}}, "df": 19, "o": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 1}}, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.thumbnail_url": {"tf": 1}, "piped_api.models.videos.Video.Chapter.image": {"tf": 1}}, "df": 3}}}}, "d": {"docs": {"piped_api": {"tf": 1}, "piped_api.client.PipedClient.get_video": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_comments": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1.7320508075688772}, "piped_api.models.channels.Channel.id": {"tf": 1}, "piped_api.models.comments.Comments.Comment.comment_id": {"tf": 1}, "piped_api.models.videos.Video.lbry_id": {"tf": 1}}, "df": 7}, "t": {"docs": {"piped_api": {"tf": 2.23606797749979}, "piped_api.models.channels.NextPageChannel": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}}, "df": 12, "s": {"docs": {"piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}}, "df": 2}}, "f": {"docs": {"piped_api": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.nextpage": {"tf": 1}, "piped_api.models.videos.Video.lbry_id": {"tf": 1}, "piped_api.models.videos.Video.likes": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Chapter": {"tf": 1}}, "df": 11}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}}}}, "o": {"docs": {}, "df": 0, "t": {"docs": {"piped_api": {"tf": 1.4142135623730951}}, "df": 1}}, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.client.PipedClient.get_search_suggestions": {"tf": 1.7320508075688772}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.models.videos.Video.Stream.quality": {"tf": 1}}, "df": 1}}}}}}, "z": {"docs": {}, "df": 0, "x": {"6": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "m": {"7": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"2": {"4": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "p": {"6": {"5": {"docs": {}, "df": 0, "r": {"8": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "j": {"9": {"docs": {}, "df": 0, "n": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}, "docs": {}, "df": 0}}}}}}}}}}}}}}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}}}}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}}, "docs": {}, "df": 0}}}}}}}}, "docs": {}, "df": 0}}}, "g": {"docs": {"piped_api.models.videos.Video.Stream.quality": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}}, "df": 3, "e": {"docs": {}, "df": 0, "t": {"docs": {"piped_api": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_video": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_comments": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_trending": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}, "piped_api.models.videos.Video.upload_date": {"tf": 1}, "piped_api.models.videos.Video.get_streams": {"tf": 1.4142135623730951}}, "df": 10, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}, "s": {"docs": {"piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}}, "df": 4}}, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.videos.Video.Subtitle.auto_generated": {"tf": 1}}, "df": 1}}}}}}}}, "o": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"piped_api": {"tf": 1.4142135623730951}}, "df": 1}}}}}, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 1}}}}}}}}}}, "v": {"3": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "p": {"docs": {"piped_api.models.videos.Video.Stream.format": {"tf": 1}}, "df": 1}}}}, "docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"piped_api": {"tf": 2}}, "df": 1}, "i": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.channels.Channel.verified": {"tf": 1}, "piped_api.models.comments.Comments.Comment.verified": {"tf": 1}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}}, "df": 4}}}}}}}, "i": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "o": {"docs": {"piped_api": {"tf": 2.23606797749979}, "piped_api.client.PipedClient.get_video": {"tf": 1.7320508075688772}, "piped_api.client.PipedClient.get_comments": {"tf": 1.7320508075688772}, "piped_api.models.videos.Video.title": {"tf": 1}, "piped_api.models.videos.Video.description": {"tf": 1}, "piped_api.models.videos.Video.upload_date": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.uploader": {"tf": 1}, "piped_api.models.videos.Video.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.thumbnail_url": {"tf": 1}, "piped_api.models.videos.Video.lbry_id": {"tf": 1}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.duration": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.views": {"tf": 1}, "piped_api.models.videos.Video.likes": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.Stream": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Stream.quality": {"tf": 1}, "piped_api.models.videos.Video.Stream.video_only": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Stream.fps": {"tf": 1}, "piped_api.models.videos.Video.get_streams": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.RelatedStream": {"tf": 1.7320508075688772}, "piped_api.models.videos.Video.RelatedStream.url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.title": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.thumbnail": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_name": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.RelatedStream.views": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.subtitles": {"tf": 1}, "piped_api.models.videos.Video.livestream": {"tf": 1}, "piped_api.models.videos.Video.Chapter": {"tf": 1}, "piped_api.models.videos.Video.chapters": {"tf": 1}}, "df": 36, "s": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 2}, "piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1.4142135623730951}}, "df": 2}}}}, "a": {"docs": {"piped_api": {"tf": 1}, "piped_api.models.channels.NextPageChannel": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}}, "df": 3}, "e": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.videos.Video.views": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.views": {"tf": 1}}, "df": 2}}}}, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}}, "df": 4}}}}}, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}, "f": {"docs": {"piped_api": {"tf": 1.7320508075688772}, "piped_api.client.PipedClient.__init__": {"tf": 1}, "piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1.7320508075688772}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.channels.Channel": {"tf": 1}, "piped_api.models.channels.Channel.subscriber_count": {"tf": 1}, "piped_api.models.comments.Comments.Comment.author": {"tf": 1.4142135623730951}, "piped_api.models.comments.Comments.Comment.comment_text": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commentor_url": {"tf": 1}, "piped_api.models.comments.Comments.Comment.like_count": {"tf": 1}, "piped_api.models.comments.Comments.Comment.thumbnail": {"tf": 1}, "piped_api.models.comments.Comments.Comment.verified": {"tf": 1}, "piped_api.models.comments.Comments.get_comments": {"tf": 1}, "piped_api.models.videos.Video.title": {"tf": 1}, "piped_api.models.videos.Video.description": {"tf": 1}, "piped_api.models.videos.Video.uploader": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.lbry_id": {"tf": 1}, "piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.views": {"tf": 1}, "piped_api.models.videos.Video.likes": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.Stream": {"tf": 1}, "piped_api.models.videos.Video.Stream.url": {"tf": 1}, "piped_api.models.videos.Video.Stream.format": {"tf": 1}, "piped_api.models.videos.Video.Stream.bitrate": {"tf": 1}, "piped_api.models.videos.Video.Stream.width": {"tf": 1}, "piped_api.models.videos.Video.Stream.height": {"tf": 1}, "piped_api.models.videos.Video.get_streams": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.RelatedStream.title": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.thumbnail": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_name": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_avatar": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.views": {"tf": 1}, "piped_api.models.videos.Video.related_videos": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.name": {"tf": 1}, "piped_api.models.videos.Video.subtitles": {"tf": 1}, "piped_api.models.videos.Video.Chapter": {"tf": 1}, "piped_api.models.videos.Video.Chapter.title": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}, "piped_api.models.videos.Video.chapters": {"tf": 1}}, "df": 46, "f": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"piped_api": {"tf": 1.4142135623730951}}, "df": 1}}}}}}, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {"piped_api.client.PipedClient.get_comments": {"tf": 1}}, "df": 1}}}}, "b": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"piped_api": {"tf": 1}, "piped_api.models.comments.Comments.get_comments": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 3, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.models.channels.NextPageChannel": {"tf": 1}, "piped_api.models.videos.Video.upload_date": {"tf": 1}}, "df": 3}}, "s": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}}, "df": 2}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"piped_api.models.channels.NextPageChannel.nextpage": {"tf": 1}}, "df": 1}}}}}}}, "j": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.videos.Video.upload_date": {"tf": 1}, "piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1.4142135623730951}}, "df": 4}}}}, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 1}}}}}}}, "n": {"docs": {"piped_api": {"tf": 1}}, "df": 1, "e": {"docs": {"piped_api": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream": {"tf": 1}}, "df": 2}, "l": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.models.channels.NextPageChannel": {"tf": 1}, "piped_api.models.videos.Video.Stream.video_only": {"tf": 1}}, "df": 2}}}, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"piped_api": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}}, "df": 3}}}, "f": {"docs": {"piped_api.models.videos.Video.dash": {"tf": 1}}, "df": 1}}, "r": {"docs": {"piped_api": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1.4142135623730951}, "piped_api.models.channels.Channel.verified": {"tf": 1}, "piped_api.models.comments.Comments.Comment.is_edited": {"tf": 1}, "piped_api.models.comments.Comments.Comment.hearted": {"tf": 1}, "piped_api.models.comments.Comments.Comment.pinned": {"tf": 1}, "piped_api.models.comments.Comments.Comment.verified": {"tf": 1}, "piped_api.models.comments.Comments.disabled": {"tf": 1}, "piped_api.models.videos.Video.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.Stream": {"tf": 1}, "piped_api.models.videos.Video.Stream.format": {"tf": 2.23606797749979}, "piped_api.models.videos.Video.Stream.quality": {"tf": 1}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Stream.video_only": {"tf": 1}, "piped_api.models.videos.Video.Stream.fps": {"tf": 1}, "piped_api.models.videos.Video.get_streams": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.auto_generated": {"tf": 1}, "piped_api.models.videos.Video.livestream": {"tf": 1}, "piped_api.models.videos.Video.Chapter": {"tf": 1}}, "df": 21, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}}, "df": 4}}}}}}}, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.videos.Video.Stream.format": {"tf": 1}}, "df": 1}}}}, "m": {"4": {"docs": {}, "df": 0, "a": {"docs": {"piped_api.models.videos.Video.Stream.format": {"tf": 1}}, "df": 1}}, "docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"piped_api": {"tf": 1}}, "df": 1, "s": {"docs": {"piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}}, "df": 2}}}, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}}, "df": 1}}}}}}}}}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"piped_api": {"tf": 1.7320508075688772}}, "df": 1}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}}}}, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {"piped_api.models.BasePipedModel.__init__": {"tf": 1}, "piped_api.models.channels.NextPageChannel": {"tf": 1}}, "df": 2, "s": {"docs": {"piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.models.BasePipedModel": {"tf": 1}, "piped_api.models.comments.Comments": {"tf": 1}, "piped_api.models.comments.Comments.Comment": {"tf": 1}, "piped_api.models.videos.Video": {"tf": 1}, "piped_api.models.videos.Video.Subtitle": {"tf": 1}}, "df": 6}}}}, "z": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {"piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}}, "df": 2}}}}}}, "u": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}, "c": {"docs": {}, "df": 0, "h": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.videos.Video.Stream.video_only": {"tf": 1}}, "df": 1}}}}, "e": {"docs": {"piped_api": {"tf": 2}}, "df": 1, "a": {"docs": {}, "df": 0, "n": {"docs": {"piped_api.models.videos.Video.Stream.format": {"tf": 1}}, "df": 1, "t": {"docs": {"piped_api": {"tf": 1}}, "df": 1}, "s": {"docs": {"piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1}}, "df": 1}}}}, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {"piped_api": {"tf": 1.4142135623730951}}, "df": 1}}, "k": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 1}}, "df": 1, "s": {"docs": {"piped_api.models.videos.Video.Stream.width": {"tf": 1}, "piped_api.models.videos.Video.Stream.height": {"tf": 1}}, "df": 2}}}, "x": {"docs": {"piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}}, "df": 1}, "d": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commentor_url": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 3}}, "r": {"docs": {}, "df": 0, "k": {"docs": {"piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}}, "df": 1}}, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.videos.Video.hls": {"tf": 1}, "piped_api.models.videos.Video.dash": {"tf": 1}}, "df": 2}}}}}, "y": {"docs": {"piped_api.models.videos.Video.Stream.format": {"tf": 1}}, "df": 1}}}, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "g": {"docs": {"piped_api.models.videos.Video.Stream.format": {"tf": 1}}, "df": 1}}}}, "h": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {"piped_api": {"tf": 1.4142135623730951}, "piped_api.models.channels.Channel.subscriber_count": {"tf": 1}, "piped_api.models.channels.Channel.verified": {"tf": 1}, "piped_api.models.comments.Comments.Comment.hearted": {"tf": 1}, "piped_api.models.comments.Comments.Comment.like_count": {"tf": 1}, "piped_api.models.videos.Video.lbry_id": {"tf": 1}, "piped_api.models.videos.Video.views": {"tf": 1}, "piped_api.models.videos.Video.likes": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.views": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}}, "df": 11}, "n": {"docs": {}, "df": 0, "d": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}, "v": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 1}}}, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "h": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}, "d": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {"piped_api.models.videos.Video.likes": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 2}}}}}, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "p": {"docs": {"piped_api": {"tf": 1}}, "df": 1, "s": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.comments.Comments.Comment.hearted": {"tf": 1}}, "df": 1}}}}}, "i": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.videos.Video.Stream.height": {"tf": 1}}, "df": 1}}}}}, "l": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.videos.Video.hls": {"tf": 1}}, "df": 1}}, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, ":": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "/": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.models.videos.Video.lbry_id": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}}}}}}}}}}}, "o": {"docs": {}, "df": 0, "w": {"docs": {"piped_api.models.videos.Video.Stream.format": {"tf": 1}}, "df": 1}}}, "j": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"piped_api": {"tf": 1}, "piped_api.models.BasePipedModel.__init__": {"tf": 1}, "piped_api.models.channels.NextPageChannel.nextpage": {"tf": 1}, "piped_api.models.comments.Comments.nextpage": {"tf": 1}}, "df": 4}}}}, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "w": {"docs": {"piped_api": {"tf": 1}}, "df": 1, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 1}}}}}}}, "a": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1}}, "df": 1}}, "v": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.Stream.quality": {"tf": 1}}, "df": 1}}}, "e": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {"piped_api": {"tf": 1.4142135623730951}}, "df": 1}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "s": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}, "k": {"docs": {}, "df": 0, "e": {"docs": {"piped_api": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 2, "s": {"docs": {"piped_api.models.comments.Comments.Comment.like_count": {"tf": 1}, "piped_api.models.videos.Video.likes": {"tf": 1}}, "df": 2}}}, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}, "t": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 1}}}}, "s": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1.4142135623730951}, "piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.comments.Comments.get_comments": {"tf": 1}, "piped_api.models.videos.Video.related_videos": {"tf": 1}, "piped_api.models.videos.Video.subtitles": {"tf": 1}, "piped_api.models.videos.Video.Chapter": {"tf": 1}, "piped_api.models.videos.Video.chapters": {"tf": 1}}, "df": 8}}, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {"piped_api.models.videos.Video.livestream": {"tf": 1}}, "df": 1, "s": {"docs": {"piped_api.models.videos.Video.hls": {"tf": 1}}, "df": 1}}}}}}}}}}, "g": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "k": {"1": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "q": {"5": {"6": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "j": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "h": {"7": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "d": {"2": {"docs": {"piped_api": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}}}}, "docs": {}, "df": 0}}}}}}}}}}}}}}}}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}}}}, "docs": {}, "df": 0}}}}, "b": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.models.videos.Video.lbry_id": {"tf": 1}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.Subtitle.name": {"tf": 1}}, "df": 1}}}}}}}}, "d": {"docs": {}, "df": 0, "o": {"docs": {"piped_api.models.videos.Video.lbry_id": {"tf": 1}}, "df": 1, "e": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.videos.Video.Stream.format": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}}, "df": 5, "n": {"docs": {"piped_api": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 2}}}, "c": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"piped_api": {"tf": 1.4142135623730951}, "piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}, "piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}}, "df": 9}}}}}}}}}}, "s": {"docs": {"piped_api.client.PipedClient": {"tf": 1}}, "df": 1}}, "n": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.models.videos.Video.Stream.format": {"tf": 1}, "piped_api.models.videos.Video.Stream.codec": {"tf": 1}}, "df": 3, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"piped_api": {"tf": 1.4142135623730951}}, "df": 1}}, "o": {"docs": {}, "df": 0, "n": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}}, "g": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "h": {"docs": {"piped_api": {"tf": 1}, "piped_api.models.videos.Video.dash": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.init_end": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_start": {"tf": 1}, "piped_api.models.videos.Video.Stream.index_end": {"tf": 1}}, "df": 6}}, "l": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "z": {"6": {"1": {"9": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "j": {"9": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "p": {"8": {"docs": {}, "df": 0, "u": {"2": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "s": {"1": {"2": {"docs": {"piped_api": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}, "docs": {}, "df": 0}}, "docs": {}, "df": 0}}}}}}}}, "docs": {}, "df": 0}}}}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}}}}}}}}, "t": {"docs": {}, "df": 0, "a": {"docs": {"piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.models.BasePipedModel.__init__": {"tf": 1.4142135623730951}, "piped_api.models.channels.NextPageChannel.nextpage": {"tf": 1}, "piped_api.models.channels.NextPageChannel.uploaded_videos": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.comments.Comments.nextpage": {"tf": 1}, "piped_api.models.videos.Video.upload_date": {"tf": 1}, "piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}}, "df": 10}, "e": {"docs": {"piped_api.models.videos.Video.upload_date": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}}, "df": 3, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.upload_date": {"tf": 1}, "piped_api.models.videos.Video.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 2}, "piped_api.models.videos.Video.Chapter.start": {"tf": 1}}, "df": 5}}}}}}}, "i": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}}}, "c": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.BasePipedModel.__init__": {"tf": 1}}, "df": 1}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {"piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}}, "df": 1}}}}}}, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.comments.Comments.disabled": {"tf": 1}}, "df": 1}}}}}, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "k": {"docs": {}, "df": 0, "e": {"docs": {"piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 1, "s": {"docs": {"piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 1}}}}}, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.videos.Video.Chapter": {"tf": 1}}, "df": 1}}}}}}, "d": {"docs": {"piped_api.models.videos.Video.dislikes": {"tf": 1}}, "df": 1}}, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"piped_api.models.channels.Channel.description": {"tf": 1}, "piped_api.models.videos.Video.description": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}, "piped_api.models.videos.Video.Chapter": {"tf": 1}}, "df": 4}}}}}}}}}, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.videos.Video.Stream.mime_type": {"tf": 1}, "piped_api.models.videos.Video.Subtitle.mime_type": {"tf": 1}}, "df": 2}}}}}}}}}}, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"piped_api.models.videos.Video.duration": {"tf": 1.4142135623730951}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1.4142135623730951}}, "df": 2}}}}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}}}, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.comments.Comments.Comment.replies_page": {"tf": 1.4142135623730951}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.channels.NextPageChannel": {"tf": 1}, "piped_api.models.channels.Channel": {"tf": 1}}, "df": 2}}}}}}}}, "q": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.client.PipedClient.__init__": {"tf": 2}, "piped_api.client.PipedClient.get_video": {"tf": 1}, "piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_id": {"tf": 1}, "piped_api.client.PipedClient.get_channel_by_name": {"tf": 1}, "piped_api.client.PipedClient.get_search_suggestions": {"tf": 1}}, "df": 7}}}}}}, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "n": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 1, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.client.PipedClient.get_comments": {"tf": 1}, "piped_api.client.PipedClient.get_trending": {"tf": 1}}, "df": 2}}, "s": {"docs": {"piped_api.models.comments.Comments.nextpage": {"tf": 1}}, "df": 1}}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"piped_api.client.PipedClient.get_trending": {"tf": 1}, "piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}}, "df": 2}}}}, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.videos.Video.RelatedStream": {"tf": 1.7320508075688772}, "piped_api.models.videos.Video.RelatedStream.url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.title": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.thumbnail": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_name": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_url": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.short_description": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.duration": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.views": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploader_verified": {"tf": 1}, "piped_api.models.videos.Video.related_videos": {"tf": 1}}, "df": 13, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "s": {"docs": {"piped_api.models.channels.NextPageChannel": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}}, "df": 1}}}}}, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.models.videos.Video.views": {"tf": 1}, "piped_api.models.videos.Video.likes": {"tf": 1}, "piped_api.models.videos.Video.dislikes": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.views": {"tf": 1}}, "df": 4}}}}}}}, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}, "g": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "t": {"docs": {"piped_api.models.videos.Video.RelatedStream": {"tf": 1}}, "df": 1}}}}, "n": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"9": {"5": {"7": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "a": {"4": {"docs": {}, "df": 0, "j": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "h": {"1": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "l": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}}, "docs": {}, "df": 0}}}}, "docs": {}, "df": 0}}}}}}}}}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {}, "df": 0}}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"piped_api.client.APIError": {"tf": 1}}, "df": 1}}}}, "w": {"docs": {"piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.videos.Video.upload_date": {"tf": 1.4142135623730951}}, "df": 2}}}, "x": {"docs": {"piped_api.models.comments.Comments.Comment.commented_time": {"tf": 1}, "piped_api.models.videos.Video.RelatedStream.uploaded_date": {"tf": 1}}, "df": 2, "e": {"7": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "q": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "j": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "z": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "r": {"5": {"docs": {}, "df": 0, "j": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "v": {"8": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "z": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}, "docs": {}, "df": 0}}}}}}, "docs": {}, "df": 0}}}}}}}}}}}}}}}}}}}}}}, "docs": {}, "df": 0}}, "z": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "h": {"docs": {"piped_api": {"tf": 1}}, "df": 1}}}}}}}}, "pipeline": ["trimmer"], "_isPrebuiltIndex": true}; + + // mirrored in build-search-index.js (part 1) + // Also split on html tags. this is a cheap heuristic, but good enough. + elasticlunr.tokenizer.setSeperator(/[\s\-.;&_'"=,()]+|<[^>]*>/); + + let searchIndex; + if (docs._isPrebuiltIndex) { + console.info("using precompiled search index"); + searchIndex = elasticlunr.Index.load(docs); + } else { + console.time("building search index"); + // mirrored in build-search-index.js (part 2) + searchIndex = elasticlunr(function () { + this.pipeline.remove(elasticlunr.stemmer); + this.pipeline.remove(elasticlunr.stopWordFilter); + this.addField("qualname"); + this.addField("fullname"); + this.addField("annotation"); + this.addField("default_value"); + this.addField("signature"); + this.addField("bases"); + this.addField("doc"); + this.setRef("fullname"); + }); + for (let doc of docs) { + searchIndex.addDoc(doc); + } + console.timeEnd("building search index"); + } + + return (term) => searchIndex.search(term, { + fields: { + qualname: {boost: 4}, + fullname: {boost: 2}, + annotation: {boost: 2}, + default_value: {boost: 2}, + signature: {boost: 2}, + bases: {boost: 2}, + doc: {boost: 1}, + }, + expand: true + }); +})(); \ No newline at end of file diff --git a/setup.py b/setup.py deleted file mode 100644 index 82415d5..0000000 --- a/setup.py +++ /dev/null @@ -1,62 +0,0 @@ -from pathlib import Path - -import sys -sys.path.append('.') - -import setuptools - - -__description__ = "Piped API client" -__author__ = "SKevo" -__copyright__ = "Copyright (c) 2021, SKevo" -__credits__ = ["SKevo"] -__license__ = "MIT" -__version__ = "v1.0.1-beta" -__maintainer__ = "SKevo" -__email__ = "me@kevo.link" -__status__ = "4 - Beta" - - -README_PATH = Path(__file__).parent.absolute() / Path('README.md') - -try: - with open(README_PATH, 'r', encoding="UTF-8") as readme: - __readme__ = readme.read() - -except: - __readme__ = "Failed to read README.md!" - -__doc__ = __readme__ - - - -setuptools.setup( - name = 'piped-api', - packages = setuptools.find_packages(exclude=('tests',)), - - long_description=__readme__, - long_description_content_type='text/markdown', - - version = __version__, - license = __license__, - description = __description__, - keywords = ["piped", "api", "client"], - - author = __author__, - author_email = __email__, - - url = 'https://github.com/CWKevo/python-piped-api-client', - - install_requires=['requests'], - - classifiers=[ - f'Development Status :: {__status__}', - 'Intended Audience :: Developers', - 'License :: OSI Approved :: MIT License', - 'Programming Language :: Python :: 3.6', - 'Programming Language :: Python :: 3.7', - 'Programming Language :: Python :: 3.8', - 'Programming Language :: Python :: 3.9', - 'Programming Language :: Python :: 3.10', - ], -) diff --git a/tests/__init__.py b/tests/__init__.py deleted file mode 100644 index a03651c..0000000 --- a/tests/__init__.py +++ /dev/null @@ -1,4 +0,0 @@ -from piped_api import PipedClient - - -CLIENT = PipedClient() diff --git a/tests/test_channels.py b/tests/test_channels.py deleted file mode 100644 index c0ddaad..0000000 --- a/tests/test_channels.py +++ /dev/null @@ -1,58 +0,0 @@ -from tests import CLIENT - -from datetime import timedelta -from random import choice - - -def test_channel_by_id(channel_id: str='UCuAXFkgsw1L7xaCfnd5JJOw') -> None: - """ - Prints out information about a channel by its ID. - """ - - channel = CLIENT.get_channel_by_id(channel_id) - - video_id = channel.uploaded_videos[0].url.removeprefix('/watch?v=') - likes = CLIENT.get_video(video_id).likes - - print(f"Total likes for last video of {channel.name}: {likes}") - - - -def test_channel_by_name(channel_name: str='SusanWojcicki') -> None: - """ - Prints out information about a channel by its ID. - """ - - channel = CLIENT.get_channel_by_name(channel_name) - - print(f""" - Channel ID: {channel.id} - Name: {channel.name} - Description: {channel.description} - Subscriber count: {channel.subscriber_count} - """) - - - -def test_get_watchtime_trending() -> None: - """ - Prints out the total watchtime for recent videos of a random trending channel - """ - - trending_channel_id = choice(CLIENT.get_trending('SK')).uploader_url.removeprefix('/channel/') - trending_channel = CLIENT.get_channel_by_id(trending_channel_id) - - - total_watchtime = timedelta(milliseconds=0) - - for video in trending_channel.uploaded_videos: - total_watchtime += video.duration - - print(f"Total watchtime for recent {len(trending_channel.uploaded_videos)} videos of {trending_channel.name} (https://youtube.com/channel/{trending_channel.id}): {total_watchtime}") - - - -if __name__ == '__main__': - test_channel_by_name() - test_channel_by_id() - test_get_watchtime_trending() diff --git a/tests/test_comments.py b/tests/test_comments.py deleted file mode 100644 index 7b3f22a..0000000 --- a/tests/test_comments.py +++ /dev/null @@ -1,34 +0,0 @@ -from tests import CLIENT - - -def test_comments(video_id: str='dQw4w9WgXcQ') -> None: - """ - Prints out first 20 pages of comments from a video. - """ - - at_page = 0 - max_pages = 5 - total_comments = 0 - np = None - - while at_page < max_pages: - comments = CLIENT.get_comments(video_id, nextpage=np, params={'hl': 'us'}) - at_page += 1 - - print('=' * 35, f'Page: {at_page}', '=' * 35) - for comment in comments.get_comments(): - total_comments += 1 - print(f'Comment {comment.comment_id} by "{comment.author}" ({comment.commented_time}), {comment.like_count} likes: "{comment.comment_text}"') - - if comments.nextpage == None: - print(f"No more comments! Total: {total_comments}, expected: {max_pages * 20}") - break - - np = comments.nextpage - - print(f"Okay, that's enough comments... Total: {total_comments}, expected: {max_pages * 20}") - - - -if __name__ == '__main__': - test_comments() diff --git a/tests/test_suggestions.py b/tests/test_suggestions.py deleted file mode 100644 index 1eaaa95..0000000 --- a/tests/test_suggestions.py +++ /dev/null @@ -1,17 +0,0 @@ -from tests import CLIENT - - -def test_suggestions(search_query: str='Susan') -> None: - """ - Obtains search suggestions for a query. - """ - - suggestions = CLIENT.get_search_suggestions(search_query) - - assert len(suggestions) > 0 - print(suggestions) - - - -if __name__ == '__main__': - test_suggestions() diff --git a/tests/test_videos.py b/tests/test_videos.py deleted file mode 100644 index abb84fc..0000000 --- a/tests/test_videos.py +++ /dev/null @@ -1,63 +0,0 @@ -import typing as t - -from tests import CLIENT -from datetime import datetime - - -def test_video(video_id: str='dQw4w9WgXcQ') -> None: - """ - Prints out information about a video. - """ - - video = CLIENT.get_video(video_id) - short_description = video.description[:100].replace('\n', '') - - print(f""" - Video ID: {video_id} - Title: {video.title} - Description: {short_description}... - Views: {video.views} - - Uploaded by: {video.uploader} - Uploaded on: {video.upload_date} ({datetime.now().year - video.upload_date.year} years ago) - - Duration: {video.duration} - FPS: {video.get_streams('video')[0].fps} - """) - - - -def test_trending(country_codes: t.List[str]=['US', 'SK', 'CN']) -> None: - """ - Prints out trending videos for a specific country. - """ - - for country_code in country_codes: - videos = CLIENT.get_trending(country_code) - - # Nothing ever trends in China's YouTube: - if country_code == 'CN': - assert len(videos) == 0 - print("\nYes, empty list works.") - - for video in videos: - print(f"{video.uploader_name} >> {video.title} ({video.views} views)") - - - -def test_get_audio(video_id: str='dQw4w9WgXcQ') -> None: - """ - Prints out the first audio stream URL for a video. - """ - - video = CLIENT.get_video(video_id) - audio_stream = video.get_streams('audio')[0] - - print(f"Audio stream URL: {audio_stream.url} ({audio_stream.mime_type})") - - - -if __name__ == '__main__': - test_video() - test_trending() - test_get_audio()