Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/twlite/soundcloud-scraper

☁️ Get basic informations about a song from a SoundCloud URL
https://github.com/twlite/soundcloud-scraper

Last synced: about 2 months ago
JSON representation

☁️ Get basic informations about a song from a SoundCloud URL

Awesome Lists containing this project

README

        

> **Note**
>
> This module is archived in favor of https://github.com/Tenpi/soundcloud.ts

# SoundCloud Scraper
Get data from soundcloud easily.

[![NPM](https://nodei.co/npm/soundcloud-scraper.png?downloads=true&downloadRank=true&stars=true)](https://nodei.co/npm/soundcloud-scraper/)

# Installation

```sh
$ npm i soundcloud-scraper
```

# Documentation
**[https://soundcloud-scraper.js.org](https://soundcloud-scraper.js.org)**

# Example
## Downloading a Song

> Note: This process can take few seconds if you do not provide api key
> because it will first find the api key and then fetch respective track url to get final stream url
> and then download it. To solve this issue, first get your soundcloud key using `SoundCloud.keygen()` and then save it somewhere.
> Later you can pass that key in `SoundCloud.Client` constructor: `new SoundCloud.Client("API_KEY")`.
> SoundCloud Scraper automatically detects `SOUNDCLOUD_API_KEY` from `process.env`.

```js
const SoundCloud = require("soundcloud-scraper");
const client = new SoundCloud.Client();
const fs = require("fs");

client.getSongInfo("https://soundcloud.com/dogesounds/alan-walker-feat-k-391-ignite")
.then(async song => {
const stream = await song.downloadProgressive();
const writer = stream.pipe(fs.createWriteStream(`./${song.title}.mp3`));
writer.on("finish", () => {
console.log("Finished writing song!")
process.exit(1);
});
})
.catch(console.error);
```

# Responses
## Song Info

👉 Preview Response

```js
Song {
id: '316547873',
title: 'Alan Walker feat. K-391 - Ignite [FREE DOWNLOAD]',
description: 'FREE DOWNLOAD: http://discoverysounds.com/gate/alan-walker-feat-k-391-ignite\n' +
'\n' +
'Alan Walker Feat K 391 Ignite Download\n' +
'Alan Walker Feat K 391 Ignite Mp3 Download\n' +
'Alan Walker Feat K 391 Ignite New Song 2',
thumbnail: 'https://i1.sndcdn.com/artworks-000216694368-wsysn4-t500x500.jpg',
url: 'https://soundcloud.com/dogesounds/alan-walker-feat-k-391-ignite',
duration: 210000,
playCount: '771664',
commentsCount: '371',
likes: '13514',
genre: 'Dance & EDM',
author: {
name: 'Doge Sounds',
username: 'dogesounds',
url: 'https://soundcloud.com/dogesounds',
avatarURL: 'https://i1.sndcdn.com/avatars-000304905983-a0568r-large.jpg',
urn: 298449071,
verified: false,
followers: 149,
following: 32
},
publishedAt: 2017-04-07T11:02:54.000Z,
embedURL: 'https://soundcloud.com/oembed?url=https%3A%2F%2Fsoundcloud.com%2Fdogesounds%2Falan-walker-feat-k-391-ignite&format=json',
embed: null,
streams: {
hls: 'https://api-v2.soundcloud.com/media/soundcloud:tracks:316547873/7ccfb0e4-2d57-4f9b-b5df-9d340a3a2dd6/stream/hls',
progressive: 'https://api-v2.soundcloud.com/media/soundcloud:tracks:316547873/7ccfb0e4-2d57-4f9b-b5df-9d340a3a2dd6/stream/progressive'
},
trackURL: 'https://api-v2.soundcloud.com/media/soundcloud:tracks:316547873/7ccfb0e4-2d57-4f9b-b5df-9d340a3a2dd6/stream/progressive',
comments: [],
streamURL: null
}
```

## Song Embed

👉 Preview Response

```js
Embed {
url: 'https://soundcloud.com/oembed?url=https%3A%2F%2Fsoundcloud.com%2Fdogesounds%2Falan-walker-feat-k-391-ignite&format=json',
version: 1,
type: 'rich',
provider: { name: 'SoundCloud', url: 'https://soundcloud.com' },
height: 400,
width: '100%',
title: 'Alan Walker feat. K-391 - Ignite [FREE DOWNLOAD] by Doge Sounds',
description: 'FREE DOWNLOAD: http://discoverysounds.com/gate/alan-walker-feat-k-391-ignite\n' +
'\n' +
'Alan Walker Feat K 391 Ignite Download\n' +
'Alan Walker Feat K 391 Ignite Mp3 Download\n' +
'Alan Walker Feat K 391 Ignite New Song 2017\n' +
'Alan Walker Feat K 391 Ignite 2017',
author: { name: 'Doge Sounds', url: 'https://soundcloud.com/dogesounds' },
thumbnailURL: 'https://i1.sndcdn.com/artworks-000216694368-wsysn4-t500x500.jpg'
}
```

## Song Comments

👉 Preview Response

```js
[
{
text: '����',
createdAt: 2020-10-30T11:58:13.000Z,
author: {
name: 'askaria22',
username: 'mohamed-askaria-541170196',
url: 'https://soundcloud.com/mohamed-askaria-541170196'
}
},
{
text: 'Cool',
createdAt: 2020-10-28T15:03:21.000Z,
author: {
name: 'Matias Ronkainen',
username: 'matias-ronkainen',
url: 'https://soundcloud.com/matias-ronkainen'
}
},
{
text: 'wow nice song i love the beat',
createdAt: 2020-10-27T05:35:39.000Z,
author: {
name: 'saathvika vempati',
username: 'saathvika-vempati',
url: 'https://soundcloud.com/saathvika-vempati'
}
},
{
text: 'tempik',
createdAt: 2020-10-23T04:49:11.000Z,
author: {
name: '[email protected]',
username: 'didik-saputra-908291434',
url: 'https://soundcloud.com/didik-saputra-908291434'
}
},
{
text: '@jazmine-powers-328939011: ew chain mail',
createdAt: 2020-10-21T18:40:33.000Z,
author: {
name: 'FallenQbjYT',
username: 'fallen-qbj',
url: 'https://soundcloud.com/fallen-qbj'
}
},
...
]
```

## User Info

👉 Preview Response

```js
{
urn: 298449071,
username: 'dogesounds',
name: 'Doge Sounds',
verified: false,
createdAt: 2017-03-29T21:35:45.000Z,
avatarURL: 'https://i1.sndcdn.com/avatars-000304905983-a0568r-large.jpg',
profile: 'https://soundcloud.com/dogesounds',
bannerURL: 'https://i1.sndcdn.com/visuals-000298449071-KhchhU-original.jpg',
followers: 149,
following: 32,
likesCount: 6,
tracksCount: 2,
tracks: [
{
title: 'Alan Walker feat. K-391 - Ignite [FREE DOWNLOAD]',
url: 'https://soundcloud.com/dogesounds/alan-walker-feat-k-391-ignite',
publishedAt: 2017-04-07T11:02:54.000Z,
genre: 'Dance & EDM',
author: 'dogesounds',
duration: 210000
},
{
title: 'W&W & Daddy Yankee - Gasolina (Hardwell Mashup) [FREE DOWNLOAD]',
url: 'https://soundcloud.com/dogesounds/ww-daddy-yankee-gasolina-hardwell-mashup',
publishedAt: 2017-03-29T21:38:38.000Z,
genre: 'Dance & EDM',
author: 'dogesounds',
duration: 267000
}
],
likes: [
{
title: 'Alan Walker feat. K-391 - Ignite [FREE DOWNLOAD]',
url: 'https://soundcloud.com/dogesounds/alan-walker-feat-k-391-ignite',
publishedAt: 2017-04-07T11:02:54.000Z,
genre: 'Dance & EDM',
author: {
name: 'Doge Sounds',
username: 'dogesounds',
profile: 'https://soundcloud.com/dogesounds'
}
},
{
title: 'W&W & Daddy Yankee - Gasolina (Hardwell Mashup) [FREE DOWNLOAD]',
url: 'https://soundcloud.com/dogesounds/ww-daddy-yankee-gasolina-hardwell-mashup',
publishedAt: 2017-03-29T21:38:38.000Z,
genre: 'Dance & EDM',
author: {
name: 'Doge Sounds',
username: 'dogesounds',
profile: 'https://soundcloud.com/dogesounds'
}
}
]
}
```

## Playlist

👉 Preview Response

```js
{
id: 1001644540,
title: 'albert vishi',
url: 'https://soundcloud.com/ambreen-kanwal-397095258/sets/albert-vishi',
description: 'Listen to albert vishi by Ambreen Kanwal #np on #SoundCloud',
thumbnail: 'https://i1.sndcdn.com/artworks-y5WKIPZcAx2gKBSU-UGgDzA-t500x500.jpg',
author: {
profile: 'https://soundcloud.com/ambreen-kanwal-397095258',
username: 'ambreen-kanwal-397095258',
name: 'Ambreen Kanwal',
urn: 311943633
},
embedURL: 'https://soundcloud.com/oembed?url=https%3A%2F%2Fsoundcloud.com%2Fambreen-kanwal-397095258%2Fsets%2Falbert-vishi&format=json',
embed: null,
genre: '',
trackCount: 54,
tracks: [
Song {
id: 754856170,
title: 'Albert Vishi Ft. Ane Flem - Zombie (The Cranberries Cover In Alan Walker Style)',
description: null,
thumbnail: 'https://i1.sndcdn.com/artworks-y5WKIPZcAx2gKBSU-UGgDzA-large.jpg',
url: 'https://soundcloud.com/albertvishi/albert-vishi-ft-ane-flem-zombie-the-cranberries-cover-in-alan-walker-style',
duration: 252056,
playCount: 138735,
commentsCount: 52,
likes: 2174,
genre: 'Dance & EDM',
author: [Object],
publishedAt: 2020-02-04T11:41:24.000Z,
embedURL: null,
embed: null,
streams: [Object],
trackURL: 'https://api-v2.soundcloud.com/media/soundcloud:tracks:754856170/8a6b90d7-59fc-4669-baa6-c7e53d45a6ef/stream/progressive',
comments: [],
streamURL: null
},
...
]
}
```

# Join Our Discord Server
[![](https://i.imgur.com/f6hNUfc.png)](https://discord.gg/2SUybzb)