Quellcode durchsuchen

crawl linux special jiangsu

zhangfan vor 1 Monat
Ursprung
Commit
f368b40453
1 geänderte Dateien mit 10 neuen und 5 gelöschten Zeilen
  1. 10 5
      crossborder/jiangsu/crawl_gov_jiangsu_full.py

+ 10 - 5
crossborder/jiangsu/crawl_gov_jiangsu_full.py

@@ -3,6 +3,7 @@ import os
 import random
 import re
 import subprocess
+import sys
 import time
 import rarfile
 import shutil
@@ -28,8 +29,10 @@ from crossborder.utils.log import  get_logger
 
 log = get_logger(__name__)
 
-# rarfile.UNRAR_EXECUTABLE = r"C:\Program Files\WinRAR\UnRAR.exe"
-rarfile.UNRAR_EXECUTABLE = "unrar"
+if sys.platform.startswith('linux'):
+    rarfile.UNRAR_EXECUTABLE = "unrar"
+else:
+    rarfile.UNRAR_EXECUTABLE = r"C:\Program Files\WinRAR\UnRAR.exe"
 
 def configure_stealth_options():
     """增强型反检测配置[1,4](@ref)"""
@@ -166,9 +169,11 @@ def find_target_links(driver, year_month):
 
 def extract_rar(rar_path, extract_to):
     """备用解压函数(当 rarfile 失效时使用)"""
-    # winrar_path = r"C:\Program Files\WinRAR\Rar.exe"  # 推荐使用 Rar.exe 而非 WinRAR.exe
-    # cmd = [winrar_path, 'x', '-y', rar_path, str(extract_to)]
-    cmd = ["unrar", 'x', '-y', rar_path, str(extract_to)]
+    if sys.platform.startswith('linux'):
+        cmd = ["unrar", 'x', '-y', rar_path, str(extract_to)]
+    else:
+        winrar_path = r"C:\Program Files\WinRAR\Rar.exe"  # 推荐使用 Rar.exe 而非 WinRAR.exe
+        cmd = [winrar_path, 'x', '-y', rar_path, str(extract_to)]
 
     # 使用 CREATE_NO_WINDOW 防止弹出命令行窗口
     creationflags = subprocess.CREATE_NO_WINDOW if os.name == 'nt' else 0