kabigon 0.1.0__py3-none-any.whl → 0.2.1__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.
kabigon/__init__.py CHANGED
@@ -8,7 +8,6 @@ from .cloudscraper import CloudscraperLoader
8
8
  from .httpx import HttpxLoader
9
9
  from .loader import Loader
10
10
  from .pdf import PDFLoader
11
- from .pipeline import PipelineLoader
12
11
  from .playwright import PlaywrightLoader
13
12
  from .reel import ReelLoader
14
13
  from .singlefile import SinglefileLoader
kabigon/cli.py CHANGED
@@ -1,11 +1,29 @@
1
1
  import click
2
2
  from rich import print
3
3
 
4
- from .pipeline import PipelineLoader
4
+ from .cloudscraper import CloudscraperLoader
5
+ from .compose import Compose
6
+ from .httpx import HttpxLoader
7
+ from .pdf import PDFLoader
8
+ from .reel import ReelLoader
9
+ from .singlefile import SinglefileLoader
10
+ from .youtube import YoutubeLoader
11
+ from .ytdlp import YtdlpLoader
5
12
 
6
13
 
7
14
  @click.command()
8
15
  @click.argument("url", type=click.STRING)
9
16
  def main(url: str) -> None:
10
- loader = PipelineLoader().load(url)
11
- print(loader)
17
+ loader = Compose(
18
+ [
19
+ YoutubeLoader(),
20
+ ReelLoader(),
21
+ YtdlpLoader(),
22
+ PDFLoader(),
23
+ CloudscraperLoader(),
24
+ HttpxLoader(),
25
+ SinglefileLoader(),
26
+ ]
27
+ )
28
+ result = loader.load(url)
29
+ print(result)
@@ -3,15 +3,8 @@ from urllib.parse import urlunparse
3
3
 
4
4
  from loguru import logger
5
5
 
6
- from .cloudscraper import CloudscraperLoader
7
- from .httpx import HttpxLoader
8
6
  from .loader import Loader
9
7
  from .loader import LoaderError
10
- from .pdf import PDFLoader
11
- from .reel import ReelLoader
12
- from .singlefile import SinglefileLoader
13
- from .youtube import YoutubeLoader
14
- from .ytdlp import YtdlpLoader
15
8
 
16
9
  REPLACEMENTS = {
17
10
  "api.fxtwitter.com": [
@@ -35,17 +28,9 @@ def replace_domain(url: str) -> str:
35
28
  return url
36
29
 
37
30
 
38
- class PipelineLoader(Loader):
39
- def __init__(self) -> None:
40
- self.loaders: list[Loader] = [
41
- YoutubeLoader(),
42
- ReelLoader(),
43
- YtdlpLoader(),
44
- PDFLoader(),
45
- CloudscraperLoader(),
46
- HttpxLoader(),
47
- SinglefileLoader(),
48
- ]
31
+ class Compose(Loader):
32
+ def __init__(self, loaders: list[Loader]) -> None:
33
+ self.loaders = loaders
49
34
 
50
35
  def load(self, url: str) -> str:
51
36
  url = replace_domain(url)
kabigon/loader.py CHANGED
@@ -1,4 +1,7 @@
1
1
  class Loader:
2
+ def __call__(self, url: str) -> str:
3
+ return self.load(url)
4
+
2
5
  def load(self, url: str) -> str:
3
6
  raise NotImplementedError
4
7
 
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: kabigon
3
- Version: 0.1.0
3
+ Version: 0.2.1
4
4
  Author-email: narumi <toucans-cutouts0f@icloud.com>
5
5
  License-File: LICENSE
6
- Requires-Python: >=3.12
6
+ Requires-Python: >=3.11
7
7
  Requires-Dist: click>=8.1.8
8
8
  Requires-Dist: cloudscraper>=1.2.71
9
9
  Requires-Dist: httpx>=0.28.1
@@ -1,10 +1,10 @@
1
- kabigon/__init__.py,sha256=XFwiwCa3r17Ehn4_unnWmTXZ54EFQRRTvNaCjE2f5I4,553
2
- kabigon/cli.py,sha256=eOto76gMuHSqpn9XuJsoUY1sG-lDb2Ny7DLbhSyqWAI,221
1
+ kabigon/__init__.py,sha256=YYYmOGC9dy33sM_wXNohETRaJVO-cyosvmteEsGvCCk,516
2
+ kabigon/cli.py,sha256=7qHklIhYUZ4E78C9MIB16AoVIYt2xLJS0Pz8sr51YPk,690
3
3
  kabigon/cloudscraper.py,sha256=viaIWATsS8nD9HN0RfBiveUHuL012OjuaKlKwLEteGw,403
4
+ kabigon/compose.py,sha256=IqNm-Cxl6e8u7X9v5SoG7cjxOWCMIcSZG1lDVNNAfo8,1433
4
5
  kabigon/httpx.py,sha256=SfhaJXNKlFOwWs_Eeadiegi5wNvZV0RX7lqQwR8nYGo,667
5
- kabigon/loader.py,sha256=_iRrjwW9SPWnqnsl8QFB1uEgh4Ed27zXio6GEl98b5A,126
6
+ kabigon/loader.py,sha256=cV9ZqcWaNtS2WTDpgyNYK2kX5Cu1ZC-Sq-qS3PpPnJQ,198
6
7
  kabigon/pdf.py,sha256=9Oi_ZP7D0LLWs2D8KO3omRld1nYyhEbQMForZUw9YZg,1548
7
- kabigon/pipeline.py,sha256=XCjZMpOrbIfNcL6hTShvBHpsyOkKymvNRirp6PVIIDA,1874
8
8
  kabigon/playwright.py,sha256=0CkSDY90i7PHKxrJ6Zwad_NDCy5TPyCjeFvLrQuZXFU,1154
9
9
  kabigon/py.typed,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
10
10
  kabigon/reel.py,sha256=dkWXG2nBhIt0DpGJzevkIrRKLqJh_03-yrg_rjf6vnY,828
@@ -12,8 +12,8 @@ kabigon/singlefile.py,sha256=2nTCTFgW5Gp3l0ExaVh2foUDVSgLaAssDp3tBoQ1MhY,1860
12
12
  kabigon/utils.py,sha256=eNTLtHLSB2erDac2HH3jWemgfr8Ou_ozwVb8h9BD-4g,922
13
13
  kabigon/youtube.py,sha256=_wdKvRRAMrYnv3rUhkd_6JuOGCuQClYpj1UlVeYeojc,2615
14
14
  kabigon/ytdlp.py,sha256=kG1fXqU650otOWespjOSkGK_-jk1wO-sWiR60_UPJxY,3125
15
- kabigon-0.1.0.dist-info/METADATA,sha256=rtCDMxACLbzTuTKc2Yq4kPkteYSUjtbiyeVZHOmARmo,641
16
- kabigon-0.1.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
17
- kabigon-0.1.0.dist-info/entry_points.txt,sha256=O3FYAO9w-NQvlGMJrBvtrnGHSK2QkUnQBTa30YXRbVE,45
18
- kabigon-0.1.0.dist-info/licenses/LICENSE,sha256=H2T3_RTgmcngMeC7p_SXT3GwBLkd2DaNgAZuxulcfiA,1066
19
- kabigon-0.1.0.dist-info/RECORD,,
15
+ kabigon-0.2.1.dist-info/METADATA,sha256=Gl6G7OLsiSdjNSA0T7V0rgTN3QX40gSea-TB-HRGGPE,641
16
+ kabigon-0.2.1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
17
+ kabigon-0.2.1.dist-info/entry_points.txt,sha256=O3FYAO9w-NQvlGMJrBvtrnGHSK2QkUnQBTa30YXRbVE,45
18
+ kabigon-0.2.1.dist-info/licenses/LICENSE,sha256=H2T3_RTgmcngMeC7p_SXT3GwBLkd2DaNgAZuxulcfiA,1066
19
+ kabigon-0.2.1.dist-info/RECORD,,