Skip to content

Latest commit

 

History

History
80 lines (58 loc) · 2.62 KB

README.md

File metadata and controls

80 lines (58 loc) · 2.62 KB

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