quasarr 1.26.5__tar.gz → 1.26.7__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.

Potentially problematic release.


This version of quasarr might be problematic. Click here for more details.

Files changed (83) hide show
  1. {quasarr-1.26.5 → quasarr-1.26.7}/PKG-INFO +1 -1
  2. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/__init__.py +7 -27
  3. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/api/arr/__init__.py +2 -1
  4. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/providers/version.py +1 -1
  5. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr.egg-info/PKG-INFO +1 -1
  6. {quasarr-1.26.5 → quasarr-1.26.7}/LICENSE +0 -0
  7. {quasarr-1.26.5 → quasarr-1.26.7}/README.md +0 -0
  8. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/api/__init__.py +0 -0
  9. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/api/captcha/__init__.py +0 -0
  10. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/api/config/__init__.py +0 -0
  11. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/api/sponsors_helper/__init__.py +0 -0
  12. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/api/statistics/__init__.py +0 -0
  13. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/downloads/__init__.py +0 -0
  14. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/downloads/linkcrypters/__init__.py +0 -0
  15. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/downloads/linkcrypters/al.py +0 -0
  16. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/downloads/linkcrypters/filecrypt.py +0 -0
  17. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/downloads/linkcrypters/hide.py +0 -0
  18. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/downloads/packages/__init__.py +0 -0
  19. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/downloads/sources/__init__.py +0 -0
  20. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/downloads/sources/al.py +0 -0
  21. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/downloads/sources/by.py +0 -0
  22. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/downloads/sources/dd.py +0 -0
  23. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/downloads/sources/dj.py +0 -0
  24. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/downloads/sources/dl.py +0 -0
  25. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/downloads/sources/dt.py +0 -0
  26. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/downloads/sources/dw.py +0 -0
  27. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/downloads/sources/he.py +0 -0
  28. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/downloads/sources/mb.py +0 -0
  29. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/downloads/sources/nk.py +0 -0
  30. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/downloads/sources/nx.py +0 -0
  31. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/downloads/sources/sf.py +0 -0
  32. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/downloads/sources/sj.py +0 -0
  33. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/downloads/sources/sl.py +0 -0
  34. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/downloads/sources/wd.py +0 -0
  35. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/downloads/sources/wx.py +0 -0
  36. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/providers/__init__.py +0 -0
  37. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/providers/cloudflare.py +0 -0
  38. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/providers/html_images.py +0 -0
  39. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/providers/html_templates.py +0 -0
  40. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/providers/imdb_metadata.py +0 -0
  41. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/providers/log.py +0 -0
  42. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/providers/myjd_api.py +0 -0
  43. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/providers/notifications.py +0 -0
  44. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/providers/obfuscated.py +0 -0
  45. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/providers/sessions/__init__.py +0 -0
  46. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/providers/sessions/al.py +0 -0
  47. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/providers/sessions/dd.py +0 -0
  48. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/providers/sessions/dl.py +0 -0
  49. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/providers/sessions/nx.py +0 -0
  50. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/providers/shared_state.py +0 -0
  51. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/providers/statistics.py +0 -0
  52. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/providers/web_server.py +0 -0
  53. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/search/__init__.py +0 -0
  54. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/search/sources/__init__.py +0 -0
  55. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/search/sources/al.py +0 -0
  56. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/search/sources/by.py +0 -0
  57. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/search/sources/dd.py +0 -0
  58. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/search/sources/dj.py +0 -0
  59. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/search/sources/dl.py +0 -0
  60. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/search/sources/dt.py +0 -0
  61. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/search/sources/dw.py +0 -0
  62. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/search/sources/fx.py +0 -0
  63. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/search/sources/he.py +0 -0
  64. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/search/sources/mb.py +0 -0
  65. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/search/sources/nk.py +0 -0
  66. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/search/sources/nx.py +0 -0
  67. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/search/sources/sf.py +0 -0
  68. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/search/sources/sj.py +0 -0
  69. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/search/sources/sl.py +0 -0
  70. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/search/sources/wd.py +0 -0
  71. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/search/sources/wx.py +0 -0
  72. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/storage/__init__.py +0 -0
  73. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/storage/config.py +0 -0
  74. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/storage/setup.py +0 -0
  75. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr/storage/sqlite_database.py +0 -0
  76. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr.egg-info/SOURCES.txt +0 -0
  77. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr.egg-info/dependency_links.txt +0 -0
  78. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr.egg-info/entry_points.txt +0 -0
  79. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr.egg-info/not-zip-safe +0 -0
  80. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr.egg-info/requires.txt +0 -0
  81. {quasarr-1.26.5 → quasarr-1.26.7}/quasarr.egg-info/top_level.txt +0 -0
  82. {quasarr-1.26.5 → quasarr-1.26.7}/setup.cfg +0 -0
  83. {quasarr-1.26.5 → quasarr-1.26.7}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: quasarr
3
- Version: 1.26.5
3
+ Version: 1.26.7
4
4
  Summary: Quasarr connects JDownloader with Radarr, Sonarr and LazyLibrarian. It also decrypts links protected by CAPTCHAs.
5
5
  Home-page: https://github.com/rix1337/Quasarr
6
6
  Author: rix1337
@@ -10,8 +10,9 @@ import socket
10
10
  import sys
11
11
  import tempfile
12
12
  import time
13
- from urllib.parse import urlparse
13
+ from urllib.parse import urlparse, urljoin, parse_qs
14
14
 
15
+ import dukpy
15
16
  import requests
16
17
 
17
18
  from quasarr.api import get_api
@@ -117,8 +118,7 @@ def run():
117
118
  print("\n===== Hostnames =====")
118
119
  try:
119
120
  if arguments.hostnames:
120
- hostnames_link = make_raw_pastebin_link(arguments.hostnames)
121
-
121
+ hostnames_link = arguments.hostnames
122
122
  if is_valid_url(hostnames_link):
123
123
  print(f"Extracting hostnames from {hostnames_link}...")
124
124
  allowed_keys = supported_hostnames
@@ -391,31 +391,9 @@ def check_flaresolverr(shared_state, flaresolverr_url):
391
391
  print(f"Failed to connect to FlareSolverr: {e}")
392
392
  return False
393
393
 
394
-
395
- def make_raw_pastebin_link(url):
396
- """
397
- Takes a Pastebin URL and ensures it is a raw link.
398
- If it's not a Pastebin URL, it returns the URL unchanged.
399
- """
400
- # Check if the URL is already a raw Pastebin link
401
- if re.match(r"https?://(?:www\.)?pastebin\.com/raw/\w+", url):
402
- return url # Already raw, return as is
403
-
404
- # Check if the URL is a standard Pastebin link
405
- pastebin_pattern = r"https?://(?:www\.)?pastebin\.com/(\w+)"
406
- match = re.match(pastebin_pattern, url)
407
-
408
- if match:
409
- paste_id = match.group(1)
410
- print(f"The link you provided is not a raw Pastebin link. Attempting to convert it to a raw link from {url}...")
411
- return f"https://pastebin.com/raw/{paste_id}"
412
-
413
- return url # Not a Pastebin link, return unchanged
414
-
415
-
416
394
  def is_valid_url(url):
417
- if "https://pastebin.com/raw/eX4Mpl3" in url:
418
- print("Example URL detected. Please provide a valid URL found on pastebin or another public site!")
395
+ if "/raw/eX4Mpl3" in url:
396
+ print("Example URL detected. Please provide a valid URL found on pastebin or any other public site!")
419
397
  return False
420
398
 
421
399
  parsed = urlparse(url)
@@ -461,6 +439,8 @@ def extract_kv_pairs(input_text, allowed_keys):
461
439
  if match:
462
440
  key, value = match.groups()
463
441
  kv_pairs[key] = value
442
+ elif "[Hostnames]" in line:
443
+ pass
464
444
  else:
465
445
  print(f"Skipping line because it does not contain any supported hostname: {line}")
466
446
 
@@ -353,7 +353,8 @@ def setup_arr_routes(app):
353
353
  <enclosure url="{release.get("link", "")}" length="{release.get("size", 0)}" type="application/x-nzb" />
354
354
  </item>'''
355
355
 
356
- if not items:
356
+ is_feed_request = not getattr(request.query, 'imdbid', '')
357
+ if is_feed_request and not items:
357
358
  items = f'''
358
359
  <item>
359
360
  <title>No results found</title>
@@ -8,7 +8,7 @@ import requests
8
8
 
9
9
 
10
10
  def get_version():
11
- return "1.26.5"
11
+ return "1.26.7"
12
12
 
13
13
 
14
14
  def get_latest_version():
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: quasarr
3
- Version: 1.26.5
3
+ Version: 1.26.7
4
4
  Summary: Quasarr connects JDownloader with Radarr, Sonarr and LazyLibrarian. It also decrypts links protected by CAPTCHAs.
5
5
  Home-page: https://github.com/rix1337/Quasarr
6
6
  Author: rix1337
File without changes
File without changes
File without changes
File without changes