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.
Files changed (103) hide show
  1. {streamingcommunity-3.0.9/StreamingCommunity.egg-info → streamingcommunity-3.2.0}/PKG-INFO +43 -58
  2. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/README.md +40 -57
  3. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/ddl.py +4 -2
  4. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/hdplayer.py +2 -1
  5. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/maxstream.py +7 -7
  6. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/mediapolisvod.py +4 -4
  7. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/mixdrop.py +6 -5
  8. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/supervideo.py +7 -5
  9. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/sweetpixel.py +4 -3
  10. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/vixcloud.py +20 -14
  11. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/altadefinizione/film.py +9 -1
  12. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/altadefinizione/util/ScrapeSerie.py +35 -21
  13. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/animeunity/site.py +43 -71
  14. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/streamingcommunity/film.py +4 -0
  15. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/Downloader/HLS/downloader.py +17 -8
  16. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/Downloader/HLS/segments.py +5 -4
  17. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/Downloader/MP4/downloader.py +3 -3
  18. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Upload/update.py +8 -3
  19. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Upload/version.py +2 -2
  20. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Util/config_json.py +5 -7
  21. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Util/message.py +1 -3
  22. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Util/os.py +5 -2
  23. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/global_search.py +2 -2
  24. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/run.py +71 -36
  25. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0/StreamingCommunity.egg-info}/PKG-INFO +43 -58
  26. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity.egg-info/requires.txt +2 -0
  27. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/requirements.txt +2 -0
  28. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/setup.py +15 -2
  29. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/LICENSE +0 -0
  30. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/MANIFEST.in +0 -0
  31. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/Helper/Vixcloud/js_parser.py +0 -0
  32. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Player/Helper/Vixcloud/util.py +0 -0
  33. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/1337xx/__init__.py +0 -0
  34. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/1337xx/site.py +0 -0
  35. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/1337xx/title.py +0 -0
  36. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/altadefinizione/__init__.py +0 -0
  37. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/altadefinizione/series.py +0 -0
  38. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/altadefinizione/site.py +0 -0
  39. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/animeunity/__init__.py +0 -0
  40. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/animeunity/film.py +0 -0
  41. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/animeunity/serie.py +0 -0
  42. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/animeunity/util/ScrapeSerie.py +0 -0
  43. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/animeworld/__init__.py +0 -0
  44. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/animeworld/film.py +0 -0
  45. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/animeworld/serie.py +0 -0
  46. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/animeworld/site.py +0 -0
  47. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/animeworld/util/ScrapeSerie.py +0 -0
  48. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/cb01new/__init__.py +0 -0
  49. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/cb01new/film.py +0 -0
  50. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/cb01new/site.py +0 -0
  51. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/guardaserie/__init__.py +0 -0
  52. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/guardaserie/series.py +0 -0
  53. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/guardaserie/site.py +0 -0
  54. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/guardaserie/util/ScrapeSerie.py +0 -0
  55. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/raiplay/__init__.py +0 -0
  56. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/raiplay/film.py +0 -0
  57. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/raiplay/series.py +0 -0
  58. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/raiplay/site.py +0 -0
  59. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/raiplay/util/ScrapeSerie.py +0 -0
  60. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/streamingcommunity/__init__.py +0 -0
  61. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/streamingcommunity/series.py +0 -0
  62. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/streamingcommunity/site.py +0 -0
  63. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/streamingcommunity/util/ScrapeSerie.py +0 -0
  64. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/streamingwatch/__init__.py +0 -0
  65. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/streamingwatch/film.py +0 -0
  66. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/streamingwatch/series.py +0 -0
  67. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/streamingwatch/site.py +0 -0
  68. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Site/streamingwatch/util/ScrapeSerie.py +0 -0
  69. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Template/Class/SearchType.py +0 -0
  70. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Template/Util/__init__.py +0 -0
  71. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Template/Util/manage_ep.py +0 -0
  72. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Template/__init__.py +0 -0
  73. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Template/config_loader.py +0 -0
  74. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Api/Template/site.py +0 -0
  75. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/Downloader/TOR/downloader.py +0 -0
  76. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/Downloader/__init__.py +0 -0
  77. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/FFmpeg/__init__.py +0 -0
  78. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/FFmpeg/capture.py +0 -0
  79. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/FFmpeg/command.py +0 -0
  80. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/FFmpeg/util.py +0 -0
  81. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/M3U8/__init__.py +0 -0
  82. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/M3U8/decryptor.py +0 -0
  83. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/M3U8/estimator.py +0 -0
  84. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/M3U8/parser.py +0 -0
  85. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/M3U8/url_fixer.py +0 -0
  86. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/Proxies/proxy.py +0 -0
  87. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/TMBD/__init__.py +0 -0
  88. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/TMBD/obj_tmbd.py +0 -0
  89. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Lib/TMBD/tmdb.py +0 -0
  90. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/TelegramHelp/__init__.py +0 -0
  91. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/TelegramHelp/config.json +0 -0
  92. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/TelegramHelp/telegram_bot.py +0 -0
  93. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Util/color.py +0 -0
  94. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Util/ffmpeg_installer.py +0 -0
  95. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Util/headers.py +0 -0
  96. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Util/logger.py +0 -0
  97. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/Util/table.py +0 -0
  98. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity/__init__.py +0 -0
  99. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity.egg-info/SOURCES.txt +0 -0
  100. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity.egg-info/dependency_links.txt +0 -0
  101. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity.egg-info/entry_points.txt +0 -0
  102. {streamingcommunity-3.0.9 → streamingcommunity-3.2.0}/StreamingCommunity.egg-info/top_level.txt +0 -0
  103. {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.9
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
- <p align="center">
38
- <img src="https://i.ibb.co/v6RnT0wY/s2.jpg" alt="Project Logo" width="450"/>
39
- </p>
40
-
41
- <p align="center">
42
- <a href="https://pypi.org/project/streamingcommunity">
43
- <img src="https://img.shields.io/pypi/v/streamingcommunity?logo=pypi&labelColor=555555&style=for-the-badge" alt="PyPI"/>
44
- </a>
45
- <a href="https://www.paypal.com/donate/?hosted_button_id=UXTWMT8P6HE2C">
46
- <img src="https://img.shields.io/badge/_-Donate-red.svg?logo=githubsponsors&labelColor=555555&style=for-the-badge" alt="Donate"/>
47
- </a>
48
- <a href="https://github.com/Arrowar/StreamingCommunity/commits">
49
- <img src="https://img.shields.io/github/commit-activity/m/Arrowar/StreamingCommunity?label=commits&style=for-the-badge" alt="Commits"/>
50
- </a>
51
- <a href="https://github.com/Arrowar/StreamingCommunity/commits">
52
- <img src="https://img.shields.io/github/last-commit/Arrowar/StreamingCommunity/main?label=&style=for-the-badge&display_timestamp=committer" alt="Last Commit"/>
53
- </a>
54
- </p>
55
-
56
- <p align="center">
57
- <a href="https://github.com/Arrowar/StreamingCommunity/blob/main/LICENSE">
58
- <img src="https://img.shields.io/badge/License-GPL_3.0-blue.svg?style=for-the-badge" alt="License"/>
59
- </a>
60
- <a href="https://pypi.org/project/streamingcommunity">
61
- <img src="https://img.shields.io/pypi/dm/streamingcommunity?style=for-the-badge" alt="PyPI Downloads"/>
62
- </a>
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
+ [![PyPI Version](https://img.shields.io/pypi/v/streamingcommunity?logo=pypi&logoColor=white&labelColor=2d3748&color=3182ce&style=for-the-badge)](https://pypi.org/project/streamingcommunity)
44
+ [![Downloads](https://img.shields.io/pypi/dm/streamingcommunity?logo=pypi&logoColor=white&labelColor=2d3748&color=38a169&style=for-the-badge)](https://pypi.org/project/streamingcommunity)
45
+ [![License](https://img.shields.io/github/license/Arrowar/StreamingCommunity?logo=gnu&logoColor=white&labelColor=2d3748&color=e53e3e&style=for-the-badge)](https://github.com/Arrowar/StreamingCommunity/blob/main/LICENSE)
46
+
47
+ [![Code Lines](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/Arrowar/StreamingCommunity/main/.github/.domain/loc-badge.json&style=for-the-badge&labelColor=2d3748)](https://github.com/Arrowar/StreamingCommunity)
48
+ [![Last Commit](https://img.shields.io/github/last-commit/Arrowar/StreamingCommunity?logo=git&logoColor=white&labelColor=2d3748&color=805ad5&style=for-the-badge)](https://github.com/Arrowar/StreamingCommunity/commits)
49
+ [![Issues](https://img.shields.io/github/issues/Arrowar/StreamingCommunity?logo=github&logoColor=white&labelColor=2d3748&color=ed8936&style=for-the-badge)](https://github.com/Arrowar/StreamingCommunity/issues)
50
+
51
+ ## 💝 Support the Project
52
+
53
+ [![Donate PayPal](https://img.shields.io/badge/💳_Donate-PayPal-00457C?style=for-the-badge&logo=paypal&logoColor=white&labelColor=2d3748)](https://www.paypal.com/donate/?hosted_button_id=UXTWMT8P6HE2C)
54
+ ## 🚀 Download & Install
55
+
56
+ [![Windows](https://img.shields.io/badge/🪟_Windows-0078D4?style=for-the-badge&logo=windows&logoColor=white&labelColor=2d3748)](https://github.com/Arrowar/StreamingCommunity/releases/latest/download/StreamingCommunity_win.exe)
57
+ [![macOS](https://img.shields.io/badge/🍎_macOS-000000?style=for-the-badge&logo=apple&logoColor=white&labelColor=2d3748)](https://github.com/Arrowar/StreamingCommunity/releases/latest/download/StreamingCommunity_mac)
58
+ [![Linux latest](https://img.shields.io/badge/🐧_Linux_latest-FCC624?style=for-the-badge&logo=linux&logoColor=black&labelColor=2d3748)](https://github.com/Arrowar/StreamingCommunity/releases/latest/download/StreamingCommunity_linux_latest)
59
+ [![Linux 22.04](https://img.shields.io/badge/🐧_Linux_22.04-FCC624?style=for-the-badge&logo=linux&logoColor=black&labelColor=2d3748)](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 search
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 Tutorial](https://www.youtube.com/watch?v=mZGqK4wdN-k)
830
- - [Linux Tutorial](https://www.youtube.com/watch?v=0qUNXPE_mTg)
831
- - [Pypy Tutorial](https://www.youtube.com/watch?v=C6m9ZKOK0p4)
832
- - [Compiled .exe Tutorial](https://www.youtube.com/watch?v=pm4lqsxkTVo)
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
- <p align="center">
2
- <img src="https://i.ibb.co/v6RnT0wY/s2.jpg" alt="Project Logo" width="450"/>
3
- </p>
4
-
5
- <p align="center">
6
- <a href="https://pypi.org/project/streamingcommunity">
7
- <img src="https://img.shields.io/pypi/v/streamingcommunity?logo=pypi&labelColor=555555&style=for-the-badge" alt="PyPI"/>
8
- </a>
9
- <a href="https://www.paypal.com/donate/?hosted_button_id=UXTWMT8P6HE2C">
10
- <img src="https://img.shields.io/badge/_-Donate-red.svg?logo=githubsponsors&labelColor=555555&style=for-the-badge" alt="Donate"/>
11
- </a>
12
- <a href="https://github.com/Arrowar/StreamingCommunity/commits">
13
- <img src="https://img.shields.io/github/commit-activity/m/Arrowar/StreamingCommunity?label=commits&style=for-the-badge" alt="Commits"/>
14
- </a>
15
- <a href="https://github.com/Arrowar/StreamingCommunity/commits">
16
- <img src="https://img.shields.io/github/last-commit/Arrowar/StreamingCommunity/main?label=&style=for-the-badge&display_timestamp=committer" alt="Last Commit"/>
17
- </a>
18
- </p>
19
-
20
- <p align="center">
21
- <a href="https://github.com/Arrowar/StreamingCommunity/blob/main/LICENSE">
22
- <img src="https://img.shields.io/badge/License-GPL_3.0-blue.svg?style=for-the-badge" alt="License"/>
23
- </a>
24
- <a href="https://pypi.org/project/streamingcommunity">
25
- <img src="https://img.shields.io/pypi/dm/streamingcommunity?style=for-the-badge" alt="PyPI Downloads"/>
26
- </a>
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
+ [![PyPI Version](https://img.shields.io/pypi/v/streamingcommunity?logo=pypi&logoColor=white&labelColor=2d3748&color=3182ce&style=for-the-badge)](https://pypi.org/project/streamingcommunity)
6
+ [![Downloads](https://img.shields.io/pypi/dm/streamingcommunity?logo=pypi&logoColor=white&labelColor=2d3748&color=38a169&style=for-the-badge)](https://pypi.org/project/streamingcommunity)
7
+ [![License](https://img.shields.io/github/license/Arrowar/StreamingCommunity?logo=gnu&logoColor=white&labelColor=2d3748&color=e53e3e&style=for-the-badge)](https://github.com/Arrowar/StreamingCommunity/blob/main/LICENSE)
8
+
9
+ [![Code Lines](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/Arrowar/StreamingCommunity/main/.github/.domain/loc-badge.json&style=for-the-badge&labelColor=2d3748)](https://github.com/Arrowar/StreamingCommunity)
10
+ [![Last Commit](https://img.shields.io/github/last-commit/Arrowar/StreamingCommunity?logo=git&logoColor=white&labelColor=2d3748&color=805ad5&style=for-the-badge)](https://github.com/Arrowar/StreamingCommunity/commits)
11
+ [![Issues](https://img.shields.io/github/issues/Arrowar/StreamingCommunity?logo=github&logoColor=white&labelColor=2d3748&color=ed8936&style=for-the-badge)](https://github.com/Arrowar/StreamingCommunity/issues)
12
+
13
+ ## 💝 Support the Project
14
+
15
+ [![Donate PayPal](https://img.shields.io/badge/💳_Donate-PayPal-00457C?style=for-the-badge&logo=paypal&logoColor=white&labelColor=2d3748)](https://www.paypal.com/donate/?hosted_button_id=UXTWMT8P6HE2C)
16
+ ## 🚀 Download & Install
17
+
18
+ [![Windows](https://img.shields.io/badge/🪟_Windows-0078D4?style=for-the-badge&logo=windows&logoColor=white&labelColor=2d3748)](https://github.com/Arrowar/StreamingCommunity/releases/latest/download/StreamingCommunity_win.exe)
19
+ [![macOS](https://img.shields.io/badge/🍎_macOS-000000?style=for-the-badge&logo=apple&logoColor=white&labelColor=2d3748)](https://github.com/Arrowar/StreamingCommunity/releases/latest/download/StreamingCommunity_mac)
20
+ [![Linux latest](https://img.shields.io/badge/🐧_Linux_latest-FCC624?style=for-the-badge&logo=linux&logoColor=black&labelColor=2d3748)](https://github.com/Arrowar/StreamingCommunity/releases/latest/download/StreamingCommunity_linux_latest)
21
+ [![Linux 22.04](https://img.shields.io/badge/🐧_Linux_22.04-FCC624?style=for-the-badge&logo=linux&logoColor=black&labelColor=2d3748)](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 search
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 Tutorial](https://www.youtube.com/watch?v=mZGqK4wdN-k)
794
- - [Linux Tutorial](https://www.youtube.com/watch?v=0qUNXPE_mTg)
795
- - [Pypy Tutorial](https://www.youtube.com/watch?v=C6m9ZKOK0p4)
796
- - [Compiled .exe Tutorial](https://www.youtube.com/watch?v=pm4lqsxkTVo)
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}")
@@ -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."""
@@ -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()
@@ -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)}"
@@ -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")
@@ -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 = self.client.get(url, headers=self.headers, timeout=MAX_TIMEOUT, follow_redirects=True)
46
- response.raise_for_status()
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
@@ -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