Browse Source

refactor: screenshot uses snapshot instead of link

Cristian 5 years ago
parent
commit
6230984cb3
1 changed files with 8 additions and 6 deletions
  1. 8 6
      archivebox/extractors/screenshot.py

+ 8 - 6
archivebox/extractors/screenshot.py

@@ -3,6 +3,8 @@ __package__ = 'archivebox.extractors'
 from pathlib import Path
 from typing import Optional
 
+from django.db.models import Model
+
 from ..index.schema import Link, ArchiveResult, ArchiveOutput, ArchiveError
 from ..system import run, chmod_file
 from ..util import (
@@ -20,9 +22,9 @@ from ..logging_util import TimedProgress
 
 
 @enforce_types
-def should_save_screenshot(link: Link, out_dir: Optional[Path]=None) -> bool:
-    out_dir = out_dir or Path(link.link_dir)
-    if is_static_file(link.url):
+def should_save_screenshot(snapshot: Model, out_dir: Optional[Path]=None) -> bool:
+    out_dir = out_dir or Path(snapshot.snapshot_dir)
+    if is_static_file(snapshot.url):
         return False
     
     if (out_dir / "screenshot.png").exists():
@@ -31,15 +33,15 @@ def should_save_screenshot(link: Link, out_dir: Optional[Path]=None) -> bool:
     return SAVE_SCREENSHOT
 
 @enforce_types
-def save_screenshot(link: Link, out_dir: Optional[Path]=None, timeout: int=TIMEOUT) -> ArchiveResult:
+def save_screenshot(snapshot: Model, out_dir: Optional[Path]=None, timeout: int=TIMEOUT) -> ArchiveResult:
     """take screenshot of site using chrome --headless"""
     
-    out_dir = out_dir or Path(link.link_dir)
+    out_dir = out_dir or Path(snapshot.snapshot_dir)
     output: ArchiveOutput = 'screenshot.png'
     cmd = [
         *chrome_args(TIMEOUT=timeout),
         '--screenshot',
-        link.url,
+        snapshot.url,
     ]
     status = 'succeeded'
     timer = TimedProgress(timeout, prefix='      ')