Skip to main content

Scrape videos from YouTube channels.

Project description

YouTube Channel Scraper

Scrapes videos from a YouTube channel using Python.

It takes a YouTube channel URL as an input and produces a list of videos as an output.

Video attributes:

  • url
  • title
  • description
  • author
  • published_at
  • thumbnail

Requirements

Install chromedriver at /chromedriver. For more details refer to scripts/install_chromedriver.sh.

Alternatively you can use the library inside a Docker container. This way you don't need to manually install the chromedriver. Have a look at Usage with Docker.

Install

pip install youtube-channel-scraper

Usage

from youtube_channel_scraper.scraper import YoutubeScraper

scraper = YoutubeScraper(channel_url)
crawled_videos = scraper.scrape()

Optional parameters

  • stop_id: stop scraping when this video ID is encountered. Older videos are always scraped first.
  • max_videos: maximum amount of videos to scrape
  • proxy_ip: proxy IP with port

CLI usage

youtube-channel-scraper "https://www.youtube.com/channel/CHANNEL_ID"

Available arguments

positional arguments:
  channel_url           Youtube channel URL

optional arguments:
  -h, --help            show this help message and exit
  --filename FILENAME   Output file
  --stop_video_id STOP_VIDEO_ID
                        Youtube video ID that indicates to stop crawling
  --max_videos MAX_VIDEOS
                        Max videos to crawl
  --proxy PROXY         Proxy IP
  --screenshot_filename SCREENSHOT_FILENAME
                        Path to exceptions screenshot

Usage with Docker

Why?

When running youtube-channel-scraper in a Docker container there is no need to manually install chrome driver in your environment.

How?

git clone https://github.com/hajkr/youtube-channel-scraper.git
cd youtube_channel_scraper

# Run the container and build it when running for the first time
make run

# Enter the container
make to_container

python youtube_channel_scraper "https://www.youtube.com/channel/CHANNEL_ID"

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

youtube-channel-scraper-0.1.3.tar.gz (4.7 kB view details)

Uploaded Source

Built Distribution

youtube_channel_scraper-0.1.3-py2.py3-none-any.whl (5.5 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file youtube-channel-scraper-0.1.3.tar.gz.

File metadata

  • Download URL: youtube-channel-scraper-0.1.3.tar.gz
  • Upload date:
  • Size: 4.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.6 CPython/3.9.5 Linux/5.10.25-linuxkit

File hashes

Hashes for youtube-channel-scraper-0.1.3.tar.gz
Algorithm Hash digest
SHA256 904b26f27b8739e19376e1a7d4b95793d1e36cb0768b5f3c410834305ec9a3b9
MD5 970713ebb40f499f4668bac7d61b6b3e
BLAKE2b-256 d864f43ea615dd000a1117d3da37f2ccad2c7931005cc6fb2a3c6dd229eb35d9

See more details on using hashes here.

File details

Details for the file youtube_channel_scraper-0.1.3-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for youtube_channel_scraper-0.1.3-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 e27f3f99ca6a862dff3cdcf3df4e18cdbba53da318315dfba36d98c9619650f1
MD5 785fe70dc8fc5c93ee172401534fa9e8
BLAKE2b-256 dfc46e3fe1cd91c946972bd098dda6479e0950efb2211ee8a9aed1b491680192

See more details on using hashes here.

Supported by

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