plexflow 0.0.119__py3-none-any.whl → 0.0.120__py3-none-any.whl
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.
- plexflow/core/downloads/candidates/__pycache__/utils.cpython-312.pyc +0 -0
- plexflow/core/downloads/candidates/rank/__pycache__/ranking.cpython-312.pyc +0 -0
- plexflow/core/downloads/candidates/rank/__pycache__/utils.cpython-312.pyc +0 -0
- plexflow/core/metadata/providers/plex/datatypes.py +19 -19
- plexflow/core/torrents/auto/__pycache__/auto_torrents.cpython-312.pyc +0 -0
- plexflow/core/torrents/providers/__pycache__/__init__.cpython-312.pyc +0 -0
- plexflow/core/torrents/providers/ext/__pycache__/__init__.cpython-312.pyc +0 -0
- plexflow/core/torrents/providers/ext/__pycache__/ext.cpython-312.pyc +0 -0
- plexflow/core/torrents/providers/ext/__pycache__/utils.cpython-312.pyc +0 -0
- plexflow/core/torrents/providers/extratorrent/__pycache__/__init__.cpython-312.pyc +0 -0
- plexflow/core/torrents/providers/extratorrent/__pycache__/extratorrent.cpython-312.pyc +0 -0
- plexflow/core/torrents/providers/extratorrent/__pycache__/utils.cpython-312.pyc +0 -0
- plexflow/core/torrents/providers/piratesparadise/__pycache__/__init__.cpython-312.pyc +0 -0
- plexflow/core/torrents/providers/piratesparadise/__pycache__/piratesparadise.cpython-312.pyc +0 -0
- plexflow/core/torrents/providers/piratesparadise/__pycache__/utils.cpython-312.pyc +0 -0
- plexflow/core/torrents/providers/snowfl/__pycache__/__init__.cpython-312.pyc +0 -0
- plexflow/core/torrents/providers/snowfl/__pycache__/snowfl.cpython-312.pyc +0 -0
- plexflow/core/torrents/providers/snowfl/__pycache__/utils.cpython-312.pyc +0 -0
- plexflow/core/torrents/providers/tgxi/__init__.py +0 -0
- plexflow/core/torrents/providers/tgxi/tgxi.py +16 -0
- plexflow/core/torrents/providers/tgxi/utils.py +61 -0
- plexflow/core/torrents/providers/therarbg/__pycache__/__init__.cpython-312.pyc +0 -0
- plexflow/core/torrents/providers/therarbg/__pycache__/therarbg.cpython-312.pyc +0 -0
- plexflow/core/torrents/providers/therarbg/__pycache__/utils.cpython-312.pyc +0 -0
- plexflow/core/torrents/providers/torrentquest/__pycache__/__init__.cpython-312.pyc +0 -0
- plexflow/core/torrents/providers/torrentquest/__pycache__/torrentquest.cpython-312.pyc +0 -0
- plexflow/core/torrents/providers/torrentquest/__pycache__/utils.cpython-312.pyc +0 -0
- plexflow/core/torrents/providers/tpb/__pycache__/__init__.cpython-312.pyc +0 -0
- plexflow/core/torrents/providers/tpb/__pycache__/tpb.cpython-312.pyc +0 -0
- plexflow/core/torrents/providers/tpb/__pycache__/utils.cpython-312.pyc +0 -0
- plexflow/core/torrents/providers/yts/__pycache__/__init__.cpython-312.pyc +0 -0
- plexflow/core/torrents/providers/yts/__pycache__/utils.cpython-312.pyc +0 -0
- plexflow/core/torrents/providers/yts/__pycache__/yts.cpython-312.pyc +0 -0
- plexflow/core/torrents/results/__pycache__/utils.cpython-312.pyc +0 -0
- plexflow/utils/antibot/__pycache__/human_like_requests.cpython-312.pyc +0 -0
- plexflow/utils/api/rest/__pycache__/__init__.cpython-312.pyc +0 -0
- plexflow/utils/api/rest/__pycache__/antibot_restful.cpython-312.pyc +0 -0
- plexflow/utils/api/rest/__pycache__/plexful.cpython-312.pyc +0 -0
- plexflow/utils/api/rest/__pycache__/restful.cpython-312.pyc +0 -0
- plexflow/utils/api/rest/__pycache__/url_builder.cpython-312.pyc +0 -0
- plexflow/utils/image/__pycache__/storage.cpython-312.pyc +0 -0
- plexflow/utils/strings/__pycache__/__init__.cpython-312.pyc +0 -0
- plexflow/utils/strings/__pycache__/filesize.cpython-312.pyc +0 -0
- plexflow/utils/strings/__pycache__/language.cpython-312.pyc +0 -0
- plexflow/utils/strings/__pycache__/sanitize.cpython-312.pyc +0 -0
- plexflow/utils/subtitle/__pycache__/search.cpython-312.pyc +0 -0
- plexflow/utils/torrent/__pycache__/__init__.cpython-312.pyc +0 -0
- plexflow/utils/torrent/__pycache__/files.cpython-312.pyc +0 -0
- plexflow/utils/torrent/__pycache__/hash.cpython-312.pyc +0 -0
- plexflow/utils/torrent/compare/__pycache__/with_subtitles.cpython-312.pyc +0 -0
- plexflow/utils/torrent/compare/with_subtitles.py +89 -0
- plexflow/utils/torrent/extract/__pycache__/common.cpython-312.pyc +0 -0
- plexflow/utils/torrent/extract/__pycache__/ext.cpython-312.pyc +0 -0
- plexflow/utils/torrent/extract/__pycache__/extratorrent.cpython-312.pyc +0 -0
- plexflow/utils/torrent/extract/__pycache__/piratesparadise.cpython-312.pyc +0 -0
- plexflow/utils/torrent/extract/__pycache__/therarbg.cpython-312.pyc +0 -0
- plexflow/utils/torrent/extract/__pycache__/torrentquest.cpython-312.pyc +0 -0
- plexflow/utils/torrent/extract/tgxi.py +64 -0
- {plexflow-0.0.119.dist-info → plexflow-0.0.120.dist-info}/METADATA +2 -1
- {plexflow-0.0.119.dist-info → plexflow-0.0.120.dist-info}/RECORD +62 -56
- {plexflow-0.0.119.dist-info → plexflow-0.0.120.dist-info}/entry_points.txt +1 -0
- {plexflow-0.0.119.dist-info → plexflow-0.0.120.dist-info}/WHEEL +0 -0
Binary file
|
Binary file
|
Binary file
|
@@ -245,25 +245,25 @@ class PlexMovieMetadata:
|
|
245
245
|
Rating (Optional[List[PlexRating]]): The list of ratings of the movie.
|
246
246
|
Studio (Optional[List[PlexStudio]]): The list of studios associated with the movie.
|
247
247
|
"""
|
248
|
-
title: Optional[str]
|
249
|
-
guid: Optional[str]
|
250
|
-
key: Optional[str]
|
251
|
-
primaryExtraKey: Optional[str]
|
252
|
-
rating: Optional[float]
|
253
|
-
ratingKey: Optional[str]
|
254
|
-
studio: Optional[str]
|
255
|
-
summary: Optional[str]
|
256
|
-
tagline: Optional[str]
|
257
|
-
type: Optional[str]
|
258
|
-
thumb: Optional[str]
|
259
|
-
addedAt: Optional[int]
|
260
|
-
duration: Optional[int]
|
261
|
-
publicPagesURL: Optional[str]
|
262
|
-
slug: Optional[str]
|
263
|
-
userState: Optional[bool]
|
264
|
-
contentRating: Optional[str]
|
265
|
-
originallyAvailableAt: Optional[str]
|
266
|
-
year: Optional[int]
|
248
|
+
title: Optional[str] = field(default=None)
|
249
|
+
guid: Optional[str] = field(default=None)
|
250
|
+
key: Optional[str] = field(default=None)
|
251
|
+
primaryExtraKey: Optional[str] = field(default=None)
|
252
|
+
rating: Optional[float] = field(default=None)
|
253
|
+
ratingKey: Optional[str] = field(default=None)
|
254
|
+
studio: Optional[str] = field(default=None)
|
255
|
+
summary: Optional[str] = field(default=None)
|
256
|
+
tagline: Optional[str] = field(default=None)
|
257
|
+
type: Optional[str] = field(default=None)
|
258
|
+
thumb: Optional[str] = field(default=None)
|
259
|
+
addedAt: Optional[int] = field(default=None)
|
260
|
+
duration: Optional[int] = field(default=None)
|
261
|
+
publicPagesURL: Optional[str] = field(default=None)
|
262
|
+
slug: Optional[str] = field(default=None)
|
263
|
+
userState: Optional[bool] = field(default=None)
|
264
|
+
contentRating: Optional[str] = field(default=None)
|
265
|
+
originallyAvailableAt: Optional[str] = field(default=None)
|
266
|
+
year: Optional[int] = field(default=None)
|
267
267
|
audienceRating: Optional[float] = None
|
268
268
|
audienceRatingImage: Optional[str] = None
|
269
269
|
ratingImage: Optional[str] = None
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
plexflow/core/torrents/providers/piratesparadise/__pycache__/piratesparadise.cpython-312.pyc
CHANGED
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
File without changes
|
@@ -0,0 +1,16 @@
|
|
1
|
+
from plexflow.utils.api.rest.plexful import Plexful
|
2
|
+
from plexflow.core.torrents.providers.therarbg.utils import TheRarbgSearchResult
|
3
|
+
from plexflow.utils.torrent.extract.therarbg import extract_torrent_results
|
4
|
+
from typing import List
|
5
|
+
|
6
|
+
class TheRarbg(Plexful):
|
7
|
+
def __init__(self, base_url: str = 'https://therarbg.com'):
|
8
|
+
super().__init__(base_url=base_url)
|
9
|
+
|
10
|
+
def search(self, query: str, headless: bool = True, **kwargs) -> List[TheRarbgSearchResult]:
|
11
|
+
response = self.get(f'/get-posts/keywords:{query}/')
|
12
|
+
|
13
|
+
response.raise_for_status()
|
14
|
+
|
15
|
+
data = extract_torrent_results(html=response.text if not headless else response.html)
|
16
|
+
return list(map(lambda t: TheRarbgSearchResult(**t), data))
|
@@ -0,0 +1,61 @@
|
|
1
|
+
from datetime import datetime
|
2
|
+
from plexflow.core.torrents.results.torrent import Torrent
|
3
|
+
from plexflow.utils.imdb.imdb_codes import IMDbCode
|
4
|
+
from plexflow.utils.torrent.hash import extract_torrent_hash
|
5
|
+
|
6
|
+
class TheRarbgSearchResult(Torrent):
|
7
|
+
def __init__(self, **kwargs):
|
8
|
+
super().__init__()
|
9
|
+
self._name = kwargs.get('name')
|
10
|
+
self._date = kwargs.get('date')
|
11
|
+
self._type = kwargs.get('type')
|
12
|
+
self._size = kwargs.get('size_bytes')
|
13
|
+
self._seeds = kwargs.get('seeds')
|
14
|
+
self._peers = kwargs.get('peers')
|
15
|
+
self._link = kwargs.get('link')
|
16
|
+
self._imdb = kwargs.get('imdb')
|
17
|
+
self.src = 'therarbg'
|
18
|
+
|
19
|
+
@property
|
20
|
+
def source(self) -> str:
|
21
|
+
return self.src
|
22
|
+
|
23
|
+
@property
|
24
|
+
def magnet(self) -> str:
|
25
|
+
return None
|
26
|
+
|
27
|
+
@property
|
28
|
+
def date(self) -> datetime:
|
29
|
+
return self._date
|
30
|
+
|
31
|
+
@property
|
32
|
+
def seeds(self) -> int:
|
33
|
+
return self._seeds
|
34
|
+
|
35
|
+
@property
|
36
|
+
def peers(self) -> int:
|
37
|
+
return self._peers
|
38
|
+
|
39
|
+
@property
|
40
|
+
def size_bytes(self) -> int:
|
41
|
+
return self._size
|
42
|
+
|
43
|
+
@property
|
44
|
+
def imdb_code(self) -> IMDbCode:
|
45
|
+
return self._imdb
|
46
|
+
|
47
|
+
@property
|
48
|
+
def release_name(self) -> str:
|
49
|
+
return self._name
|
50
|
+
|
51
|
+
@property
|
52
|
+
def hash(self) -> str:
|
53
|
+
return None
|
54
|
+
|
55
|
+
@property
|
56
|
+
def url(self) -> str:
|
57
|
+
return self._link
|
58
|
+
|
59
|
+
@property
|
60
|
+
def category(self) -> str:
|
61
|
+
return self._type
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -0,0 +1,89 @@
|
|
1
|
+
import os
|
2
|
+
from google import genai
|
3
|
+
from google.genai import types
|
4
|
+
|
5
|
+
|
6
|
+
def generate(torrent: str, subtitle: str):
|
7
|
+
client = genai.Client(
|
8
|
+
api_key=os.environ.get("GEMINI_API_KEY"),
|
9
|
+
)
|
10
|
+
|
11
|
+
model = "gemini-2.5-flash"
|
12
|
+
contents = [
|
13
|
+
types.Content(
|
14
|
+
role="user",
|
15
|
+
parts=[
|
16
|
+
types.Part.from_text(text=f"""torrent: {torrent}
|
17
|
+
subtitle: {subtitle}"""),
|
18
|
+
],
|
19
|
+
),
|
20
|
+
]
|
21
|
+
generate_content_config = types.GenerateContentConfig(
|
22
|
+
thinking_config = types.ThinkingConfig(
|
23
|
+
thinking_budget=-1,
|
24
|
+
),
|
25
|
+
response_mime_type="application/json",
|
26
|
+
response_schema=genai.types.Schema(
|
27
|
+
type = genai.types.Type.OBJECT,
|
28
|
+
required = ["subtitle", "torrent", "is_match", "reason"],
|
29
|
+
properties = {
|
30
|
+
"subtitle": genai.types.Schema(
|
31
|
+
type = genai.types.Type.STRING,
|
32
|
+
),
|
33
|
+
"torrent": genai.types.Schema(
|
34
|
+
type = genai.types.Type.STRING,
|
35
|
+
),
|
36
|
+
"is_match": genai.types.Schema(
|
37
|
+
type = genai.types.Type.BOOLEAN,
|
38
|
+
),
|
39
|
+
"reason": genai.types.Schema(
|
40
|
+
type = genai.types.Type.STRING,
|
41
|
+
),
|
42
|
+
},
|
43
|
+
),
|
44
|
+
system_instruction=[
|
45
|
+
types.Part.from_text(text="""You are an expert at matching subtitle names with torrent names. Resolution and codecs are not important. Consider the release group when matching, however it is not the most important thing. You always output a JSON in the following format:
|
46
|
+
|
47
|
+
{
|
48
|
+
\"subtitle\": string,
|
49
|
+
\"torrent\": string,
|
50
|
+
\"is_match\": boolean,
|
51
|
+
\"reason\": string
|
52
|
+
}"""),
|
53
|
+
],
|
54
|
+
)
|
55
|
+
|
56
|
+
# Initialize an empty string to store the full response
|
57
|
+
full_response_text = ""
|
58
|
+
|
59
|
+
for chunk in client.models.generate_content_stream(
|
60
|
+
model=model,
|
61
|
+
contents=contents,
|
62
|
+
config=generate_content_config,
|
63
|
+
):
|
64
|
+
# Append each chunk's text to the string
|
65
|
+
full_response_text += chunk.text
|
66
|
+
# Optional: Print chunks as they arrive if you still want to see the streaming
|
67
|
+
# print(chunk.text, end="")
|
68
|
+
|
69
|
+
# Now, full_response_text contains the complete JSON string
|
70
|
+
#print("\n--- Complete Generated Output ---")
|
71
|
+
#print(full_response_text)
|
72
|
+
|
73
|
+
# You can return this string if you want to use it outside the function
|
74
|
+
return full_response_text
|
75
|
+
|
76
|
+
|
77
|
+
def compare(torrent: str, subtitle: str) -> dict:
|
78
|
+
generated_json_string = generate(
|
79
|
+
torrent=torrent,
|
80
|
+
subtitle=subtitle,
|
81
|
+
)
|
82
|
+
|
83
|
+
import json
|
84
|
+
try:
|
85
|
+
data = json.loads(generated_json_string)
|
86
|
+
return data
|
87
|
+
except json.JSONDecodeError as e:
|
88
|
+
print(f"\nError decoding JSON: {e}")
|
89
|
+
print(f"Raw string: {generated_json_string}")
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -0,0 +1,64 @@
|
|
1
|
+
from bs4 import BeautifulSoup
|
2
|
+
from urllib.parse import urljoin
|
3
|
+
import dateparser
|
4
|
+
from plexflow.utils.strings.filesize import parse_size
|
5
|
+
from plexflow.utils.imdb.imdb_codes import extract_imdb_code
|
6
|
+
|
7
|
+
|
8
|
+
def extract_torrent_results(html):
|
9
|
+
"""Extracts torrent information from HTML, resilient to HTML structure changes.
|
10
|
+
|
11
|
+
Args:
|
12
|
+
html: The HTML content of the page.
|
13
|
+
|
14
|
+
Returns:
|
15
|
+
A list of dictionaries, each containing torrent information:
|
16
|
+
- 'title': The title of the torrent.
|
17
|
+
- 'link': The link to the torrent detail page.
|
18
|
+
- 'category': The category of the torrent.
|
19
|
+
- 'added': The date the torrent was added.
|
20
|
+
- 'size': The size of the torrent.
|
21
|
+
- 'seeders': The number of seeders.
|
22
|
+
- 'leechers': The number of leechers.
|
23
|
+
- 'thumbnail': The URL of the torrent thumbnail (if available).
|
24
|
+
"""
|
25
|
+
|
26
|
+
torrents = []
|
27
|
+
soup = BeautifulSoup(html, 'html.parser')
|
28
|
+
|
29
|
+
# Find all table rows that likely contain torrent information
|
30
|
+
rows = soup.find_all('div', class_='tgxtablerow')
|
31
|
+
|
32
|
+
for row in rows:
|
33
|
+
torrent = {}
|
34
|
+
|
35
|
+
# Extract data from the cells
|
36
|
+
cells = row.find_all('div', class_='tgxtablecell')
|
37
|
+
|
38
|
+
# Title (get full title from link href)
|
39
|
+
title_cell = cells[3]
|
40
|
+
title_link = title_cell.find('a')
|
41
|
+
|
42
|
+
if title_link:
|
43
|
+
# Get the part of the href after the last '/'
|
44
|
+
torrent['link'] = urljoin('https://torrentgalaxy.info', title_link['href'])
|
45
|
+
else:
|
46
|
+
torrent['link'] = ''
|
47
|
+
|
48
|
+
torrent['name'] = title_cell.text.strip()
|
49
|
+
|
50
|
+
# lets search in all links of the cell
|
51
|
+
# for an imdb id
|
52
|
+
for link in title_cell.find_all('a'):
|
53
|
+
href = link.get('href')
|
54
|
+
if isinstance(href, str):
|
55
|
+
imdb_code = next(extract_imdb_code(href), None)
|
56
|
+
if isinstance(imdb_code, str):
|
57
|
+
torrent['imdb'] = imdb_code
|
58
|
+
break
|
59
|
+
|
60
|
+
# TODO
|
61
|
+
|
62
|
+
torrents.append(torrent)
|
63
|
+
|
64
|
+
return torrents
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.3
|
2
2
|
Name: plexflow
|
3
|
-
Version: 0.0.
|
3
|
+
Version: 0.0.120
|
4
4
|
Summary: A short description of the package.
|
5
5
|
License: MIT
|
6
6
|
Keywords: keyword1,keyword2,keyword3
|
@@ -29,6 +29,7 @@ Requires-Dist: dataclasses-json (>=0.6.4,<0.7.0)
|
|
29
29
|
Requires-Dist: dateparser (>=1.2.0,<2.0.0)
|
30
30
|
Requires-Dist: fake-useragent (>=1.4.0,<2.0.0)
|
31
31
|
Requires-Dist: google-cloud-pubsub (>=2.28.0,<3.0.0)
|
32
|
+
Requires-Dist: google-genai (>=1.26.0,<2.0.0)
|
32
33
|
Requires-Dist: groq (>=0.9.0,<0.10.0)
|
33
34
|
Requires-Dist: html5lib (>=1.1,<2.0)
|
34
35
|
Requires-Dist: humanfriendly (>=10.0,<11.0)
|
@@ -68,11 +68,11 @@ plexflow/core/downloads/__pycache__/__init__.cpython-312.pyc,sha256=soaT0G2pvzN6
|
|
68
68
|
plexflow/core/downloads/candidates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
69
69
|
plexflow/core/downloads/candidates/__pycache__/__init__.cpython-312.pyc,sha256=rukNX00PSteBonRk-cayzNRk17ypWfE4noOAR3Ibjn0,170
|
70
70
|
plexflow/core/downloads/candidates/__pycache__/download_candidate.cpython-312.pyc,sha256=6qCk-6nvWxTczY0G7FbY_tQ2xOqllQrVdROnm_IdkBg,9573
|
71
|
-
plexflow/core/downloads/candidates/__pycache__/utils.cpython-312.pyc,sha256=
|
71
|
+
plexflow/core/downloads/candidates/__pycache__/utils.cpython-312.pyc,sha256=siHmGpfFms4ImysVqDU50VLzRt24E2tDyhJb2O6xwok,2199
|
72
72
|
plexflow/core/downloads/candidates/download_candidate.py,sha256=6lQbtNw8uGr5B8qrkOOCxxvCKGHvFoEq8JjHGNB5FN8,5989
|
73
73
|
plexflow/core/downloads/candidates/filtered.py,sha256=HgUY0S3aWAeHASHTjND9hyjCtGNLhUzLOL90G2CDxKg,1842
|
74
|
-
plexflow/core/downloads/candidates/rank/__pycache__/ranking.cpython-312.pyc,sha256=
|
75
|
-
plexflow/core/downloads/candidates/rank/__pycache__/utils.cpython-312.pyc,sha256=
|
74
|
+
plexflow/core/downloads/candidates/rank/__pycache__/ranking.cpython-312.pyc,sha256=PyFgF-AfVisFErJ9PHeHb8RYLc4WIeRXQL3WSU83MnU,4298
|
75
|
+
plexflow/core/downloads/candidates/rank/__pycache__/utils.cpython-312.pyc,sha256=YS3mCbqz2dnIvZuODAW8hAi9iDOp3HQDde0WVl4CBo0,426
|
76
76
|
plexflow/core/downloads/candidates/rank/ranking.py,sha256=p86f3DQmXJNE53gPk9E5RcKA7dgXI4wPQsIh9ae1uxY,2490
|
77
77
|
plexflow/core/downloads/candidates/rank/utils.py,sha256=R4Ai4KmZRONo9vd2rf32DdGxVkANHYFwSjrO5WVjX9U,100
|
78
78
|
plexflow/core/downloads/candidates/utils.py,sha256=BnuDSRjU9mVYSh9ejKgfvlLi0bWEqc07uLyskC-bYhw,1874
|
@@ -221,7 +221,7 @@ plexflow/core/metadata/providers/plex/__pycache__/moviemeter.cpython-311.pyc,sha
|
|
221
221
|
plexflow/core/metadata/providers/plex/__pycache__/plex.cpython-311.pyc,sha256=FgbspEc3m5Vkm_m9Ry7gVAavs_2-4Er4FIREdJgaDIQ,8182
|
222
222
|
plexflow/core/metadata/providers/plex/__pycache__/plex.cpython-312.pyc,sha256=GKjYqAdmiDSuAQ3HlsQJMRAHfi65sbw7maeLcuq6rbs,7334
|
223
223
|
plexflow/core/metadata/providers/plex/__pycache__/tmdb.cpython-311.pyc,sha256=vWlpw_-ldSWwFvz67kTwxK9XxZPy7iExyLgD6rTOf10,4200
|
224
|
-
plexflow/core/metadata/providers/plex/datatypes.py,sha256
|
224
|
+
plexflow/core/metadata/providers/plex/datatypes.py,sha256=-PSBCSyR5sfA2TOFCAr5mlnfSMngz8OaEjcc51CCw_U,32441
|
225
225
|
plexflow/core/metadata/providers/plex/plex.py,sha256=KrOjSLzeZVIGDnLDC7dw87Yizq5h3Fbf9MtPv_tcET8,5918
|
226
226
|
plexflow/core/metadata/providers/tmdb/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
227
227
|
plexflow/core/metadata/providers/tmdb/__pycache__/__init__.cpython-311.pyc,sha256=djXYmvhVt2MFuzdiZ7ojQCXMa9UffVv_j_hBl0bdIvM,187
|
@@ -397,7 +397,7 @@ plexflow/core/torrents/analyzers/analyzed_torrent.py,sha256=gsAr5RjYVXozWUaP3zSh
|
|
397
397
|
plexflow/core/torrents/analyzers/analyzer.py,sha256=-KqZpwrrQpu5Aqt94plO5fUr1RQOOdCzKb1dT5P1SoE,1358
|
398
398
|
plexflow/core/torrents/analyzers/torrentquest/__pycache__/analyzer.cpython-312.pyc,sha256=NpoTFmZEWD7_49Qdbr4_CsvIn5F0uOjls-uWa3hgodY,2759
|
399
399
|
plexflow/core/torrents/analyzers/torrentquest/analyzer.py,sha256=f2X3CcYBA9xYZ6kRLkGQ5YK5feXjsw229z5nLWUHMEI,1907
|
400
|
-
plexflow/core/torrents/auto/__pycache__/auto_torrents.cpython-312.pyc,sha256=
|
400
|
+
plexflow/core/torrents/auto/__pycache__/auto_torrents.cpython-312.pyc,sha256=9lJlAtKIDRoxpxvCL_oazLZCPhAW1Lh26soE-tZMVVk,2503
|
401
401
|
plexflow/core/torrents/auto/auto_providers/auto/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
402
402
|
plexflow/core/torrents/auto/auto_providers/auto/__pycache__/__init__.cpython-311.pyc,sha256=qCFNPGmwyRmmvaF4ox321aGG3j1ix-HTZg8LA5kr0QE,197
|
403
403
|
plexflow/core/torrents/auto/auto_providers/auto/__pycache__/__init__.cpython-312.pyc,sha256=vaXlU_2wadR_q6ZWmjygCqx4BjjtyYaHXzC5fD6CI1w,185
|
@@ -416,28 +416,28 @@ plexflow/core/torrents/auto/auto_providers/tpb/torrent.py,sha256=8X2i75s3sI9rGcT
|
|
416
416
|
plexflow/core/torrents/auto/auto_torrents.py,sha256=Raal3-ZK30o8hOvQrwiWYmiQy7zYkFcKTLi4wQi4K7k,1721
|
417
417
|
plexflow/core/torrents/providers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
418
418
|
plexflow/core/torrents/providers/__pycache__/__init__.cpython-311.pyc,sha256=8u9BzsXTcFt1MeuWCG0TjlyZaO7NJjsSfx_OUByR5rE,182
|
419
|
-
plexflow/core/torrents/providers/__pycache__/__init__.cpython-312.pyc,sha256=
|
419
|
+
plexflow/core/torrents/providers/__pycache__/__init__.cpython-312.pyc,sha256=z6zgerdghp5H7HSd9hi6ZdF3AVAFE92_eITQtdobJyI,168
|
420
420
|
plexflow/core/torrents/providers/ext/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
421
421
|
plexflow/core/torrents/providers/ext/__pycache__/__init__.cpython-311.pyc,sha256=IPhTUbnFhD-jhXQxUsYyjZHs08ho1cVQk1Fx6gj46_s,186
|
422
|
-
plexflow/core/torrents/providers/ext/__pycache__/__init__.cpython-312.pyc,sha256=
|
423
|
-
plexflow/core/torrents/providers/ext/__pycache__/ext.cpython-312.pyc,sha256=
|
422
|
+
plexflow/core/torrents/providers/ext/__pycache__/__init__.cpython-312.pyc,sha256=psmUYInE7wv50Sl2__yA1jtbSMJtT4f_EhhTe-MQsMM,172
|
423
|
+
plexflow/core/torrents/providers/ext/__pycache__/ext.cpython-312.pyc,sha256=yum8H2HHgU2SF88AQTLBIYcDCs4c-9qNimpd6iOjReg,1702
|
424
424
|
plexflow/core/torrents/providers/ext/__pycache__/extratorrent.cpython-312.pyc,sha256=jFH8XCLnDh4ZNXs_VHoua7yJrOzf4UXE9ocwEvb40uk,1849
|
425
425
|
plexflow/core/torrents/providers/ext/__pycache__/torrentquest.cpython-312.pyc,sha256=mnM8dE7oCUjkjRL_pabx89IAi-KrjOme0WzWyQr1X0w,1835
|
426
426
|
plexflow/core/torrents/providers/ext/__pycache__/tpb.cpython-311.pyc,sha256=e_38p1LN_QMIlb92ffVan46SkaPTaMVYFpys7BzPEaY,1688
|
427
427
|
plexflow/core/torrents/providers/ext/__pycache__/tpb.cpython-312.pyc,sha256=OaCxggRVF0ZZiZmQTxyDZ8CyivJShLfZhLCglhUsXoI,1422
|
428
428
|
plexflow/core/torrents/providers/ext/__pycache__/utils.cpython-311.pyc,sha256=YwB71cMUDX6MxUduWoFXRQXsP_LIRqK4rAVrJMX4v38,6704
|
429
|
-
plexflow/core/torrents/providers/ext/__pycache__/utils.cpython-312.pyc,sha256=
|
429
|
+
plexflow/core/torrents/providers/ext/__pycache__/utils.cpython-312.pyc,sha256=Op0KvfCw-d2uiTyUJSgk6F4ZPqArWTldkeMta9PMvGM,3522
|
430
430
|
plexflow/core/torrents/providers/ext/ext.py,sha256=P_cg14aRlX4MyMZnI4j8bxFH4JnNkow0-wO2Ye9a9-s,759
|
431
431
|
plexflow/core/torrents/providers/ext/utils.py,sha256=5luyin-_yCSxMtlx1W0DAKZaCAyKnBdvfpRmKojvTI4,1445
|
432
432
|
plexflow/core/torrents/providers/extratorrent/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
433
433
|
plexflow/core/torrents/providers/extratorrent/__pycache__/__init__.cpython-311.pyc,sha256=IPhTUbnFhD-jhXQxUsYyjZHs08ho1cVQk1Fx6gj46_s,186
|
434
|
-
plexflow/core/torrents/providers/extratorrent/__pycache__/__init__.cpython-312.pyc,sha256=
|
435
|
-
plexflow/core/torrents/providers/extratorrent/__pycache__/extratorrent.cpython-312.pyc,sha256=
|
434
|
+
plexflow/core/torrents/providers/extratorrent/__pycache__/__init__.cpython-312.pyc,sha256=4LbAGJRxM6nY0F534gvcWHnAKybTf2HOy0Q-nV8JDAY,181
|
435
|
+
plexflow/core/torrents/providers/extratorrent/__pycache__/extratorrent.cpython-312.pyc,sha256=3GTVAL8Cprny9f0-U9evtm-y2sVfiLxSuzvRrKhTDD8,1845
|
436
436
|
plexflow/core/torrents/providers/extratorrent/__pycache__/torrentquest.cpython-312.pyc,sha256=mnM8dE7oCUjkjRL_pabx89IAi-KrjOme0WzWyQr1X0w,1835
|
437
437
|
plexflow/core/torrents/providers/extratorrent/__pycache__/tpb.cpython-311.pyc,sha256=e_38p1LN_QMIlb92ffVan46SkaPTaMVYFpys7BzPEaY,1688
|
438
438
|
plexflow/core/torrents/providers/extratorrent/__pycache__/tpb.cpython-312.pyc,sha256=OaCxggRVF0ZZiZmQTxyDZ8CyivJShLfZhLCglhUsXoI,1422
|
439
439
|
plexflow/core/torrents/providers/extratorrent/__pycache__/utils.cpython-311.pyc,sha256=YwB71cMUDX6MxUduWoFXRQXsP_LIRqK4rAVrJMX4v38,6704
|
440
|
-
plexflow/core/torrents/providers/extratorrent/__pycache__/utils.cpython-312.pyc,sha256=
|
440
|
+
plexflow/core/torrents/providers/extratorrent/__pycache__/utils.cpython-312.pyc,sha256=o6wntAM0FQhr7XMQIaA5WOkvsm-IikFEgLnVzsUQ6SU,3960
|
441
441
|
plexflow/core/torrents/providers/extratorrent/extratorrent.py,sha256=eKfomcjs41jxQfttX7Qwd6b-wmpZ3S4rCcsU_sewtDo,895
|
442
442
|
plexflow/core/torrents/providers/extratorrent/utils.py,sha256=9D0-0Lr6R6gdQb2rsGcSYOqrvt8vlcoLN0GedjumSnk,1608
|
443
443
|
plexflow/core/torrents/providers/eztv/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -449,15 +449,15 @@ plexflow/core/torrents/providers/eztv/eztv.py,sha256=VG_l6UjDztkl-pokmkLuqKsY2Gm
|
|
449
449
|
plexflow/core/torrents/providers/eztv/utils.py,sha256=JaXyqGA0Zc0BhuoC75JkKy4PmN3AO4E-817_BkSY6J4,2850
|
450
450
|
plexflow/core/torrents/providers/piratesparadise/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
451
451
|
plexflow/core/torrents/providers/piratesparadise/__pycache__/__init__.cpython-311.pyc,sha256=IPhTUbnFhD-jhXQxUsYyjZHs08ho1cVQk1Fx6gj46_s,186
|
452
|
-
plexflow/core/torrents/providers/piratesparadise/__pycache__/__init__.cpython-312.pyc,sha256=
|
452
|
+
plexflow/core/torrents/providers/piratesparadise/__pycache__/__init__.cpython-312.pyc,sha256=_I4DbnxABDb3t3qVG6v8Wqv-KMndvKLvKimCnzlBPzc,184
|
453
453
|
plexflow/core/torrents/providers/piratesparadise/__pycache__/extratorrent.cpython-312.pyc,sha256=jFH8XCLnDh4ZNXs_VHoua7yJrOzf4UXE9ocwEvb40uk,1849
|
454
|
-
plexflow/core/torrents/providers/piratesparadise/__pycache__/piratesparadise.cpython-312.pyc,sha256=
|
454
|
+
plexflow/core/torrents/providers/piratesparadise/__pycache__/piratesparadise.cpython-312.pyc,sha256=GJQDccj_-84AOSNpkyCgn46ZmomzRuIEcWhSQq1vOEs,1878
|
455
455
|
plexflow/core/torrents/providers/piratesparadise/__pycache__/therarbg.cpython-312.pyc,sha256=EuY35TKrVDa6nz3JrVqRGURM9AOFZKeX1DPaHIGn5yo,1732
|
456
456
|
plexflow/core/torrents/providers/piratesparadise/__pycache__/torrentquest.cpython-312.pyc,sha256=mnM8dE7oCUjkjRL_pabx89IAi-KrjOme0WzWyQr1X0w,1835
|
457
457
|
plexflow/core/torrents/providers/piratesparadise/__pycache__/tpb.cpython-311.pyc,sha256=e_38p1LN_QMIlb92ffVan46SkaPTaMVYFpys7BzPEaY,1688
|
458
458
|
plexflow/core/torrents/providers/piratesparadise/__pycache__/tpb.cpython-312.pyc,sha256=OaCxggRVF0ZZiZmQTxyDZ8CyivJShLfZhLCglhUsXoI,1422
|
459
459
|
plexflow/core/torrents/providers/piratesparadise/__pycache__/utils.cpython-311.pyc,sha256=YwB71cMUDX6MxUduWoFXRQXsP_LIRqK4rAVrJMX4v38,6704
|
460
|
-
plexflow/core/torrents/providers/piratesparadise/__pycache__/utils.cpython-312.pyc,sha256=
|
460
|
+
plexflow/core/torrents/providers/piratesparadise/__pycache__/utils.cpython-312.pyc,sha256=IskKRx7fzF6aIm1vhrUH2RlqsVugV0OW4V_WT26BoAE,3543
|
461
461
|
plexflow/core/torrents/providers/piratesparadise/piratesparadise.py,sha256=p0V00VKDKijf3B63yVaea2YdRLLIkJAOpPVhTKPglDc,929
|
462
462
|
plexflow/core/torrents/providers/piratesparadise/utils.py,sha256=XIFQZT15e4rOjiI71uPvXPiEz2tNHAZg4jU1hrlrupU,1459
|
463
463
|
plexflow/core/torrents/providers/rarbg2/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -471,11 +471,11 @@ plexflow/core/torrents/providers/rarbg2/rarbg2.py,sha256=SZ9EPO78XQFa6AoajJWy93M
|
|
471
471
|
plexflow/core/torrents/providers/rarbg2/utils.py,sha256=7M96ilgkfMssOhSvB99SgM9Dfgf1sqXEYtzw1I7SCw4,1854
|
472
472
|
plexflow/core/torrents/providers/snowfl/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
473
473
|
plexflow/core/torrents/providers/snowfl/__pycache__/__init__.cpython-311.pyc,sha256=QTE1sD-I-LNDtSuyErNJyVT5WwwI5V4nhk3nzW4c60Q,186
|
474
|
-
plexflow/core/torrents/providers/snowfl/__pycache__/__init__.cpython-312.pyc,sha256=
|
475
|
-
plexflow/core/torrents/providers/snowfl/__pycache__/snowfl.cpython-312.pyc,sha256=
|
474
|
+
plexflow/core/torrents/providers/snowfl/__pycache__/__init__.cpython-312.pyc,sha256=Yd1nxdBnVS9Ac2b5Gp7ZdDidzRsesQg_g7N5-3pdvLA,175
|
475
|
+
plexflow/core/torrents/providers/snowfl/__pycache__/snowfl.cpython-312.pyc,sha256=knrmasp7hDV1BU-h_TC-W7apuQ7pAZoMTP5ocSvPm4E,2185
|
476
476
|
plexflow/core/torrents/providers/snowfl/__pycache__/tpb.cpython-311.pyc,sha256=Pgfz7x-ffcY_ygNbwKFsM-BFn_CRVeH3PEm-TZMlj-s,1662
|
477
477
|
plexflow/core/torrents/providers/snowfl/__pycache__/utils.cpython-311.pyc,sha256=3TI3O9zJmIhY9RL93XgInV0xNnVl0fVQk-fySGGok6k,4241
|
478
|
-
plexflow/core/torrents/providers/snowfl/__pycache__/utils.cpython-312.pyc,sha256=
|
478
|
+
plexflow/core/torrents/providers/snowfl/__pycache__/utils.cpython-312.pyc,sha256=lJ3bN9isXhSXM9i2fqOwYv2rpSqXQiAFZSscwB4Er74,3602
|
479
479
|
plexflow/core/torrents/providers/snowfl/__pycache__/yts.cpython-311.pyc,sha256=aLUsam8hsIOlOZ5n4hOA4TlIrst9d94nzuPGwYNNQmc,2725
|
480
480
|
plexflow/core/torrents/providers/snowfl/__pycache__/yts.cpython-312.pyc,sha256=WLnag2fiEWBRNDRNY_OIAlZvwQd2Sdg5jX-C_Dxx38M,2245
|
481
481
|
plexflow/core/torrents/providers/snowfl/snowfl.py,sha256=PNizfDcJkbeNpmXuw3I1SlTsgRFj9z9zZDxwblDYFAg,1200
|
@@ -491,45 +491,48 @@ plexflow/core/torrents/providers/tgx/context.py,sha256=qXllx-laicYXqE2tDwcJf8W-l
|
|
491
491
|
plexflow/core/torrents/providers/tgx/dump.py,sha256=F9VdUyTT4BnQ7V-ESTAg7rWD4iPoUVg1ufzBWw7dIFw,1356
|
492
492
|
plexflow/core/torrents/providers/tgx/tgx.py,sha256=nt5dIcCrDsF91zds1KOwbCDqyYseuYismyDjhtrMT3k,881
|
493
493
|
plexflow/core/torrents/providers/tgx/utils.py,sha256=gUSgKDRcQvCZie2wo6ADYecs_ltHxqhMTAY3mlMmDGE,1813
|
494
|
+
plexflow/core/torrents/providers/tgxi/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
495
|
+
plexflow/core/torrents/providers/tgxi/tgxi.py,sha256=_tfUQSsZJuJxUl0fjFUBoHODK89VAGrMtg3D9FAy9QU,746
|
496
|
+
plexflow/core/torrents/providers/tgxi/utils.py,sha256=J3Ee6VW72tdonbOJVC-7Pem3rY1BtuulKbIYCTd_E4U,1435
|
494
497
|
plexflow/core/torrents/providers/therarbg/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
495
498
|
plexflow/core/torrents/providers/therarbg/__pycache__/__init__.cpython-311.pyc,sha256=IPhTUbnFhD-jhXQxUsYyjZHs08ho1cVQk1Fx6gj46_s,186
|
496
|
-
plexflow/core/torrents/providers/therarbg/__pycache__/__init__.cpython-312.pyc,sha256=
|
499
|
+
plexflow/core/torrents/providers/therarbg/__pycache__/__init__.cpython-312.pyc,sha256=mdYm0LUBPyfzzWujScP9lhjjUFoqglIgQmGLdGItzW4,177
|
497
500
|
plexflow/core/torrents/providers/therarbg/__pycache__/extratorrent.cpython-312.pyc,sha256=jFH8XCLnDh4ZNXs_VHoua7yJrOzf4UXE9ocwEvb40uk,1849
|
498
|
-
plexflow/core/torrents/providers/therarbg/__pycache__/therarbg.cpython-312.pyc,sha256=
|
501
|
+
plexflow/core/torrents/providers/therarbg/__pycache__/therarbg.cpython-312.pyc,sha256=A-y2k9Na3Ko4QaBWfHhd0hn8DTT_PDdsIGZm-SCgySE,1732
|
499
502
|
plexflow/core/torrents/providers/therarbg/__pycache__/torrentquest.cpython-312.pyc,sha256=mnM8dE7oCUjkjRL_pabx89IAi-KrjOme0WzWyQr1X0w,1835
|
500
503
|
plexflow/core/torrents/providers/therarbg/__pycache__/tpb.cpython-311.pyc,sha256=e_38p1LN_QMIlb92ffVan46SkaPTaMVYFpys7BzPEaY,1688
|
501
504
|
plexflow/core/torrents/providers/therarbg/__pycache__/tpb.cpython-312.pyc,sha256=OaCxggRVF0ZZiZmQTxyDZ8CyivJShLfZhLCglhUsXoI,1422
|
502
505
|
plexflow/core/torrents/providers/therarbg/__pycache__/utils.cpython-311.pyc,sha256=YwB71cMUDX6MxUduWoFXRQXsP_LIRqK4rAVrJMX4v38,6704
|
503
|
-
plexflow/core/torrents/providers/therarbg/__pycache__/utils.cpython-312.pyc,sha256=
|
506
|
+
plexflow/core/torrents/providers/therarbg/__pycache__/utils.cpython-312.pyc,sha256=Fr3JmQNQwfvVIlQOOak8I-Ed8upjb5f-tQxqXVKaUpI,3534
|
504
507
|
plexflow/core/torrents/providers/therarbg/therarbg.py,sha256=aG7lbj98jjPJA0L6RAPxHePHfGMxaW8p18lkROQFL2E,798
|
505
508
|
plexflow/core/torrents/providers/therarbg/utils.py,sha256=J3Ee6VW72tdonbOJVC-7Pem3rY1BtuulKbIYCTd_E4U,1435
|
506
509
|
plexflow/core/torrents/providers/torrentquest/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
507
510
|
plexflow/core/torrents/providers/torrentquest/__pycache__/__init__.cpython-311.pyc,sha256=IPhTUbnFhD-jhXQxUsYyjZHs08ho1cVQk1Fx6gj46_s,186
|
508
|
-
plexflow/core/torrents/providers/torrentquest/__pycache__/__init__.cpython-312.pyc,sha256=
|
509
|
-
plexflow/core/torrents/providers/torrentquest/__pycache__/torrentquest.cpython-312.pyc,sha256=
|
511
|
+
plexflow/core/torrents/providers/torrentquest/__pycache__/__init__.cpython-312.pyc,sha256=n3gMuA_5WoX4Z4nqn-RtOeNiU8DOVKRJnulyLTjcCxo,181
|
512
|
+
plexflow/core/torrents/providers/torrentquest/__pycache__/torrentquest.cpython-312.pyc,sha256=QReyyREMFUZN5dtqG7_BweFgR2gW2eUFALmqeDmveIM,1895
|
510
513
|
plexflow/core/torrents/providers/torrentquest/__pycache__/tpb.cpython-311.pyc,sha256=e_38p1LN_QMIlb92ffVan46SkaPTaMVYFpys7BzPEaY,1688
|
511
514
|
plexflow/core/torrents/providers/torrentquest/__pycache__/tpb.cpython-312.pyc,sha256=OaCxggRVF0ZZiZmQTxyDZ8CyivJShLfZhLCglhUsXoI,1422
|
512
515
|
plexflow/core/torrents/providers/torrentquest/__pycache__/utils.cpython-311.pyc,sha256=YwB71cMUDX6MxUduWoFXRQXsP_LIRqK4rAVrJMX4v38,6704
|
513
|
-
plexflow/core/torrents/providers/torrentquest/__pycache__/utils.cpython-312.pyc,sha256=
|
516
|
+
plexflow/core/torrents/providers/torrentquest/__pycache__/utils.cpython-312.pyc,sha256=t29ZK6G9pRHenI9BWScUOlRPP5ucF__UD3LrLAchqQM,4116
|
514
517
|
plexflow/core/torrents/providers/torrentquest/torrentquest.py,sha256=VxKDfVo9ArkeVuvyWnMR0kCe7REA4SgvLjsZvVN7dNg,925
|
515
518
|
plexflow/core/torrents/providers/torrentquest/utils.py,sha256=RZoJFZpyI-vRDRX-T7tnbeGyb5jdk4UdHyhEgLuwRLM,1664
|
516
519
|
plexflow/core/torrents/providers/tpb/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
517
520
|
plexflow/core/torrents/providers/tpb/__pycache__/__init__.cpython-311.pyc,sha256=IPhTUbnFhD-jhXQxUsYyjZHs08ho1cVQk1Fx6gj46_s,186
|
518
|
-
plexflow/core/torrents/providers/tpb/__pycache__/__init__.cpython-312.pyc,sha256=
|
521
|
+
plexflow/core/torrents/providers/tpb/__pycache__/__init__.cpython-312.pyc,sha256=DG9yNh0oyuZJ4DtCWsVbfKqQaxtIaeeHiKu-PY3taPA,172
|
519
522
|
plexflow/core/torrents/providers/tpb/__pycache__/tpb.cpython-311.pyc,sha256=e_38p1LN_QMIlb92ffVan46SkaPTaMVYFpys7BzPEaY,1688
|
520
|
-
plexflow/core/torrents/providers/tpb/__pycache__/tpb.cpython-312.pyc,sha256=
|
523
|
+
plexflow/core/torrents/providers/tpb/__pycache__/tpb.cpython-312.pyc,sha256=5ab8EsKdFBcPnaoERfOjX_RxRKFwqDPIp6pBLBZrIew,1500
|
521
524
|
plexflow/core/torrents/providers/tpb/__pycache__/utils.cpython-311.pyc,sha256=YwB71cMUDX6MxUduWoFXRQXsP_LIRqK4rAVrJMX4v38,6704
|
522
|
-
plexflow/core/torrents/providers/tpb/__pycache__/utils.cpython-312.pyc,sha256=
|
525
|
+
plexflow/core/torrents/providers/tpb/__pycache__/utils.cpython-312.pyc,sha256=GVi8a1qda_d07qNvSpgCAoCToUUdzyjM5ENxBco2Oek,6474
|
523
526
|
plexflow/core/torrents/providers/tpb/tpb.py,sha256=YB-a3kZ4DUzXkI4TJJszVvoJiX4L0QUJuCo-9iqC6JQ,681
|
524
527
|
plexflow/core/torrents/providers/tpb/utils.py,sha256=M1LdYgMMhFOZ-b12eazCh81tx-KTQMkQ2H21IuhfGOQ,3708
|
525
528
|
plexflow/core/torrents/providers/yts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
526
529
|
plexflow/core/torrents/providers/yts/__pycache__/__init__.cpython-311.pyc,sha256=QTE1sD-I-LNDtSuyErNJyVT5WwwI5V4nhk3nzW4c60Q,186
|
527
|
-
plexflow/core/torrents/providers/yts/__pycache__/__init__.cpython-312.pyc,sha256=
|
530
|
+
plexflow/core/torrents/providers/yts/__pycache__/__init__.cpython-312.pyc,sha256=GoGNHNow6hOKAdWwhK9WyHgxNTOEiM7o4Rach-CgzKg,172
|
528
531
|
plexflow/core/torrents/providers/yts/__pycache__/tpb.cpython-311.pyc,sha256=Pgfz7x-ffcY_ygNbwKFsM-BFn_CRVeH3PEm-TZMlj-s,1662
|
529
532
|
plexflow/core/torrents/providers/yts/__pycache__/utils.cpython-311.pyc,sha256=3TI3O9zJmIhY9RL93XgInV0xNnVl0fVQk-fySGGok6k,4241
|
530
|
-
plexflow/core/torrents/providers/yts/__pycache__/utils.cpython-312.pyc,sha256=
|
533
|
+
plexflow/core/torrents/providers/yts/__pycache__/utils.cpython-312.pyc,sha256=_bUj5V322ioLgAG0tnDwoUMTWHwT8lbeT_9I_F8CPiY,3796
|
531
534
|
plexflow/core/torrents/providers/yts/__pycache__/yts.cpython-311.pyc,sha256=aLUsam8hsIOlOZ5n4hOA4TlIrst9d94nzuPGwYNNQmc,2725
|
532
|
-
plexflow/core/torrents/providers/yts/__pycache__/yts.cpython-312.pyc,sha256=
|
535
|
+
plexflow/core/torrents/providers/yts/__pycache__/yts.cpython-312.pyc,sha256=kVQV_UPW8aVgr2tyJQsGUwagcVc2ez2ErH0C8lr1VnE,2544
|
533
536
|
plexflow/core/torrents/providers/yts/utils.py,sha256=SYV7yohab-gF5Nj67fO8Lkus84-h0OBD3BkIY6U6A1I,1699
|
534
537
|
plexflow/core/torrents/providers/yts/yts.py,sha256=ykwJUm87cJZS2wSe8YKKXncdPNPmIpwtpwtWucCdxWE,1378
|
535
538
|
plexflow/core/torrents/results/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -538,7 +541,7 @@ plexflow/core/torrents/results/__pycache__/__init__.cpython-312.pyc,sha256=R6gHD
|
|
538
541
|
plexflow/core/torrents/results/__pycache__/torrent.cpython-311.pyc,sha256=SxfylbSxF9gpzXvNey4Fv9XdKLjwm0a0LYlGFhg7zAY,7655
|
539
542
|
plexflow/core/torrents/results/__pycache__/torrent.cpython-312.pyc,sha256=z8-iig6fvJcqj8R4C77wPLftziDCGuDg0uh_dlq2Qwc,8481
|
540
543
|
plexflow/core/torrents/results/__pycache__/universal.cpython-312.pyc,sha256=jnFYw7Glwq9jgyOVTn9yDGWWDCgaM91KZgQmHU16KI8,14162
|
541
|
-
plexflow/core/torrents/results/__pycache__/utils.cpython-312.pyc,sha256=
|
544
|
+
plexflow/core/torrents/results/__pycache__/utils.cpython-312.pyc,sha256=9XY-YnS0isahhJFhvGU3TUmOB7j0CS4fkMJd04BV2ao,1136
|
542
545
|
plexflow/core/torrents/results/torrent.py,sha256=hSYlP_0Uktumi4wzXqIJ-WRRi5YAlvrZVhf_treXDrI,5203
|
543
546
|
plexflow/core/torrents/results/universal.py,sha256=ycprOMT1Px8IthmB82YhmnxeNt7P3GAcrOlEkpKoaQk,7706
|
544
547
|
plexflow/core/torrents/results/utils.py,sha256=abiiO_QQYDpA5aMyO8WFPxnGu5sL5xfACezE5bwrnJU,691
|
@@ -574,7 +577,7 @@ plexflow/spiders/tgx/spider.py,sha256=fBDksNThRm9bWjvEKeora6eiUKkxQBdISBaYOXIvjg
|
|
574
577
|
plexflow/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
575
578
|
plexflow/utils/__pycache__/__init__.cpython-311.pyc,sha256=504nnGOR-zQmysuOYNCQZsgbWiSz5kxnIWDWCQqOWnU,164
|
576
579
|
plexflow/utils/__pycache__/__init__.cpython-312.pyc,sha256=je7u5-_Rcwic9Fv9deKonSjBCSx4ytlRJs87KAvLKyk,150
|
577
|
-
plexflow/utils/antibot/__pycache__/human_like_requests.cpython-312.pyc,sha256=
|
580
|
+
plexflow/utils/antibot/__pycache__/human_like_requests.cpython-312.pyc,sha256=rqnB_01Fb2vePEo7axsDfLNLrqQdFplvBnaPtfFsxIg,8568
|
578
581
|
plexflow/utils/antibot/human_like_requests.py,sha256=-UKo2LgJtgp7CYggxPsUT74vfXyYosdbg5f-DzaEgQU,6116
|
579
582
|
plexflow/utils/api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
580
583
|
plexflow/utils/api/__pycache__/__init__.cpython-311.pyc,sha256=h5sUevkaKlWYQz-ECxScMFrE-yT8mYwUQI6CEmHaMe8,168
|
@@ -583,12 +586,12 @@ plexflow/utils/api/context/__pycache__/http.cpython-312.pyc,sha256=US7URBJb5VkC0
|
|
583
586
|
plexflow/utils/api/context/http.py,sha256=TRpEe9_QUEfkVZIMqcAtDJ7Lu5Xl53KyiwBiTHVpbms,4120
|
584
587
|
plexflow/utils/api/rest/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
585
588
|
plexflow/utils/api/rest/__pycache__/__init__.cpython-311.pyc,sha256=WWFZn7TmRF2ToVVOLwB03WIieIZDONWxTGLNPu6Kz-o,173
|
586
|
-
plexflow/utils/api/rest/__pycache__/__init__.cpython-312.pyc,sha256=
|
587
|
-
plexflow/utils/api/rest/__pycache__/antibot_restful.cpython-312.pyc,sha256=
|
588
|
-
plexflow/utils/api/rest/__pycache__/plexful.cpython-312.pyc,sha256
|
589
|
+
plexflow/utils/api/rest/__pycache__/__init__.cpython-312.pyc,sha256=VzXtpbdfDPBTJJiuejTnozRip2Rb8IKEnptjH_pU9gs,159
|
590
|
+
plexflow/utils/api/rest/__pycache__/antibot_restful.cpython-312.pyc,sha256=65gCcN59_E-_CCQjt35FAk_MxX2-uRDQSubGR2-b5j8,3311
|
591
|
+
plexflow/utils/api/rest/__pycache__/plexful.cpython-312.pyc,sha256=G05xdLUP6Wo2yBJ0_ctb2GVmKJHaIf8RRR6KqIYE2UQ,4212
|
589
592
|
plexflow/utils/api/rest/__pycache__/restful.cpython-311.pyc,sha256=0-y7XoIm-MYQj0ZauQmdLlS6H6w5laqEKBsErMkcErE,5502
|
590
|
-
plexflow/utils/api/rest/__pycache__/restful.cpython-312.pyc,sha256=
|
591
|
-
plexflow/utils/api/rest/__pycache__/url_builder.cpython-312.pyc,sha256=
|
593
|
+
plexflow/utils/api/rest/__pycache__/restful.cpython-312.pyc,sha256=UFSmQfdqD59Lq9OsxPHuIR1DW80dkx0G0k-M9rp50N8,3295
|
594
|
+
plexflow/utils/api/rest/__pycache__/url_builder.cpython-312.pyc,sha256=EDukT0MArjYFJbkHQrbTNFlbtlkfDo-FFYc3bDAiULQ,689
|
592
595
|
plexflow/utils/api/rest/antibot_restful.py,sha256=7sxaNsx5jAehyBg1qYfLg45Q_AyijsG8X48_y5oI5Yk,2749
|
593
596
|
plexflow/utils/api/rest/plexful.py,sha256=H9_hm08zpBajLE46E7OJGdTUwWJvFivFbYpzm2U5cVQ,3202
|
594
597
|
plexflow/utils/api/rest/restful.py,sha256=vk7TjRuvXcs4c3MgjU38IPDhVy9GQ2y-WZyJAvEbT88,2405
|
@@ -622,7 +625,7 @@ plexflow/utils/hooks/__pycache__/redis.cpython-312.pyc,sha256=gR1Wu6-9UHfu_Bb9Wh
|
|
622
625
|
plexflow/utils/hooks/http.py,sha256=qyQNAx0RK1XfDgn71SKlxKJ_466j39VgXUEfnw8L9YY,3994
|
623
626
|
plexflow/utils/hooks/postgresql.py,sha256=Ixhw6XNtutXVGPlcYB1g7SJkzHo8EkMPD5XFpZsd5cQ,4002
|
624
627
|
plexflow/utils/hooks/redis.py,sha256=ZvrSgM7s-OgRLIb8uV8rm6XjF40rLkoPOPABEmuKdNk,4228
|
625
|
-
plexflow/utils/image/__pycache__/storage.cpython-312.pyc,sha256=
|
628
|
+
plexflow/utils/image/__pycache__/storage.cpython-312.pyc,sha256=wpDVCg1O9Qnp1VfpaPwRU1LKcGto_VEB2C71L_uZJEU,1579
|
626
629
|
plexflow/utils/image/storage.py,sha256=RlV7D0aGqoG583xP8YCC7TK5YmW8rFff2NwvtOzy5DE,1168
|
627
630
|
plexflow/utils/imdb/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
628
631
|
plexflow/utils/imdb/__pycache__/__init__.cpython-311.pyc,sha256=Om33PdqDky-6oW50l1mrHRNKJISmC1j9wBn5OdA0Nxs,169
|
@@ -642,17 +645,17 @@ plexflow/utils/retry/__pycache__/utils.cpython-311.pyc,sha256=aMITcG_0hVW031sGoe
|
|
642
645
|
plexflow/utils/retry/__pycache__/utils.cpython-312.pyc,sha256=yYgzVZ7PBvC7qG6CnhLoVmkUm8g77VTzutHm77OOH98,2228
|
643
646
|
plexflow/utils/retry/utils.py,sha256=wqdtkxSBT9dYVgWGKSYxuEiZHBVmfOjzVxXDOweVuoo,1784
|
644
647
|
plexflow/utils/strings/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
645
|
-
plexflow/utils/strings/__pycache__/__init__.cpython-312.pyc,sha256=
|
648
|
+
plexflow/utils/strings/__pycache__/__init__.cpython-312.pyc,sha256=atTiIOHRHIt3rlAFmo4TSb0b-4ta85Nw767kksMXTd8,158
|
646
649
|
plexflow/utils/strings/__pycache__/filesize.cpython-311.pyc,sha256=X9fexslLrSygnwySEnqFTN8b7LxF-W_WeVwpxTlf-HM,878
|
647
|
-
plexflow/utils/strings/__pycache__/filesize.cpython-312.pyc,sha256=
|
650
|
+
plexflow/utils/strings/__pycache__/filesize.cpython-312.pyc,sha256=cBx5vnx7qHqfmuuAC54pE1VkO1AWBx-tgJ6wPQvfAzA,1871
|
648
651
|
plexflow/utils/strings/__pycache__/json_extract.cpython-312.pyc,sha256=LE-dU05XzIsJRC6iQh1LodV2dcA0rWcgUktxRGCq76U,14966
|
649
|
-
plexflow/utils/strings/__pycache__/language.cpython-312.pyc,sha256=
|
650
|
-
plexflow/utils/strings/__pycache__/sanitize.cpython-312.pyc,sha256=
|
652
|
+
plexflow/utils/strings/__pycache__/language.cpython-312.pyc,sha256=RBsfDrWFmGydji7sauH2iWswv6NqXs_qDT-lsp513hU,560
|
653
|
+
plexflow/utils/strings/__pycache__/sanitize.cpython-312.pyc,sha256=al-VD4Gphby-bd-En36L1wjcK1LCrrOMxFGN-XrmS4w,599
|
651
654
|
plexflow/utils/strings/filesize.py,sha256=mLVd0xqIEzAif5Tn_PyCddFmUPXPNnEbLhBNJTsgOvs,1547
|
652
655
|
plexflow/utils/strings/json_extract.py,sha256=590oY1LMnbe9COm3fD6z74OtOzxeXd3Hrf06afhHOvc,14884
|
653
656
|
plexflow/utils/strings/language.py,sha256=J9-wqmCdxf9Ws5_X1tV4vX4d7AGkKci0eaBE4Lit0j0,269
|
654
657
|
plexflow/utils/strings/sanitize.py,sha256=V-58iC4-0xIb-dgK595JbPNyyB9jZbY1xHMazXnQyuI,274
|
655
|
-
plexflow/utils/subtitle/__pycache__/search.cpython-312.pyc,sha256=
|
658
|
+
plexflow/utils/subtitle/__pycache__/search.cpython-312.pyc,sha256=RiMTyALG74DJn67xhCvZ2ofXBOTyetMOU3Tq_bVdbts,3554
|
656
659
|
plexflow/utils/subtitle/search.py,sha256=HW_JOrj-cpRrVnxWh56XjRWhb98E73V1V5QHCq2y7CM,2441
|
657
660
|
plexflow/utils/tasks/__pycache__/decorators.cpython-311.pyc,sha256=8zuAsEfYLEBQQ4DGKqkx-JFCjd73kGhAiPblBNFa2cQ,1675
|
658
661
|
plexflow/utils/tasks/__pycache__/tasks.cpython-311.pyc,sha256=8RRMTHAy-t6yW0rlDX9wpZyO-9Cg4SQoD-NVasL94SQ,1670
|
@@ -664,25 +667,28 @@ plexflow/utils/thread_safe/safe_list.py,sha256=BScIH27Gh84Nb7SZxmfeZ9vF2hh75yCml
|
|
664
667
|
plexflow/utils/thread_safe/safe_set.py,sha256=wTlR3RK6QShRFdij1-HOT2YUAtONivySQ1wfWRL-7pU,1844
|
665
668
|
plexflow/utils/torrent/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
666
669
|
plexflow/utils/torrent/__pycache__/__init__.cpython-311.pyc,sha256=nWgaKrMbrQpiPPcpuHy-B-TAMwt8w5iofUZ2ba2SRss,172
|
667
|
-
plexflow/utils/torrent/__pycache__/__init__.cpython-312.pyc,sha256=
|
670
|
+
plexflow/utils/torrent/__pycache__/__init__.cpython-312.pyc,sha256=o3dvDnTCgvMrnZhFYAcZi73nOeGap4LAD8b7HjDWWb8,158
|
668
671
|
plexflow/utils/torrent/__pycache__/analyze.cpython-312.pyc,sha256=bkmS6HF05DdGSuZHpr-K3n0ncsooMqUzrUbNpTMS3Zo,6926
|
669
|
-
plexflow/utils/torrent/__pycache__/files.cpython-312.pyc,sha256=
|
672
|
+
plexflow/utils/torrent/__pycache__/files.cpython-312.pyc,sha256=S4-DaMpZ37kVsLj41X-2dhgVR07ulmZDKq6qrQ7DemM,3928
|
670
673
|
plexflow/utils/torrent/__pycache__/hash.cpython-311.pyc,sha256=RDp8Sv5NLkUw0r6w6JD8rOH1ksN3NnTv4DzhZuZBouA,2284
|
671
|
-
plexflow/utils/torrent/__pycache__/hash.cpython-312.pyc,sha256=
|
674
|
+
plexflow/utils/torrent/__pycache__/hash.cpython-312.pyc,sha256=WopjMrIXzIakvSpjMBokBArQ8j7Yy4cu0yXdMITdU2k,3619
|
672
675
|
plexflow/utils/torrent/analyze.py,sha256=4f71sz1JZSgOAFdJY31dHomFNCUPlyxft7P3ffrWroU,4902
|
673
|
-
plexflow/utils/torrent/
|
674
|
-
plexflow/utils/torrent/
|
675
|
-
plexflow/utils/torrent/extract/__pycache__/
|
676
|
-
plexflow/utils/torrent/extract/__pycache__/
|
676
|
+
plexflow/utils/torrent/compare/__pycache__/with_subtitles.cpython-312.pyc,sha256=2XV3manUcmu9gi6V9bsYv96hFclpxIbX4xkHzyTkvag,3554
|
677
|
+
plexflow/utils/torrent/compare/with_subtitles.py,sha256=7qT8E7utesCCLqyObFlctbJkD6g8ijlXfeTfm5Ei2xY,2835
|
678
|
+
plexflow/utils/torrent/extract/__pycache__/common.cpython-312.pyc,sha256=r0g2SaOUKmtQVIM89z6BpUXI0SEMYvGX_HmBQoezWn0,1872
|
679
|
+
plexflow/utils/torrent/extract/__pycache__/ext.cpython-312.pyc,sha256=Xkuv_NW2TReyiekSGgL_Az_B42fWyuGsZN5lbgOlAxM,272178
|
680
|
+
plexflow/utils/torrent/extract/__pycache__/extratorrent.cpython-312.pyc,sha256=MgzrUiRepe3xY0EbdyXv368fLM-1HM2mcXTQs4Bdo_4,3442
|
681
|
+
plexflow/utils/torrent/extract/__pycache__/piratesparadise.cpython-312.pyc,sha256=bJTs7wN0cVm_iBviuLbWi1ecT0USM4GJP_ky9peNUjg,2621
|
677
682
|
plexflow/utils/torrent/extract/__pycache__/tgx.cpython-312.pyc,sha256=rH61J6FQJZ97FC8ZwEDKNwU6lYOMenU1QvDYAD-bEwM,4659
|
678
|
-
plexflow/utils/torrent/extract/__pycache__/therarbg.cpython-312.pyc,sha256=
|
679
|
-
plexflow/utils/torrent/extract/__pycache__/torrentquest.cpython-312.pyc,sha256=
|
683
|
+
plexflow/utils/torrent/extract/__pycache__/therarbg.cpython-312.pyc,sha256=gkOguMpZqK0whTPBLamoljYVBZ6gXvyau3Rbv4Y5JF8,7872
|
684
|
+
plexflow/utils/torrent/extract/__pycache__/torrentquest.cpython-312.pyc,sha256=Hwax3WNMFF0NS2z0JbA2HPhY2L-3ges6QLx5j9g2wZM,7866
|
680
685
|
plexflow/utils/torrent/extract/common.py,sha256=DtEe7aUfE96pwWnVl0aUOlRBq2ps36tEfealFZp70hg,1216
|
681
686
|
plexflow/utils/torrent/extract/ext.py,sha256=3jmBfR1zL8XgdhR1BVZWRmH7TN68gFcX5K799bjwN0o,271641
|
682
687
|
plexflow/utils/torrent/extract/extratorrent.py,sha256=G_PlvT1CcMiq96q3BMsSwMg-BEjD3kp0IBB6up8zoK4,2339
|
683
688
|
plexflow/utils/torrent/extract/kat.py,sha256=-pQND_1forno9wn5w-Kua7PJFjKpDH_HcYvMIOJ8kA0,91269
|
684
689
|
plexflow/utils/torrent/extract/piratesparadise.py,sha256=yAlMDRdtmAZvHlo-rvMNDZEkH4HCyXDe_DMhV5SATNM,1912
|
685
690
|
plexflow/utils/torrent/extract/tgx.py,sha256=EMvuK5LcuukTaDgTsSU-9fP4vYDU931957JnyLnhCcY,3223
|
691
|
+
plexflow/utils/torrent/extract/tgxi.py,sha256=wkqlPKqfhBcdMyH1wzxIWq1CSLYrAqvSVSb39JDC884,2068
|
686
692
|
plexflow/utils/torrent/extract/therarbg.py,sha256=q97dJCmpnzKJcrhlOwOWx-ovMCk5qVY1HCXa4RAvrao,6527
|
687
693
|
plexflow/utils/torrent/extract/torrentquest.py,sha256=gQn9GanFM5SXvpwjcyRu0XgTZ23KTJ_FeHIsanGl2WI,6868
|
688
694
|
plexflow/utils/torrent/files.py,sha256=XJxvFedZQb8H-wSzNIZI_2nUOT-pqr6MwgYcoty0yA0,2285
|
@@ -698,7 +704,7 @@ plexflow/utils/video/__pycache__/audio.cpython-312.pyc,sha256=vXBnJwWgTDFdixMBs-
|
|
698
704
|
plexflow/utils/video/__pycache__/subtitle.cpython-312.pyc,sha256=PCjpCLydGXaRsQy6cikhgsEs8WlComfOoYPiLFqfVMA,2515
|
699
705
|
plexflow/utils/video/audio.py,sha256=tJ_lNwcjVuBQYD5cYOlXpr__eh8-hnReIgNRgIYOpqo,3380
|
700
706
|
plexflow/utils/video/subtitle.py,sha256=qPvvBjlPj0fynJJvGJgGeKt9ey26R-cF6EoLaYt9iXU,1333
|
701
|
-
plexflow-0.0.
|
702
|
-
plexflow-0.0.
|
703
|
-
plexflow-0.0.
|
704
|
-
plexflow-0.0.
|
707
|
+
plexflow-0.0.120.dist-info/METADATA,sha256=mgWquex8fayOpHr1-9Pyzsg4mLAy2_UFhZ5JvaCxIvU,3140
|
708
|
+
plexflow-0.0.120.dist-info/WHEEL,sha256=IYZQI976HJqqOpQU6PHkJ8fb3tMNBFjg-Cn-pwAbaFM,88
|
709
|
+
plexflow-0.0.120.dist-info/entry_points.txt,sha256=9RJC3ikOQORHNOn573EdwJOBUnFU_4EGHbtNUM5pjjY,1557
|
710
|
+
plexflow-0.0.120.dist-info/RECORD,,
|
@@ -22,6 +22,7 @@ redis_hook=scripts.redis.redis_hook:main
|
|
22
22
|
refresh=scripts.plex.library.refresh:main
|
23
23
|
schedule=scripts.downloads.qbit.schedule:main
|
24
24
|
subscribe_hello_world=scripts.kafka.subscribe_hello_world:main
|
25
|
+
subtitle_compare=scripts.torrents.subtitle_comparison:main
|
25
26
|
tgx_context=scripts.torrents.tgx_context:main
|
26
27
|
tgx_spider=scripts.spiders.tgx_spider:main
|
27
28
|
torrentquest=scripts.torrents.torrentquest:main
|
File without changes
|