GitHunt
BR

bryanmytko/node-ytsr

Do anonymous YouTube search requests.

node-ytsr

NPM version
NPM downloads
codecov
Known Vulnerabilities
Discord

NPM info

Simple js only module to search YouTube
Doesn't need any login or GoogleAPI key

Support

You can contact us for support on our chat server

Usage

const ytsr = require('ytsr');

ytsr.getFilters('github').then(async (filters1) => {
  const filter1 = filters1.get('Type').find(o => o.name === 'Video');
  const filters2 = await ytsr.getFilters(filter1.ref);
  const filter2 = filters2.get('Duration').find(o => o.name.startsWith('Short'));
  const options = {
    limit: 5,
    nextpageRef: filter2.ref,
  }
  const searchResults = await ytsr(null, options);
  dosth(searchResults);
}).catch(err => {
  console.error(err);
});

API

ytsr(searchString, [options])

Searches for the given string

  • searchString
    • string to search for
  • options
    • object with options
    • possible settings:
    • safeSearch[Boolean] -> pull items in youtube restriction mode.
    • limit[integer] -> limits the pulled items, defaults to 100, set to Infinity to get the whole playlist - numbers <1 result in the default being used
    • nextpageRef[String] -> if u wanna continue a previous search or use filters
    • All additional parameters will get passed to miniget, which is used to do the https requests
  • returns a Promise
  • Example response

ytsr.getFilters(searchString, options)

Pulls avaible filters for the given string/ref

  • searchString
    • string to search for
    • or previously optained filter ref
  • options
    • request options passed to miniget
  • returns a Promise
  • Example response

Related / Works well with

Install

npm install --save ytsr

License

MIT

Languages

HTML97.3%JavaScript2.7%
MIT License
Created October 25, 2020
Updated October 25, 2020
bryanmytko/node-ytsr | GitHunt