Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/faridrasidov/soundcld

Python API Handler For The Internal V2 SoundCloud API
https://github.com/faridrasidov/soundcld

python pythonlibrary requests-python soundcloud soundcloud-api

Last synced: 11 days ago
JSON representation

Python API Handler For The Internal V2 SoundCloud API

Awesome Lists containing this project

README

        


SoundCld



Python API handler for the SoundCloud Internal V2 API,
allowing interaction without an API key.

faridrasidov - soundcld
soundcld - CI Tests

stars - soundcld
forks - soundcld

## Table of Contents
- [Installation](#installation)
- [Usage](#usage)
- [Specifications](#specifications)
- [Authentication](#authentication)
- [License](#license)


## Installation:
**Global Installation**
```shell
$ git clone https://github.com/faridrasidov/soundcld
$ cd soundcld
$ pip install .
```
**Virtual Environment**
```shell
$ git clone https://github.com/faridrasidov/soundcld
$ cd soundcld
$ path/to/your/venv/pip install .
```


## Usage
```python
from soundcld import SoundCloud

sc = SoundCloud(auth=False, auto_id_gen=False)
assert sc.is_client_id_valid()
search = sc.get_search_all("GRXGVR")
for item in search:
print(item.permalink, item.kind)
```


## Specifications

- **You Can Change Your Profile Info**
- **45 Get Api Requests Has Been Handled.(Some Of Them Require Auth)**
- **7 Put Api Requests hs Been Handled. (All Of Them Require Auth)**
- **1 Post Api Requests hs Been Handled. (All Of Them Require Auth)**
- **2 Delete Api Requests hs Been Handled. (All Of Them Require Auth)**
- **Last Valid Generated ID's Automatically Added To 'data.json' File To improve Api Speed.**


## Authentication
**Notes about `auth`:**

**Some methods require authentication. If you want to use them, you should get the values
written at the bottom from your cookies and put them in file which is in package folder ("soundcloud")
named cookies.json. You will also need to change your "client_id" in data.json file in that folder.**

**Save Them Into:**

**`package_root/soundcld/`**

**cookies.json:**
```json
{
"moe_uuid": "",
"oauth_token": "",
"sc_anonymous_id": "",
"datadome": ""
}
```

**data.json (this file automatically generates when you get instance):**
```json
{
"user_id": "",
"client_id": "",
"app_version": ""
}
```


## License
`Soundcld` source code is licensed under the terms of the Boost Software License. See [LICENSE](https://github.com/faridrasidov/soundcld/blob/master/LICENCE.txt) for more information.