Skip to main content

Asynchronous scraper to download youtube community posts

Project description

YoutubeCommunityScraper | yp-dl

yp-dl is an asynchronous scraper for downloading Youtube Community posts in json format.

Motivation

Youtube stops retrieving old community posts after 200 posts on a channel. There's no way to access/view older posts if you do not have the link to them or their ID.

Installation

pip install yp-dl

Features

  • Asynchronous support
  • For every post it retrieves:
    • post_link
    • time_since
    • utc_timestamp at download
    • video_link
    • image_links
    • text_content
    • poll_content
  • Update support for the json files when new posts are made
  • Progress visualization during download

Usage

usage: yp-dl [-h] [-f FOLDER_PATH] [-r] [-u] [-v] [-o] [-d] link [link ...]

An asynchronous scraper that downloads youtube posts from youtube channels in json format.

positional arguments:
  link                  Provide any number of links. 
                        Link example: https://www.youtube.com/@3blue1brown

options:
  -h, --help            show this help message and exit
  -f FOLDER_PATH, --folder-path FOLDER_PATH
                        Provide the path of the folder you wish to store/update your json files. 
                        If it's in the current working directory (CWD), just type the folder 
                        name. If none is provided, everything will be stored/updated in the CWD.
  -r, --reverse         Reverses the order of the posts from oldest first to newest first. 
                        Be wary though, if you use this option with --update, your post order 
                        will be messed up.
  -u, --update          Appends the existing json file(s) with the new posts.
  -v, --verbose         Gives more details about what's going on when the program runs.
  -o, --overwrite-cookie
                        Overwrites the SOCS cookie in the cookies.txt file with a Default SOCS 
                        cookie within the project. Use if having problems retrieving posts.
  -d, --delete-cookie   Removes the cookie file to generate it again. Use if your SOCS key 
                        has expired (lifetime is 2 years).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

yp_dl-0.9.15.tar.gz (6.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

yp_dl-0.9.15-py3-none-any.whl (8.1 kB view details)

Uploaded Python 3

File details

Details for the file yp_dl-0.9.15.tar.gz.

File metadata

  • Download URL: yp_dl-0.9.15.tar.gz
  • Upload date:
  • Size: 6.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for yp_dl-0.9.15.tar.gz
Algorithm Hash digest
SHA256 aac01810635b69a39bd6c57eb3b7778ec1cbc821742a5cc3c3a786997c8216a7
MD5 2759f19f1cda615e6252a119eb01d732
BLAKE2b-256 c4c039f66dbe949f161a66c11e71ab9cf0dde9db3d5b612f949a3f34584fa099

See more details on using hashes here.

Provenance

The following attestation bundles were made for yp_dl-0.9.15.tar.gz:

Publisher: python-publish.yml on NothingNaN/YoutubeCommunityScraper

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file yp_dl-0.9.15-py3-none-any.whl.

File metadata

  • Download URL: yp_dl-0.9.15-py3-none-any.whl
  • Upload date:
  • Size: 8.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for yp_dl-0.9.15-py3-none-any.whl
Algorithm Hash digest
SHA256 896de1297af49207434049d5386185900a1f166eb175f5b26d18592b658ffcf9
MD5 fb8398b1829255ada10b20ecaf328554
BLAKE2b-256 1095ee7e982958a1c73a4e7b17ae4fe5cad2a8f2edd2fb734036d9a51cf8e27c

See more details on using hashes here.

Provenance

The following attestation bundles were made for yp_dl-0.9.15-py3-none-any.whl:

Publisher: python-publish.yml on NothingNaN/YoutubeCommunityScraper

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page