Skip to content

Do anonymous YouTube search requests.

License

Notifications You must be signed in to change notification settings

userlip/node-ytsr

 
 

Repository files navigation

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

About

Do anonymous YouTube search requests.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • HTML 97.3%
  • JavaScript 2.7%