Ver código fonte

fix: Add condition to avoid breaking the `add` command

Cristian 5 anos atrás
pai
commit
3afb2401bc
2 arquivos alterados com 7 adições e 4 exclusões
  1. 6 3
      archivebox/extractors/__init__.py
  2. 1 1
      archivebox/main.py

+ 6 - 3
archivebox/extractors/__init__.py

@@ -123,7 +123,7 @@ def archive_link(link: Link, overwrite: bool=False, methods: Optional[Iterable[s
 
 
 
 
 @enforce_types
 @enforce_types
-def archive_links(links: List[Link], overwrite: bool=False, methods: Optional[Iterable[str]]=None, out_dir: Optional[str]=None, skip_index: bool=False) -> List[Link]:
+def archive_links(links: List[Link], overwrite: bool=False, methods: Optional[Iterable[str]]=None, out_dir: Optional[str]=None, skip_index: bool=False, oneshot: bool=False) -> List[Link]:
     if not links:
     if not links:
         return []
         return []
 
 
@@ -132,8 +132,11 @@ def archive_links(links: List[Link], overwrite: bool=False, methods: Optional[It
     link: Link = links[0]
     link: Link = links[0]
     try:
     try:
         for idx, link in enumerate(links):
         for idx, link in enumerate(links):
-            link_out_dir = out_dir or link.link_dir
-            archive_link(link, overwrite=overwrite, methods=methods, link_out_dir=out_dir, skip_index=skip_index)
+            if oneshot:
+                link_out_dir = out_dir or link.link_dir
+            else:
+                link_out_dir = link.link_dir
+            archive_link(link, overwrite=overwrite, methods=methods, out_dir=link_out_dir, skip_index=skip_index)
     except KeyboardInterrupt:
     except KeyboardInterrupt:
         log_archiving_paused(len(links), idx, link.timestamp)
         log_archiving_paused(len(links), idx, link.timestamp)
         raise SystemExit(0)
         raise SystemExit(0)

+ 1 - 1
archivebox/main.py

@@ -498,7 +498,7 @@ def status(out_dir: str=OUTPUT_DIR) -> None:
 def oneshot(url: str, out_dir: str=OUTPUT_DIR):
 def oneshot(url: str, out_dir: str=OUTPUT_DIR):
     oneshot_links, _ = parse_links_memory([url])
     oneshot_links, _ = parse_links_memory([url])
     oneshot_links, _ = dedupe_links([], oneshot_links)
     oneshot_links, _ = dedupe_links([], oneshot_links)
-    archive_links(oneshot_links, out_dir=out_dir, skip_index=True)
+    archive_links(oneshot_links, out_dir=out_dir, skip_index=True, oneshot=True)
     return oneshot_links
     return oneshot_links
 
 
 @enforce_types
 @enforce_types