StreamingCommunity 3.0.9__tar.gz → 3.2.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.
- {streamingcommunity-3.0.9/StreamingCommunity.egg-info → streamingcommunity-3.2.0}/PKG-INFO +43 -58
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/README.md +40 -57
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/ddl.py +4 -2
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/hdplayer.py +2 -1
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/maxstream.py +7 -7
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/mediapolisvod.py +4 -4
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/mixdrop.py +6 -5
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/supervideo.py +7 -5
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/sweetpixel.py +4 -3
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/vixcloud.py +20 -14
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/altadefinizione/film.py +9 -1
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/altadefinizione/util/ScrapeSerie.py +35 -21
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/animeunity/site.py +43 -71
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/streamingcommunity/film.py +4 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/Downloader/HLS/downloader.py +17 -8
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/Downloader/HLS/segments.py +5 -4
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/Downloader/MP4/downloader.py +3 -3
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Upload/update.py +8 -3
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Upload/version.py +2 -2
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Util/config_json.py +5 -7
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Util/message.py +1 -3
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Util/os.py +5 -2
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/global_search.py +2 -2
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/run.py +71 -36
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0/StreamingCommunity.egg-info}/PKG-INFO +43 -58
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity.egg-info/requires.txt +2 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/requirements.txt +2 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/setup.py +15 -2
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/LICENSE +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/MANIFEST.in +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/Helper/Vixcloud/js_parser.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/Helper/Vixcloud/util.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/1337xx/__init__.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/1337xx/site.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/1337xx/title.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/altadefinizione/__init__.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/altadefinizione/series.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/altadefinizione/site.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/animeunity/__init__.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/animeunity/film.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/animeunity/serie.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/animeunity/util/ScrapeSerie.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/animeworld/__init__.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/animeworld/film.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/animeworld/serie.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/animeworld/site.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/animeworld/util/ScrapeSerie.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/cb01new/__init__.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/cb01new/film.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/cb01new/site.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/guardaserie/__init__.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/guardaserie/series.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/guardaserie/site.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/guardaserie/util/ScrapeSerie.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/raiplay/__init__.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/raiplay/film.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/raiplay/series.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/raiplay/site.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/raiplay/util/ScrapeSerie.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/streamingcommunity/__init__.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/streamingcommunity/series.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/streamingcommunity/site.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/streamingcommunity/util/ScrapeSerie.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/streamingwatch/__init__.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/streamingwatch/film.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/streamingwatch/series.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/streamingwatch/site.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/streamingwatch/util/ScrapeSerie.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Template/Class/SearchType.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Template/Util/__init__.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Template/Util/manage_ep.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Template/__init__.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Template/config_loader.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Template/site.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/Downloader/TOR/downloader.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/Downloader/__init__.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/FFmpeg/__init__.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/FFmpeg/capture.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/FFmpeg/command.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/FFmpeg/util.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/M3U8/__init__.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/M3U8/decryptor.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/M3U8/estimator.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/M3U8/parser.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/M3U8/url_fixer.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/Proxies/proxy.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/TMBD/__init__.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/TMBD/obj_tmbd.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/TMBD/tmdb.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/TelegramHelp/__init__.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/TelegramHelp/config.json +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/TelegramHelp/telegram_bot.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Util/color.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Util/ffmpeg_installer.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Util/headers.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Util/logger.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Util/table.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/__init__.py +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity.egg-info/SOURCES.txt +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity.egg-info/dependency_links.txt +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity.egg-info/entry_points.txt +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity.egg-info/top_level.txt +0 -0
- {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: StreamingCommunity
|
|
3
|
-
Version: 3.0
|
|
3
|
+
Version: 3.2.0
|
|
4
4
|
Home-page: https://github.com/Lovi-0/StreamingCommunity
|
|
5
5
|
Author: Lovi-0
|
|
6
6
|
Project-URL: Bug Reports, https://github.com/Lovi-0/StreamingCommunity/issues
|
|
@@ -17,6 +17,7 @@ Requires-Dist: m3u8
|
|
|
17
17
|
Requires-Dist: certifi
|
|
18
18
|
Requires-Dist: psutil
|
|
19
19
|
Requires-Dist: unidecode
|
|
20
|
+
Requires-Dist: curl_cffi
|
|
20
21
|
Requires-Dist: dnspython
|
|
21
22
|
Requires-Dist: jsbeautifier
|
|
22
23
|
Requires-Dist: pathvalidate
|
|
@@ -24,6 +25,7 @@ Requires-Dist: pycryptodomex
|
|
|
24
25
|
Requires-Dist: ua-generator
|
|
25
26
|
Requires-Dist: qbittorrent-api
|
|
26
27
|
Requires-Dist: pyTelegramBotAPI
|
|
28
|
+
Requires-Dist: beautifulsoup4
|
|
27
29
|
Dynamic: author
|
|
28
30
|
Dynamic: description
|
|
29
31
|
Dynamic: description-content-type
|
|
@@ -34,36 +36,32 @@ Dynamic: project-url
|
|
|
34
36
|
Dynamic: requires-dist
|
|
35
37
|
Dynamic: requires-python
|
|
36
38
|
|
|
37
|
-
<
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
<a href="https://github.com/Arrowar/StreamingCommunity">
|
|
64
|
-
<img src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/Arrowar/StreamingCommunity/main/.github/media/loc-badge.json&style=for-the-badge" alt="Lines of Code"/>
|
|
65
|
-
</a>
|
|
66
|
-
</p>
|
|
39
|
+
<div align="center">
|
|
40
|
+
|
|
41
|
+
## 📊 Project Status & Info
|
|
42
|
+
|
|
43
|
+
[](https://pypi.org/project/streamingcommunity)
|
|
44
|
+
[](https://pypi.org/project/streamingcommunity)
|
|
45
|
+
[](https://github.com/Arrowar/StreamingCommunity/blob/main/LICENSE)
|
|
46
|
+
|
|
47
|
+
[](https://github.com/Arrowar/StreamingCommunity)
|
|
48
|
+
[](https://github.com/Arrowar/StreamingCommunity/commits)
|
|
49
|
+
[](https://github.com/Arrowar/StreamingCommunity/issues)
|
|
50
|
+
|
|
51
|
+
## 💝 Support the Project
|
|
52
|
+
|
|
53
|
+
[](https://www.paypal.com/donate/?hosted_button_id=UXTWMT8P6HE2C)
|
|
54
|
+
## 🚀 Download & Install
|
|
55
|
+
|
|
56
|
+
[](https://github.com/Arrowar/StreamingCommunity/releases/latest/download/StreamingCommunity_win.exe)
|
|
57
|
+
[](https://github.com/Arrowar/StreamingCommunity/releases/latest/download/StreamingCommunity_mac)
|
|
58
|
+
[](https://github.com/Arrowar/StreamingCommunity/releases/latest/download/StreamingCommunity_linux_latest)
|
|
59
|
+
[](https://github.com/Arrowar/StreamingCommunity/releases/latest/download/StreamingCommunity_linux_previous)
|
|
60
|
+
---
|
|
61
|
+
|
|
62
|
+
*⚡ **Quick Start:** `pip install streamingcommunity` or download the executable for your platform above*
|
|
63
|
+
|
|
64
|
+
</div>
|
|
67
65
|
|
|
68
66
|
# 📋 Table of Contents
|
|
69
67
|
|
|
@@ -112,24 +110,6 @@ Dynamic: requires-python
|
|
|
112
110
|
|
|
113
111
|
# Installation
|
|
114
112
|
|
|
115
|
-
<p align="center">
|
|
116
|
-
<a href="https://github.com/Arrowar/StreamingCommunity/releases/latest/download/StreamingCommunity_win.exe">
|
|
117
|
-
<img src="https://img.shields.io/badge/-Windows-blue.svg?style=for-the-badge&logo=windows" alt="Windows">
|
|
118
|
-
</a>
|
|
119
|
-
<a href="https://github.com/Arrowar/StreamingCommunity/releases/latest/download/StreamingCommunity_mac">
|
|
120
|
-
<img src="https://img.shields.io/badge/-macOS-black.svg?style=for-the-badge&logo=apple" alt="macOS">
|
|
121
|
-
</a>
|
|
122
|
-
<a href="https://github.com/Arrowar/StreamingCommunity/releases/latest/download/StreamingCommunity_linux">
|
|
123
|
-
<img src="https://img.shields.io/badge/-Linux-orange.svg?style=for-the-badge&logo=linux" alt="Linux">
|
|
124
|
-
</a>
|
|
125
|
-
<a href="https://github.com/Arrowar/StreamingCommunity/releases/latest/download/StreamingCommunity_linux_previous">
|
|
126
|
-
<img src="https://img.shields.io/badge/-Linux Previous-gray.svg?style=for-the-badge&logo=linux" alt="Linux Previous">
|
|
127
|
-
</a>
|
|
128
|
-
<a href="https://github.com/Arrowar/StreamingCommunity/releases">
|
|
129
|
-
<img src="https://img.shields.io/badge/-All Versions-lightgrey.svg?style=for-the-badge&logo=github" alt="All Versions">
|
|
130
|
-
</a>
|
|
131
|
-
</p>
|
|
132
|
-
|
|
133
113
|
## 1. PyPI Installation
|
|
134
114
|
|
|
135
115
|
Install directly from PyPI:
|
|
@@ -554,7 +534,7 @@ To enable qBittorrent integration, follow the setup guide [here](https://github.
|
|
|
554
534
|
"download_subtitle": true,
|
|
555
535
|
"merge_subs": true,
|
|
556
536
|
"specific_list_subtitles": [
|
|
557
|
-
"ita",
|
|
537
|
+
"ita", // Specify language codes or use ["*"] to download all available subtitles
|
|
558
538
|
"eng"
|
|
559
539
|
],
|
|
560
540
|
"cleanup_tmp_folder": true
|
|
@@ -580,6 +560,8 @@ To enable qBittorrent integration, follow the setup guide [here](https://github.
|
|
|
580
560
|
- `download_subtitle`: Whether to download subtitles
|
|
581
561
|
- `merge_subs`: Whether to merge subtitles with video
|
|
582
562
|
- `specific_list_subtitles`: List of subtitle languages to download
|
|
563
|
+
* Use `["*"]` to download all available subtitles
|
|
564
|
+
* Or specify individual languages like `["ita", "eng"]`
|
|
583
565
|
* Can be changed with `--specific_list_subtitles ita,eng`
|
|
584
566
|
|
|
585
567
|
#### Cleanup
|
|
@@ -731,8 +713,14 @@ python test_run.py --specific_list_audio ita,eng --specific_list_subtitles eng,s
|
|
|
731
713
|
# Keep console open after download
|
|
732
714
|
python test_run.py --not_close true
|
|
733
715
|
|
|
734
|
-
# Use global
|
|
716
|
+
# Use global searchAdd commentMore actions
|
|
735
717
|
python test_run.py --global -s "cars"
|
|
718
|
+
|
|
719
|
+
# Select specific category
|
|
720
|
+
python test_run.py --category 1 # Search in anime category
|
|
721
|
+
python test_run.py --category 2 # Search in movies & series
|
|
722
|
+
python test_run.py --category 3 # Search in series
|
|
723
|
+
python test_run.py --category 4 # Search in torrent category
|
|
736
724
|
```
|
|
737
725
|
|
|
738
726
|
# Docker
|
|
@@ -826,10 +814,10 @@ python3 telegram_bot.py
|
|
|
826
814
|
|
|
827
815
|
# Tutorials
|
|
828
816
|
|
|
829
|
-
- [Windows
|
|
830
|
-
- [Linux
|
|
831
|
-
- [Pypy
|
|
832
|
-
- [Compiled
|
|
817
|
+
- [Windows](https://www.youtube.com/watch?v=mZGqK4wdN-k)
|
|
818
|
+
- [Linux](https://www.youtube.com/watch?v=0qUNXPE_mTg)
|
|
819
|
+
- [Pypy](https://www.youtube.com/watch?v=C6m9ZKOK0p4)
|
|
820
|
+
- [Compiled](https://www.youtube.com/watch?v=pm4lqsxkTVo)
|
|
833
821
|
|
|
834
822
|
# To Do
|
|
835
823
|
|
|
@@ -848,9 +836,6 @@ Addon per Stremio che consente lo streaming HTTPS di film, serie, anime e TV in
|
|
|
848
836
|
### 🧩 [streamingcommunity-unofficialapi](https://github.com/Blu-Tiger/streamingcommunity-unofficialapi)
|
|
849
837
|
API non ufficiale per accedere ai contenuti del sito italiano StreamingCommunity.
|
|
850
838
|
|
|
851
|
-
### 🎥 [stream-buddy](https://github.com/Bbalduzz/stream-buddy)
|
|
852
|
-
Tool per guardare o scaricare film dalla piattaforma StreamingCommunity.
|
|
853
|
-
|
|
854
839
|
# Disclaimer
|
|
855
840
|
|
|
856
841
|
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. In no event shall the authors or copyright holders be liable for any claim, damages, or other liability, whether in an action of contract, tort, or otherwise, arising from, out of, or in connection with the software or the use or other dealings in the software.
|
|
@@ -1,33 +1,29 @@
|
|
|
1
|
-
<
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
<a href="https://github.com/Arrowar/StreamingCommunity">
|
|
28
|
-
<img src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/Arrowar/StreamingCommunity/main/.github/media/loc-badge.json&style=for-the-badge" alt="Lines of Code"/>
|
|
29
|
-
</a>
|
|
30
|
-
</p>
|
|
1
|
+
<div align="center">
|
|
2
|
+
|
|
3
|
+
## 📊 Project Status & Info
|
|
4
|
+
|
|
5
|
+
[](https://pypi.org/project/streamingcommunity)
|
|
6
|
+
[](https://pypi.org/project/streamingcommunity)
|
|
7
|
+
[](https://github.com/Arrowar/StreamingCommunity/blob/main/LICENSE)
|
|
8
|
+
|
|
9
|
+
[](https://github.com/Arrowar/StreamingCommunity)
|
|
10
|
+
[](https://github.com/Arrowar/StreamingCommunity/commits)
|
|
11
|
+
[](https://github.com/Arrowar/StreamingCommunity/issues)
|
|
12
|
+
|
|
13
|
+
## 💝 Support the Project
|
|
14
|
+
|
|
15
|
+
[](https://www.paypal.com/donate/?hosted_button_id=UXTWMT8P6HE2C)
|
|
16
|
+
## 🚀 Download & Install
|
|
17
|
+
|
|
18
|
+
[](https://github.com/Arrowar/StreamingCommunity/releases/latest/download/StreamingCommunity_win.exe)
|
|
19
|
+
[](https://github.com/Arrowar/StreamingCommunity/releases/latest/download/StreamingCommunity_mac)
|
|
20
|
+
[](https://github.com/Arrowar/StreamingCommunity/releases/latest/download/StreamingCommunity_linux_latest)
|
|
21
|
+
[](https://github.com/Arrowar/StreamingCommunity/releases/latest/download/StreamingCommunity_linux_previous)
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
*⚡ **Quick Start:** `pip install streamingcommunity` or download the executable for your platform above*
|
|
25
|
+
|
|
26
|
+
</div>
|
|
31
27
|
|
|
32
28
|
# 📋 Table of Contents
|
|
33
29
|
|
|
@@ -76,24 +72,6 @@
|
|
|
76
72
|
|
|
77
73
|
# Installation
|
|
78
74
|
|
|
79
|
-
<p align="center">
|
|
80
|
-
<a href="https://github.com/Arrowar/StreamingCommunity/releases/latest/download/StreamingCommunity_win.exe">
|
|
81
|
-
<img src="https://img.shields.io/badge/-Windows-blue.svg?style=for-the-badge&logo=windows" alt="Windows">
|
|
82
|
-
</a>
|
|
83
|
-
<a href="https://github.com/Arrowar/StreamingCommunity/releases/latest/download/StreamingCommunity_mac">
|
|
84
|
-
<img src="https://img.shields.io/badge/-macOS-black.svg?style=for-the-badge&logo=apple" alt="macOS">
|
|
85
|
-
</a>
|
|
86
|
-
<a href="https://github.com/Arrowar/StreamingCommunity/releases/latest/download/StreamingCommunity_linux">
|
|
87
|
-
<img src="https://img.shields.io/badge/-Linux-orange.svg?style=for-the-badge&logo=linux" alt="Linux">
|
|
88
|
-
</a>
|
|
89
|
-
<a href="https://github.com/Arrowar/StreamingCommunity/releases/latest/download/StreamingCommunity_linux_previous">
|
|
90
|
-
<img src="https://img.shields.io/badge/-Linux Previous-gray.svg?style=for-the-badge&logo=linux" alt="Linux Previous">
|
|
91
|
-
</a>
|
|
92
|
-
<a href="https://github.com/Arrowar/StreamingCommunity/releases">
|
|
93
|
-
<img src="https://img.shields.io/badge/-All Versions-lightgrey.svg?style=for-the-badge&logo=github" alt="All Versions">
|
|
94
|
-
</a>
|
|
95
|
-
</p>
|
|
96
|
-
|
|
97
75
|
## 1. PyPI Installation
|
|
98
76
|
|
|
99
77
|
Install directly from PyPI:
|
|
@@ -518,7 +496,7 @@ To enable qBittorrent integration, follow the setup guide [here](https://github.
|
|
|
518
496
|
"download_subtitle": true,
|
|
519
497
|
"merge_subs": true,
|
|
520
498
|
"specific_list_subtitles": [
|
|
521
|
-
"ita",
|
|
499
|
+
"ita", // Specify language codes or use ["*"] to download all available subtitles
|
|
522
500
|
"eng"
|
|
523
501
|
],
|
|
524
502
|
"cleanup_tmp_folder": true
|
|
@@ -544,6 +522,8 @@ To enable qBittorrent integration, follow the setup guide [here](https://github.
|
|
|
544
522
|
- `download_subtitle`: Whether to download subtitles
|
|
545
523
|
- `merge_subs`: Whether to merge subtitles with video
|
|
546
524
|
- `specific_list_subtitles`: List of subtitle languages to download
|
|
525
|
+
* Use `["*"]` to download all available subtitles
|
|
526
|
+
* Or specify individual languages like `["ita", "eng"]`
|
|
547
527
|
* Can be changed with `--specific_list_subtitles ita,eng`
|
|
548
528
|
|
|
549
529
|
#### Cleanup
|
|
@@ -695,8 +675,14 @@ python test_run.py --specific_list_audio ita,eng --specific_list_subtitles eng,s
|
|
|
695
675
|
# Keep console open after download
|
|
696
676
|
python test_run.py --not_close true
|
|
697
677
|
|
|
698
|
-
# Use global
|
|
678
|
+
# Use global searchAdd commentMore actions
|
|
699
679
|
python test_run.py --global -s "cars"
|
|
680
|
+
|
|
681
|
+
# Select specific category
|
|
682
|
+
python test_run.py --category 1 # Search in anime category
|
|
683
|
+
python test_run.py --category 2 # Search in movies & series
|
|
684
|
+
python test_run.py --category 3 # Search in series
|
|
685
|
+
python test_run.py --category 4 # Search in torrent category
|
|
700
686
|
```
|
|
701
687
|
|
|
702
688
|
# Docker
|
|
@@ -790,10 +776,10 @@ python3 telegram_bot.py
|
|
|
790
776
|
|
|
791
777
|
# Tutorials
|
|
792
778
|
|
|
793
|
-
- [Windows
|
|
794
|
-
- [Linux
|
|
795
|
-
- [Pypy
|
|
796
|
-
- [Compiled
|
|
779
|
+
- [Windows](https://www.youtube.com/watch?v=mZGqK4wdN-k)
|
|
780
|
+
- [Linux](https://www.youtube.com/watch?v=0qUNXPE_mTg)
|
|
781
|
+
- [Pypy](https://www.youtube.com/watch?v=C6m9ZKOK0p4)
|
|
782
|
+
- [Compiled](https://www.youtube.com/watch?v=pm4lqsxkTVo)
|
|
797
783
|
|
|
798
784
|
# To Do
|
|
799
785
|
|
|
@@ -812,9 +798,6 @@ Addon per Stremio che consente lo streaming HTTPS di film, serie, anime e TV in
|
|
|
812
798
|
### 🧩 [streamingcommunity-unofficialapi](https://github.com/Blu-Tiger/streamingcommunity-unofficialapi)
|
|
813
799
|
API non ufficiale per accedere ai contenuti del sito italiano StreamingCommunity.
|
|
814
800
|
|
|
815
|
-
### 🎥 [stream-buddy](https://github.com/Bbalduzz/stream-buddy)
|
|
816
|
-
Tool per guardare o scaricare film dalla piattaforma StreamingCommunity.
|
|
817
|
-
|
|
818
801
|
# Disclaimer
|
|
819
802
|
|
|
820
803
|
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. In no event shall the authors or copyright holders be liable for any claim, damages, or other liability, whether in an action of contract, tort, or otherwise, arising from, out of, or in connection with the software or the use or other dealings in the software.
|
|
@@ -15,6 +15,7 @@ from StreamingCommunity.Util.headers import get_userAgent
|
|
|
15
15
|
|
|
16
16
|
# Variable
|
|
17
17
|
max_timeout = config_manager.get_int("REQUESTS", "timeout")
|
|
18
|
+
REQUEST_VERIFY = config_manager.get_bool('REQUESTS', 'verify')
|
|
18
19
|
|
|
19
20
|
|
|
20
21
|
class VideoSource:
|
|
@@ -41,7 +42,8 @@ class VideoSource:
|
|
|
41
42
|
url=url,
|
|
42
43
|
headers=self.headers,
|
|
43
44
|
cookies=self.cookie,
|
|
44
|
-
timeout=max_timeout
|
|
45
|
+
timeout=max_timeout,
|
|
46
|
+
verify=REQUEST_VERIFY
|
|
45
47
|
)
|
|
46
48
|
response.raise_for_status()
|
|
47
49
|
|
|
@@ -77,4 +79,4 @@ class VideoSource:
|
|
|
77
79
|
logging.error("Failed to retrieve content from the URL.")
|
|
78
80
|
|
|
79
81
|
except Exception as e:
|
|
80
|
-
logging.error(f"An error occurred while parsing the playlist: {e}")
|
|
82
|
+
logging.error(f"An error occurred while parsing the playlist: {e}")
|
{streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/hdplayer.py
RENAMED
|
@@ -14,11 +14,12 @@ from StreamingCommunity.Util.config_json import config_manager
|
|
|
14
14
|
|
|
15
15
|
# Variable
|
|
16
16
|
MAX_TIMEOUT = config_manager.get_int("REQUESTS", "timeout")
|
|
17
|
+
REQUEST_VERIFY = config_manager.get_bool('REQUESTS', 'verify')
|
|
17
18
|
|
|
18
19
|
|
|
19
20
|
class VideoSource:
|
|
20
21
|
def __init__(self, proxy=None):
|
|
21
|
-
self.client = httpx.Client(headers={'user-agent': get_userAgent()}, timeout=MAX_TIMEOUT, proxy=proxy)
|
|
22
|
+
self.client = httpx.Client(headers={'user-agent': get_userAgent()}, timeout=MAX_TIMEOUT, proxy=proxy, verify=REQUEST_VERIFY)
|
|
22
23
|
|
|
23
24
|
def extractLinkHdPlayer(self, response):
|
|
24
25
|
"""Extract iframe source from the page."""
|
{streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/maxstream.py
RENAMED
|
@@ -18,7 +18,7 @@ from StreamingCommunity.Util.headers import get_userAgent
|
|
|
18
18
|
|
|
19
19
|
# Variable
|
|
20
20
|
MAX_TIMEOUT = config_manager.get_int("REQUESTS", "timeout")
|
|
21
|
-
|
|
21
|
+
REQUEST_VERIFY = config_manager.get_bool('REQUESTS', 'verify')
|
|
22
22
|
|
|
23
23
|
class VideoSource:
|
|
24
24
|
def __init__(self, url: str):
|
|
@@ -39,7 +39,7 @@ class VideoSource:
|
|
|
39
39
|
Sends a request to the initial URL and extracts the redirect URL.
|
|
40
40
|
"""
|
|
41
41
|
try:
|
|
42
|
-
response = httpx.get(self.url, headers=self.headers, follow_redirects=True, timeout=MAX_TIMEOUT)
|
|
42
|
+
response = httpx.get(self.url, headers=self.headers, follow_redirects=True, timeout=MAX_TIMEOUT, verify=REQUEST_VERIFY)
|
|
43
43
|
response.raise_for_status()
|
|
44
44
|
|
|
45
45
|
# Extract the redirect URL from the HTML
|
|
@@ -58,7 +58,7 @@ class VideoSource:
|
|
|
58
58
|
Sends a request to the redirect URL and extracts the Maxstream URL.
|
|
59
59
|
"""
|
|
60
60
|
try:
|
|
61
|
-
response = httpx.get(self.redirect_url, headers=self.headers, follow_redirects=True, timeout=MAX_TIMEOUT)
|
|
61
|
+
response = httpx.get(self.redirect_url, headers=self.headers, follow_redirects=True, timeout=MAX_TIMEOUT, verify=REQUEST_VERIFY)
|
|
62
62
|
response.raise_for_status()
|
|
63
63
|
|
|
64
64
|
# Extract the Maxstream URL from the HTML
|
|
@@ -77,12 +77,12 @@ class VideoSource:
|
|
|
77
77
|
|
|
78
78
|
# Make request to stayonline api
|
|
79
79
|
data = {'id': self.redirect_url.split("/")[-2], 'ref': ''}
|
|
80
|
-
response = httpx.post('https://stayonline.pro/ajax/linkEmbedView.php', headers=headers, data=data)
|
|
80
|
+
response = httpx.post('https://stayonline.pro/ajax/linkEmbedView.php', headers=headers, data=data, verify=REQUEST_VERIFY)
|
|
81
81
|
response.raise_for_status()
|
|
82
82
|
uprot_url = response.json()['data']['value']
|
|
83
83
|
|
|
84
84
|
# Retry getting maxtstream url
|
|
85
|
-
response = httpx.get(uprot_url, headers=self.headers, follow_redirects=True, timeout=MAX_TIMEOUT)
|
|
85
|
+
response = httpx.get(uprot_url, headers=self.headers, follow_redirects=True, timeout=MAX_TIMEOUT, verify=REQUEST_VERIFY)
|
|
86
86
|
response.raise_for_status()
|
|
87
87
|
soup = BeautifulSoup(response.text, "html.parser")
|
|
88
88
|
maxstream_url = soup.find("a").get("href")
|
|
@@ -104,7 +104,7 @@ class VideoSource:
|
|
|
104
104
|
Sends a request to the Maxstream URL and extracts the .m3u8 file URL.
|
|
105
105
|
"""
|
|
106
106
|
try:
|
|
107
|
-
response = httpx.get(self.maxstream_url, headers=self.headers, follow_redirects=True, timeout=MAX_TIMEOUT)
|
|
107
|
+
response = httpx.get(self.maxstream_url, headers=self.headers, follow_redirects=True, timeout=MAX_TIMEOUT, verify=REQUEST_VERIFY)
|
|
108
108
|
response.raise_for_status()
|
|
109
109
|
soup = BeautifulSoup(response.text, "html.parser")
|
|
110
110
|
|
|
@@ -138,4 +138,4 @@ class VideoSource:
|
|
|
138
138
|
"""
|
|
139
139
|
self.get_redirect_url()
|
|
140
140
|
self.get_maxstream_url()
|
|
141
|
-
return self.get_m3u8_url()
|
|
141
|
+
return self.get_m3u8_url()
|
{streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/mediapolisvod.py
RENAMED
|
@@ -12,7 +12,7 @@ from StreamingCommunity.Util.headers import get_headers
|
|
|
12
12
|
|
|
13
13
|
# Variable
|
|
14
14
|
MAX_TIMEOUT = config_manager.get_int("REQUESTS", "timeout")
|
|
15
|
-
|
|
15
|
+
REQUEST_VERIFY = config_manager.get_bool('REQUESTS', 'verify')
|
|
16
16
|
|
|
17
17
|
class VideoSource:
|
|
18
18
|
|
|
@@ -29,7 +29,7 @@ class VideoSource:
|
|
|
29
29
|
return "Error: Unable to determine video JSON URL"
|
|
30
30
|
|
|
31
31
|
try:
|
|
32
|
-
response = httpx.get(video_url, headers=get_headers(), timeout=MAX_TIMEOUT)
|
|
32
|
+
response = httpx.get(video_url, headers=get_headers(), timeout=MAX_TIMEOUT, verify=REQUEST_VERIFY)
|
|
33
33
|
if response.status_code != 200:
|
|
34
34
|
return f"Error: Failed to fetch video data (Status: {response.status_code})"
|
|
35
35
|
|
|
@@ -50,7 +50,7 @@ class VideoSource:
|
|
|
50
50
|
'cont': element_key,
|
|
51
51
|
'output': '62',
|
|
52
52
|
}
|
|
53
|
-
stream_response = httpx.get('https://mediapolisvod.rai.it/relinker/relinkerServlet.htm', params=params, headers=get_headers(), timeout=MAX_TIMEOUT)
|
|
53
|
+
stream_response = httpx.get('https://mediapolisvod.rai.it/relinker/relinkerServlet.htm', params=params, headers=get_headers(), timeout=MAX_TIMEOUT, verify=REQUEST_VERIFY)
|
|
54
54
|
|
|
55
55
|
if stream_response.status_code != 200:
|
|
56
56
|
return f"Error: Failed to fetch stream URL (Status: {stream_response.status_code})"
|
|
@@ -61,4 +61,4 @@ class VideoSource:
|
|
|
61
61
|
return m3u8_url
|
|
62
62
|
|
|
63
63
|
except Exception as e:
|
|
64
|
-
return f"Error: {str(e)}"
|
|
64
|
+
return f"Error: {str(e)}"
|
{streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/mixdrop.py
RENAMED
|
@@ -17,7 +17,7 @@ from StreamingCommunity.Util.headers import get_userAgent
|
|
|
17
17
|
|
|
18
18
|
# Variable
|
|
19
19
|
MAX_TIMEOUT = config_manager.get_int("REQUESTS", "timeout")
|
|
20
|
-
|
|
20
|
+
REQUEST_VERIFY = config_manager.get_bool('REQUESTS', 'verify')
|
|
21
21
|
|
|
22
22
|
class VideoSource:
|
|
23
23
|
STAYONLINE_BASE_URL = "https://stayonline.pro"
|
|
@@ -45,7 +45,7 @@ class VideoSource:
|
|
|
45
45
|
def get_redirect_url(self) -> str:
|
|
46
46
|
"""Extract the stayonline redirect URL from the initial page."""
|
|
47
47
|
try:
|
|
48
|
-
response = httpx.get(self.url, headers=self.headers, follow_redirects=True, timeout=MAX_TIMEOUT)
|
|
48
|
+
response = httpx.get(self.url, headers=self.headers, follow_redirects=True, timeout=MAX_TIMEOUT, verify=REQUEST_VERIFY)
|
|
49
49
|
response.raise_for_status()
|
|
50
50
|
soup = BeautifulSoup(response.text, "html.parser")
|
|
51
51
|
|
|
@@ -68,7 +68,7 @@ class VideoSource:
|
|
|
68
68
|
raise ValueError("Redirect URL not set. Call get_redirect_url first.")
|
|
69
69
|
|
|
70
70
|
try:
|
|
71
|
-
response = httpx.get(self.redirect_url, headers=self.headers, follow_redirects=True, timeout=MAX_TIMEOUT)
|
|
71
|
+
response = httpx.get(self.redirect_url, headers=self.headers, follow_redirects=True, timeout=MAX_TIMEOUT, verify=REQUEST_VERIFY)
|
|
72
72
|
response.raise_for_status()
|
|
73
73
|
soup = BeautifulSoup(response.text, "html.parser")
|
|
74
74
|
|
|
@@ -89,7 +89,7 @@ class VideoSource:
|
|
|
89
89
|
self.headers['referer'] = f'{self.STAYONLINE_BASE_URL}/l/{link_id}/'
|
|
90
90
|
data = {'id': link_id, 'ref': ''}
|
|
91
91
|
|
|
92
|
-
response = httpx.post(f'{self.STAYONLINE_BASE_URL}/ajax/linkView.php', headers=self.headers, data=data, timeout=MAX_TIMEOUT)
|
|
92
|
+
response = httpx.post(f'{self.STAYONLINE_BASE_URL}/ajax/linkView.php', headers=self.headers, data=data, timeout=MAX_TIMEOUT, verify=REQUEST_VERIFY)
|
|
93
93
|
response.raise_for_status()
|
|
94
94
|
return response.json()['data']['value']
|
|
95
95
|
|
|
@@ -128,7 +128,8 @@ class VideoSource:
|
|
|
128
128
|
response = httpx.get(
|
|
129
129
|
f'{self.MIXDROP_BASE_URL}/e/{video_id}',
|
|
130
130
|
headers=self._get_mixdrop_headers(),
|
|
131
|
-
timeout=MAX_TIMEOUT
|
|
131
|
+
timeout=MAX_TIMEOUT,
|
|
132
|
+
verify=REQUEST_VERIFY
|
|
132
133
|
)
|
|
133
134
|
response.raise_for_status()
|
|
134
135
|
soup = BeautifulSoup(response.text, "html.parser")
|
{streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/supervideo.py
RENAMED
|
@@ -5,9 +5,9 @@ import logging
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
# External libraries
|
|
8
|
-
import httpx
|
|
9
8
|
import jsbeautifier
|
|
10
9
|
from bs4 import BeautifulSoup
|
|
10
|
+
from curl_cffi import requests
|
|
11
11
|
|
|
12
12
|
|
|
13
13
|
# Internal utilities
|
|
@@ -17,6 +17,7 @@ from StreamingCommunity.Util.headers import get_headers
|
|
|
17
17
|
|
|
18
18
|
# Variable
|
|
19
19
|
MAX_TIMEOUT = config_manager.get_int("REQUESTS", "timeout")
|
|
20
|
+
REQUEST_VERIFY = config_manager.get_bool('REQUESTS', 'verify')
|
|
20
21
|
|
|
21
22
|
|
|
22
23
|
class VideoSource:
|
|
@@ -28,7 +29,6 @@ class VideoSource:
|
|
|
28
29
|
- url (str): The URL of the video source.
|
|
29
30
|
"""
|
|
30
31
|
self.headers = get_headers()
|
|
31
|
-
self.client = httpx.Client()
|
|
32
32
|
self.url = url
|
|
33
33
|
|
|
34
34
|
def make_request(self, url: str) -> str:
|
|
@@ -42,8 +42,10 @@ class VideoSource:
|
|
|
42
42
|
- str: The response content if successful, None otherwise.
|
|
43
43
|
"""
|
|
44
44
|
try:
|
|
45
|
-
response =
|
|
46
|
-
response.
|
|
45
|
+
response = requests.get(url, headers=self.headers, timeout=MAX_TIMEOUT, impersonate="chrome110", verify=REQUEST_VERIFY)
|
|
46
|
+
if response.status_code >= 400:
|
|
47
|
+
logging.error(f"Request failed with status code: {response.status_code}")
|
|
48
|
+
return None
|
|
47
49
|
return response.text
|
|
48
50
|
|
|
49
51
|
except Exception as e:
|
|
@@ -160,4 +162,4 @@ class VideoSource:
|
|
|
160
162
|
|
|
161
163
|
except Exception as e:
|
|
162
164
|
logging.error(f"An error occurred: {e}")
|
|
163
|
-
return None
|
|
165
|
+
return None
|
{streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/sweetpixel.py
RENAMED
|
@@ -14,7 +14,7 @@ from StreamingCommunity.Util.headers import get_userAgent
|
|
|
14
14
|
|
|
15
15
|
# Variable
|
|
16
16
|
MAX_TIMEOUT = config_manager.get_int("REQUESTS", "timeout")
|
|
17
|
-
|
|
17
|
+
REQUEST_VERIFY = config_manager.get_bool('REQUESTS', 'verify')
|
|
18
18
|
|
|
19
19
|
class VideoSource:
|
|
20
20
|
def __init__(self, full_url, episode_data, session_id, csrf_token):
|
|
@@ -30,7 +30,8 @@ class VideoSource:
|
|
|
30
30
|
cookies={"sessionId": session_id},
|
|
31
31
|
headers={"User-Agent": get_userAgent(), "csrf-token": csrf_token},
|
|
32
32
|
base_url=full_url,
|
|
33
|
-
timeout=MAX_TIMEOUT
|
|
33
|
+
timeout=MAX_TIMEOUT,
|
|
34
|
+
verify=REQUEST_VERIFY
|
|
34
35
|
)
|
|
35
36
|
|
|
36
37
|
def get_playlist(self):
|
|
@@ -46,4 +47,4 @@ class VideoSource:
|
|
|
46
47
|
|
|
47
48
|
except Exception as e:
|
|
48
49
|
logging.error(f"Error in new API system: {e}")
|
|
49
|
-
return None
|
|
50
|
+
return None
|