SpotDown 0.0.8__tar.gz → 0.1.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. {spotdown-0.0.8/SpotDown.egg-info → spotdown-0.1.0}/PKG-INFO +8 -12
  2. {spotdown-0.0.8 → spotdown-0.1.0}/README.md +7 -9
  3. spotdown-0.1.0/SpotDown/__init__.py +7 -0
  4. {spotdown-0.0.8 → spotdown-0.1.0/SpotDown.egg-info}/PKG-INFO +8 -12
  5. {spotdown-0.0.8 → spotdown-0.1.0}/SpotDown.egg-info/SOURCES.txt +0 -2
  6. spotdown-0.1.0/SpotDown.egg-info/entry_points.txt +2 -0
  7. spotdown-0.1.0/setup.py +39 -0
  8. spotdown-0.0.8/MANIFEST.in +0 -3
  9. spotdown-0.0.8/SpotDown/downloader/__init__.py +0 -0
  10. spotdown-0.0.8/SpotDown.egg-info/entry_points.txt +0 -2
  11. spotdown-0.0.8/requirements.txt +0 -8
  12. spotdown-0.0.8/setup.py +0 -46
  13. {spotdown-0.0.8 → spotdown-0.1.0}/LICENSE +0 -0
  14. {spotdown-0.0.8/SpotDown → spotdown-0.1.0/SpotDown/downloader}/__init__.py +0 -0
  15. {spotdown-0.0.8 → spotdown-0.1.0}/SpotDown/downloader/youtube_downloader.py +0 -0
  16. {spotdown-0.0.8 → spotdown-0.1.0}/SpotDown/extractor/__init__.py +0 -0
  17. {spotdown-0.0.8 → spotdown-0.1.0}/SpotDown/extractor/spotify_extractor.py +0 -0
  18. {spotdown-0.0.8 → spotdown-0.1.0}/SpotDown/extractor/youtube_extractor.py +0 -0
  19. {spotdown-0.0.8 → spotdown-0.1.0}/SpotDown/main.py +0 -0
  20. {spotdown-0.0.8 → spotdown-0.1.0}/SpotDown/utils/__init__.py +0 -0
  21. {spotdown-0.0.8 → spotdown-0.1.0}/SpotDown/utils/config_json.py +0 -0
  22. {spotdown-0.0.8 → spotdown-0.1.0}/SpotDown/utils/console_utils.py +0 -0
  23. {spotdown-0.0.8 → spotdown-0.1.0}/SpotDown/utils/file_utils.py +0 -0
  24. {spotdown-0.0.8 → spotdown-0.1.0}/SpotDown/utils/headers.py +0 -0
  25. {spotdown-0.0.8 → spotdown-0.1.0}/SpotDown.egg-info/dependency_links.txt +0 -0
  26. {spotdown-0.0.8 → spotdown-0.1.0}/SpotDown.egg-info/requires.txt +0 -0
  27. {spotdown-0.0.8 → spotdown-0.1.0}/SpotDown.egg-info/top_level.txt +0 -0
  28. {spotdown-0.0.8 → spotdown-0.1.0}/setup.cfg +0 -0
@@ -1,11 +1,10 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: SpotDown
3
- Version: 0.0.8
3
+ Version: 0.1.0
4
4
  Home-page: https://github.com/Arrowar/SpotDown
5
5
  Author: Arrowar
6
6
  Project-URL: Bug Reports, https://github.com/Arrowar/SpotDown/issues
7
7
  Project-URL: Source, https://github.com/Arrowar/SpotDown
8
- Keywords: streaming community
9
8
  Requires-Python: >=3.8
10
9
  Description-Content-Type: text/markdown
11
10
  License-File: LICENSE
@@ -21,7 +20,6 @@ Dynamic: author
21
20
  Dynamic: description
22
21
  Dynamic: description-content-type
23
22
  Dynamic: home-page
24
- Dynamic: keywords
25
23
  Dynamic: license-file
26
24
  Dynamic: project-url
27
25
  Dynamic: requires-dist
@@ -54,21 +52,19 @@ Dynamic: requires-python
54
52
  ## 📋 Table of Contents
55
53
 
56
54
  - [✨ Features](#features)
57
- - [🛠️ Installation](#installation)
55
+ - [🛠️ Installation](#️installation)
58
56
  - [⚙️ Configuration](#configuration)
59
57
  - [💻 Usage](#usage)
60
- - [📁 Project Structure](#project-structure)
61
- - [🔧 Dependencies](#dependencies)
62
58
  - [⚠️ Disclaimer](#disclaimer)
63
59
 
64
- ## Features
60
+ ## Features
65
61
 
66
62
  - 🎵 **Download individual songs** from Spotify
67
63
  - 📋 **Download entire playlists** with ease
68
64
  - 🔍 **No authentication required** - uses web scraping
69
65
  - 🎨 **Automatic cover art embedding** (JPEG format)
70
66
 
71
- ## 🛠️ Installation
67
+ ## Installation
72
68
 
73
69
  ### Prerequisites
74
70
 
@@ -99,7 +95,7 @@ if __name__ == "__main__":
99
95
  main()
100
96
  ```
101
97
 
102
- ## ⚙️ Configuration
98
+ ## Configuration
103
99
 
104
100
  SpotDown uses a JSON configuration file with the following structure:
105
101
 
@@ -134,7 +130,7 @@ SpotDown uses a JSON configuration file with the following structure:
134
130
  - **`headless`**: Run browser in background (recommended: true)
135
131
  - **`timeout`**: Browser timeout in seconds
136
132
 
137
- ## 💻 Usage
133
+ ## Usage
138
134
 
139
135
  ### Basic Usage
140
136
 
@@ -157,13 +153,13 @@ python run.py
157
153
  2. Paste the Spotify playlist URL when prompted
158
154
  3. All songs in the playlist will be downloaded automatically
159
155
 
160
- ## 📝 To Do
156
+ ## To Do
161
157
 
162
158
  - [ ] Implement batch download queue
163
159
  - [ ] Add GUI interface option
164
160
  - [ ] Support for additional music platforms
165
161
 
166
- ## ⚠️ Disclaimer
162
+ ## Disclaimer
167
163
 
168
164
  This software is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose, and noninfringement.
169
165
 
@@ -25,21 +25,19 @@
25
25
  ## 📋 Table of Contents
26
26
 
27
27
  - [✨ Features](#features)
28
- - [🛠️ Installation](#installation)
28
+ - [🛠️ Installation](#️installation)
29
29
  - [⚙️ Configuration](#configuration)
30
30
  - [💻 Usage](#usage)
31
- - [📁 Project Structure](#project-structure)
32
- - [🔧 Dependencies](#dependencies)
33
31
  - [⚠️ Disclaimer](#disclaimer)
34
32
 
35
- ## Features
33
+ ## Features
36
34
 
37
35
  - 🎵 **Download individual songs** from Spotify
38
36
  - 📋 **Download entire playlists** with ease
39
37
  - 🔍 **No authentication required** - uses web scraping
40
38
  - 🎨 **Automatic cover art embedding** (JPEG format)
41
39
 
42
- ## 🛠️ Installation
40
+ ## Installation
43
41
 
44
42
  ### Prerequisites
45
43
 
@@ -70,7 +68,7 @@ if __name__ == "__main__":
70
68
  main()
71
69
  ```
72
70
 
73
- ## ⚙️ Configuration
71
+ ## Configuration
74
72
 
75
73
  SpotDown uses a JSON configuration file with the following structure:
76
74
 
@@ -105,7 +103,7 @@ SpotDown uses a JSON configuration file with the following structure:
105
103
  - **`headless`**: Run browser in background (recommended: true)
106
104
  - **`timeout`**: Browser timeout in seconds
107
105
 
108
- ## 💻 Usage
106
+ ## Usage
109
107
 
110
108
  ### Basic Usage
111
109
 
@@ -128,13 +126,13 @@ python run.py
128
126
  2. Paste the Spotify playlist URL when prompted
129
127
  3. All songs in the playlist will be downloaded automatically
130
128
 
131
- ## 📝 To Do
129
+ ## To Do
132
130
 
133
131
  - [ ] Implement batch download queue
134
132
  - [ ] Add GUI interface option
135
133
  - [ ] Support for additional music platforms
136
134
 
137
- ## ⚠️ Disclaimer
135
+ ## Disclaimer
138
136
 
139
137
  This software is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose, and noninfringement.
140
138
 
@@ -0,0 +1,7 @@
1
+ # 11.03.25
2
+
3
+ from .main import run
4
+
5
+ __all__ = [
6
+ "run",
7
+ ]
@@ -1,11 +1,10 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: SpotDown
3
- Version: 0.0.8
3
+ Version: 0.1.0
4
4
  Home-page: https://github.com/Arrowar/SpotDown
5
5
  Author: Arrowar
6
6
  Project-URL: Bug Reports, https://github.com/Arrowar/SpotDown/issues
7
7
  Project-URL: Source, https://github.com/Arrowar/SpotDown
8
- Keywords: streaming community
9
8
  Requires-Python: >=3.8
10
9
  Description-Content-Type: text/markdown
11
10
  License-File: LICENSE
@@ -21,7 +20,6 @@ Dynamic: author
21
20
  Dynamic: description
22
21
  Dynamic: description-content-type
23
22
  Dynamic: home-page
24
- Dynamic: keywords
25
23
  Dynamic: license-file
26
24
  Dynamic: project-url
27
25
  Dynamic: requires-dist
@@ -54,21 +52,19 @@ Dynamic: requires-python
54
52
  ## 📋 Table of Contents
55
53
 
56
54
  - [✨ Features](#features)
57
- - [🛠️ Installation](#installation)
55
+ - [🛠️ Installation](#️installation)
58
56
  - [⚙️ Configuration](#configuration)
59
57
  - [💻 Usage](#usage)
60
- - [📁 Project Structure](#project-structure)
61
- - [🔧 Dependencies](#dependencies)
62
58
  - [⚠️ Disclaimer](#disclaimer)
63
59
 
64
- ## Features
60
+ ## Features
65
61
 
66
62
  - 🎵 **Download individual songs** from Spotify
67
63
  - 📋 **Download entire playlists** with ease
68
64
  - 🔍 **No authentication required** - uses web scraping
69
65
  - 🎨 **Automatic cover art embedding** (JPEG format)
70
66
 
71
- ## 🛠️ Installation
67
+ ## Installation
72
68
 
73
69
  ### Prerequisites
74
70
 
@@ -99,7 +95,7 @@ if __name__ == "__main__":
99
95
  main()
100
96
  ```
101
97
 
102
- ## ⚙️ Configuration
98
+ ## Configuration
103
99
 
104
100
  SpotDown uses a JSON configuration file with the following structure:
105
101
 
@@ -134,7 +130,7 @@ SpotDown uses a JSON configuration file with the following structure:
134
130
  - **`headless`**: Run browser in background (recommended: true)
135
131
  - **`timeout`**: Browser timeout in seconds
136
132
 
137
- ## 💻 Usage
133
+ ## Usage
138
134
 
139
135
  ### Basic Usage
140
136
 
@@ -157,13 +153,13 @@ python run.py
157
153
  2. Paste the Spotify playlist URL when prompted
158
154
  3. All songs in the playlist will be downloaded automatically
159
155
 
160
- ## 📝 To Do
156
+ ## To Do
161
157
 
162
158
  - [ ] Implement batch download queue
163
159
  - [ ] Add GUI interface option
164
160
  - [ ] Support for additional music platforms
165
161
 
166
- ## ⚠️ Disclaimer
162
+ ## Disclaimer
167
163
 
168
164
  This software is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose, and noninfringement.
169
165
 
@@ -1,7 +1,5 @@
1
1
  LICENSE
2
- MANIFEST.in
3
2
  README.md
4
- requirements.txt
5
3
  setup.py
6
4
  SpotDown/__init__.py
7
5
  SpotDown/main.py
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ spotdown = SpotDown.main:run
@@ -0,0 +1,39 @@
1
+ import os
2
+ import re
3
+ from setuptools import setup, find_packages
4
+
5
+ def read_readme():
6
+ with open("README.md", "r", encoding="utf-8") as fh:
7
+ return fh.read()
8
+
9
+ requirements_path = os.path.join(os.path.dirname(__file__), "requirements.txt")
10
+ if os.path.exists(requirements_path):
11
+ with open(requirements_path, "r", encoding="utf-8-sig") as f:
12
+ required_packages = f.read().splitlines()
13
+ else:
14
+ required_packages = []
15
+
16
+ def get_version():
17
+ return "0.1.0"
18
+
19
+ setup(
20
+ name="SpotDown",
21
+ version=get_version(),
22
+ long_description=read_readme(),
23
+ long_description_content_type="text/markdown",
24
+ author="Arrowar",
25
+ url="https://github.com/Arrowar/SpotDown",
26
+ packages=find_packages(include=["SpotDown", "SpotDown.*"]),
27
+ install_requires=required_packages,
28
+ python_requires='>=3.8',
29
+ entry_points={
30
+ "console_scripts": [
31
+ "spotdown=SpotDown.main:run",
32
+ ],
33
+ },
34
+ include_package_data=True,
35
+ project_urls={
36
+ "Bug Reports": "https://github.com/Arrowar/SpotDown/issues",
37
+ "Source": "https://github.com/Arrowar/SpotDown"
38
+ }
39
+ )
@@ -1,3 +0,0 @@
1
- include README.md
2
- include requirements.txt
3
- recursive-include SpotDown *.txt *.md *.json
File without changes
@@ -1,2 +0,0 @@
1
- [console_scripts]
2
- spotdown = SpotDown.main:main
@@ -1,8 +0,0 @@
1
- rich
2
- httpx
3
- playwright
4
- unidecode
5
- ua-generator
6
- unidecode
7
- yt-dlp
8
- Pillow
spotdown-0.0.8/setup.py DELETED
@@ -1,46 +0,0 @@
1
- import os
2
- import re
3
- from setuptools import setup, find_packages
4
-
5
- def read_readme():
6
- with open("README.md", "r", encoding="utf-8") as fh:
7
- return fh.read()
8
-
9
- with open(os.path.join(os.path.dirname(__file__), "requirements.txt"), "r", encoding="utf-8-sig") as f:
10
- required_packages = f.read().splitlines()
11
-
12
- def get_version():
13
- try:
14
- import pkg_resources
15
- return pkg_resources.get_distribution('SpotDown').version
16
-
17
- except Exception:
18
- version_file_path = os.path.join(os.path.dirname(__file__), "SpotDown", "upload", "version.py")
19
- with open(version_file_path, "r", encoding="utf-8") as f:
20
- version_match = re.search(r"^__version__\s*=\s*['\"]([^'\"]*)['\"]", f.read(), re.M)
21
- if version_match:
22
- return version_match.group(1)
23
-
24
-
25
- setup(
26
- name="SpotDown",
27
- version=get_version(),
28
- long_description=read_readme(),
29
- long_description_content_type="text/markdown",
30
- author="Arrowar",
31
- url="https://github.com/Arrowar/SpotDown",
32
- packages=find_packages(include=["SpotDown", "SpotDown.*"]),
33
- install_requires=required_packages,
34
- python_requires='>=3.8',
35
- entry_points={
36
- "console_scripts": [
37
- "spotdown=SpotDown.main:main",
38
- ],
39
- },
40
- include_package_data=True,
41
- keywords="streaming community",
42
- project_urls={
43
- "Bug Reports": "https://github.com/Arrowar/SpotDown/issues",
44
- "Source": "https://github.com/Arrowar/SpotDown",
45
- }
46
- )
File without changes
File without changes
File without changes