
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
Simple package to scrape information from youtube such as search results, video information, related videos, and up next video
scarpe-yt is a simple package to scrape information from Youtube such as search results, video information, related videos, playlist information, and up next video
npm i scrape-yt
Basic usage:
// ES5
const scrapeYt = require("scrape-yt");
// ES6 / TypeScript
import scrapeYt from "scrape-yt";
// or import only necessary methods
import { search, getVideo } from "scrape-yt"
// Searches for video, playlist, or channel with keyword "Never gonna give you up" and limited to 10 search result
(async() => {
let videos = await scrapeYt.search("Never gonna give you up");
console.log(videos[0]);
})();
// Or use promises
scrapeYt.search("Never gonna give you up", {
type: "video"
}).then(videos => {
console.log(videos);
});
Type check (see available types):
import scrapeYt, { SearchOptions } from "scrape-yt";
let options: SearchOptions = {
type: "channel",
limit: 5
}
await scrapeYt.search("Rick astley", options);
Searches for result with given query. options is optional and can have the following keys
type - Search type, can be all, video, playlist or channel (Default = all)limit - The max count of the search result (Default = 10)page - Show result on specified page (Default = 1)useWorkerThread - Whether to use worker thread for scraping or not (Default = false)Result example (video):
[
{
"id": "dQw4w9WgXcQ",
"title": "Rick Astley - Never Gonna Give You Up (Video)",
"duration": 213,
"thumbnail": "https://i.ytimg.com/vi/dQw4w9WgXcQ/hqdefault.jpg?sqp=-oaymwEjCPYBEIoBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLBW5JbJn5nTCNKe8PvMuOqEiuttiQ",
"channel": {
"id": "UCuAXFkgsw1L7xaCfnd5JJOw",
"name": "Official Rick Astley",
"url": "https://www.youtube.com/channel/UCuAXFkgsw1L7xaCfnd5JJOw"
},
"uploadDate": "10 tahun yang lalu",
"viewCount": 680314160,
"type": "video"
},
...
]
Result example (playlist):
[
{
"id": "PLx65qkgCWNJIgVrndMrhsedBz1VDp0kfm",
"title": "Very Important Videos",
"thumbnail": "https://i.ytimg.com/vi/0woboOZ9dmY/hqdefault.jpg?sqp=-oaymwEXCPYBEIoBSFryq4qpAwkIARUAAIhCGAE=&rs=AOn4CLDcy1wd9LA-toJs7Gq-_I5-00n0Mw",
"channel": {
"id": "electrickeye91",
"name": "Thomas Frank",
"url": "https://www.youtube.com/user/electrickeye91"
},
"videoCount": 37,
"type": "playlist"
},
...
]
Result example (channel):
[
{
"id": "beegeestv",
"name": "beegees",
"thumbnail": "https://lh3.googleusercontent.com/a-/AOh14Gh8qGEFRMCi1sYKrapMiXS3pcOsejBEGK9WAGQsgA=s176-c-k-c0x00ffffff-no-rj-mo",
"videoCount": 55,
"url": "https://www.youtube.com/user/beegeestv",
"type": "channel"
},
...
]
Get playlist information and videos from the given playlistId. options is optional and can have the following keys
useWorkerThread - Whether to use worker thread for scraping or not (Default = false)Result example:
{
"id": "PLx65qkgCWNJIgVrndMrhsedBz1VDp0kfm",
"title": "Very Important Videos",
"videoCount": 37,
"viewCount": 159705,
"lastUpdatedAt": "Terakhir diperbarui pada 13 Okt 2019",
"channel": {
"id": "electrickeye91",
"name": "Thomas Frank",
"thumbnail": "https://yt3.ggpht.com/a/AATXAJyAUDbyAyY3JkoMO-7Pvvf4QtksJF9Y6C6fTg=s100-c-k-c0xffffffff-no-rj-mo",
"url": "https://www.youtube.com/user/electrickeye91"
},
"videos": [
{
"id": "0woboOZ9dmY",
"title": "Poopy-di Scoop",
"duration": 17,
"thumbnail": "https://i.ytimg.com/vi/0woboOZ9dmY/hqdefault.jpg?sqp=-oaymwEiCKgBEF5IWvKriqkDFQgBFQAAAAAYASUAAMhCPQCAokN4AQ==&rs=AOn4CLD-Z5XXZlfjshvyd3K-oYIkGo-0Rw",
"channel": {
"id": "UCwPDMtvphYeGbzDKa8obOnQ",
"name": "Poorly Made",
"url": "https://www.youtube.com/channel/UCwPDMtvphYeGbzDKa8obOnQ"
}
},
...
]
}
Note: videos only limited to 100
Get video information of given videoId. options is optional and can have the following keys
useWorkerThread - Whether to use worker thread for scraping or not (Default = false)Result example:
{
"id": "dQw4w9WgXcQ",
"title": "Rick Astley - Never Gonna Give You Up (Video)",
"duration": 212,
"thumbnail": "https://i.ytimg.com/vi/dQw4w9WgXcQ/maxresdefault.jpg",
"description": "Rick Astley's official music video for “Never Gonna Give You Up”...",
"channel": {
"id": "UCuAXFkgsw1L7xaCfnd5JJOw",
"name": "Official Rick Astley",
"thumbnail": "https://yt3.ggpht.com/a-/AOh14GirqtIADQGwQOF14rTXYeSzIkuySwxwlqAZyzo0mQ=s176-c-k-c0xffffffff-no-nd-rj",
"url": "https://www.youtube.com/channel/UCuAXFkgsw1L7xaCfnd5JJOw"
},
"uploadDate": "Dipublikasikan tanggal 24 Okt 2009",
"viewCount": 680735840,
"likeCount": 5257356,
"dislikeCount": 193590,
"isLiveContent": false,
"tags": [
"#RickAstley",
"#NeverGonnaGiveYouUp",
"#DancePop"
]
}
Get videos related to given videoId. options is optional and can have the following keys
limit - The max count of the search result (Default = 10)useWorkerThread - Whether to use worker thread for scraping or not (Default = false)Result example:
[
{
"id": "I_izvAbhExY",
"title": "Bee Gees - Stayin' Alive (Official Video)",
"duration": 250,
"thumbnail": "https://i.ytimg.com/vi/I_izvAbhExY/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLCEl-X_ZnGdzoLqS-wfFcs1rED1LQ",
"channel": {
"id": "UCD9sCcKXnFxMeuFoNayVxeQ",
"name": "beegees",
"url": "https://www.youtube.com/channel/UCD9sCcKXnFxMeuFoNayVxeQ"
},
"uploadDate": "10 tahun lalu",
"viewCount": 530482048
},
...
]
Get up next video of given videoId. options is optional and can have the following keys
useWorkerThread - Whether to use worker thread for scraping or not (Default = false)Result example:
{
"id": "yPYZpwSpKmA",
"channel": {
"id": "UCuAXFkgsw1L7xaCfnd5JJOw",
"name": "Official Rick Astley",
"url": "https://www.youtube.com/channel/UCuAXFkgsw1L7xaCfnd5JJOw"
},
"title": "Rick Astley - Together Forever (Official Music Video)",
"duration": 205,
"thumbnail": "https://i.ytimg.com/vi/yPYZpwSpKmA/hqdefault.jpg?sqp=-oaymwEjCNACELwBSFryq4qpAxUIARUAAAAAGAElAADIQj0AgKJDeAE=&rs=AOn4CLAIYA0llYwvjijecWwCYJgXMx6YWA",
"uploadDate": "10 tahun lalu",
"viewCount": 98107272
}
Note:
duration is in seconduploadDate and lastUpdatedAt language is based on the default language the youtube set for youFAQs
Simple package to scrape information from youtube such as search results, video information, related videos, and up next video
The npm package scrape-yt receives a total of 49 weekly downloads. As such, scrape-yt popularity was classified as not popular.
We found that scrape-yt demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.