日誌查看 - 20251014_14.log
文件大小: 521.69 KB 最後修改: 2025-10-14 15:01:04
2025-10-14 14:00:53 - 初始化新小時日誌檔案 2025-10-14 14:00:53 - INFO - main - [app_initializer.py:383] - update_hourly_log_file - 小時日誌檔案已更新: 20251014_14.log 2025-10-14 14:00:53 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: True 2025-10-14 14:00:54 - INFO - main - [app_initializer.py:383] - update_hourly_log_file - 小時日誌檔案已更新: 20251014_14.log 2025-10-14 14:00:54 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: True 2025-10-14 14:00:54 - INFO - WDM - [logger.py:11] - log - Driver has been saved in cache [/opt/urlanalyze/.wdm/drivers/chromedriver/linux64/114.0.5735.90] 2025-10-14 14:00:54 - ERROR - WebScraper - [scraper.py:893] - _create_driver_internal - webdriver-manager 方法失敗: Message: unknown error: Chrome failed to start: exited abnormally. (unknown error: DevToolsActivePort file doesn't exist) (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.) Stacktrace: #0 0x57bf2e6ee4e3 <unknown> #1 0x57bf2e41dc76 <unknown> #2 0x57bf2e446d78 <unknown> #3 0x57bf2e443029 <unknown> #4 0x57bf2e481ccc <unknown> #5 0x57bf2e48147f <unknown> #6 0x57bf2e478de3 <unknown> #7 0x57bf2e44e2dd <unknown> #8 0x57bf2e44f34e <unknown> #9 0x57bf2e6ae3e4 <unknown> #10 0x57bf2e6b23d7 <unknown> #11 0x57bf2e6bcb20 <unknown> #12 0x57bf2e6b3023 <unknown> #13 0x57bf2e6811aa <unknown> #14 0x57bf2e6d76b8 <unknown> #15 0x57bf2e6d7847 <unknown> #16 0x57bf2e6e7243 <unknown> #17 0x75ffaba94ac3 <unknown> 2025-10-14 14:00:54 - INFO - WebScraper - [scraper.py:897] - _create_driver_internal - 嘗試方法3:使用系統 PATH 中的 chromedriver 2025-10-14 14:00:54 - INFO - WebScraper - [scraper.py:916] - _create_driver_internal - 找到 chromedriver: /usr/local/bin/chromedriver 2025-10-14 14:00:55 - INFO - WebScraper - [scraper.py:920] - _create_driver_internal - 使用系統 chromedriver 成功創建 WebDriver 2025-10-14 14:00:55 - INFO - WebScraper - [scraper.py:1099] - get_content - 使用 Selenium 訪問 URL: https://yuefacai.com/product/high-concentration-hydrogen-rich-water-cup/ 2025-10-14 14:00:59 - INFO - WebScraper - [scraper.py:1158] - get_content - 等待頁面基本加載完成: https://yuefacai.com/product/high-concentration-hydrogen-rich-water-cup/ 2025-10-14 14:00:59 - INFO - WebScraper - [scraper.py:1165] - get_content - 頁面body元素已加載 2025-10-14 14:00:59 - INFO - WebScraper - [scraper.py:1178] - get_content - 頁面加載狀態: complete 2025-10-14 14:00:59 - INFO - main - [app_initializer.py:383] - update_hourly_log_file - 小時日誌檔案已更新: 20251014_14.log 2025-10-14 14:00:59 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: True 2025-10-14 14:00:59 - INFO - main - [app_initializer.py:383] - update_hourly_log_file - 小時日誌檔案已更新: 20251014_14.log 2025-10-14 14:00:59 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: True 2025-10-14 14:01:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:01:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:01:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:01:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.09 秒,結果: 0 2025-10-14 14:01:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.09 秒,結果: 0 2025-10-14 14:01:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.09 秒,結果: 0 2025-10-14 14:01:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:01:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.09 秒,結果: 0 2025-10-14 14:01:06 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 18/21 2025-10-14 14:01:17 - INFO - WebScraper - [scraper.py:1195] - get_content - 找到主要內容元素: .container 2025-10-14 14:01:17 - INFO - WebScraper - [scraper.py:1206] - get_content - 頁面基本加載完成: https://yuefacai.com/product/high-concentration-hydrogen-rich-water-cup/ 2025-10-14 14:01:17 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 18/21 2025-10-14 14:01:19 - INFO - WebScraper - [scraper.py:1610] - _detect_page_type - 檢測到的框架: jquery 2025-10-14 14:01:19 - INFO - WebScraper - [scraper.py:1216] - get_content - 檢測到頁面類型: ajax 2025-10-14 14:01:19 - INFO - WebScraper - [scraper.py:1224] - get_content - 檢測到AJAX內容,等待AJAX請求完成 2025-10-14 14:01:19 - INFO - WebScraper - [scraper.py:1777] - _wait_for_ajax_completion - jQuery AJAX 請求已完成 2025-10-14 14:01:19 - INFO - WebScraper - [scraper.py:1788] - _wait_for_ajax_completion - XHR 請求已完成 2025-10-14 14:01:23 - INFO - WebScraper - [scraper.py:1238] - get_content - 初始可見元素數量: 243 2025-10-14 14:01:25 - INFO - WebScraper - [scraper.py:1248] - get_content - 元素數量穩定: 243,內容可能已加載完成 2025-10-14 14:01:25 - INFO - WebScraper - [scraper.py:1255] - get_content - 等待可能的動態內容... 2025-10-14 14:01:28 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 18/21 2025-10-14 14:01:31 - INFO - WebScraper - [scraper.py:1270] - get_content - 發現加載指示器: //div[contains(@class, 'loader')],等待其消失 2025-10-14 14:01:39 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 18/21 2025-10-14 14:01:40 - INFO - WebScraper - [scraper.py:1321] - get_content - 成功獲取 URL 內容: https://yuefacai.com/product/high-concentration-hydrogen-rich-water-cup/ (實際 URL: https://yuefacai.com/product/high-concentration-hydrogen-rich-water-cup/) 2025-10-14 14:01:40 - INFO - WebScraper - [scraper.py:1519] - get_content - 清理在 get_content 方法中創建的 WebDriver 實例 2025-10-14 14:01:40 - INFO - WebScraper - [scraper.py:105] - driver - 在設置新WebDriver前關閉舊實例 2025-10-14 14:01:40 - INFO - WebScraper - [scraper.py:249] - close_driver - 線程 138621577471104: 關閉 WebDriver 實例 2025-10-14 14:01:40 - INFO - WebScraper - [scraper.py:277] - close_driver - WebDriver 已成功關閉 2025-10-14 14:01:40 - INFO - WebScraper - [scraper.py:307] - close_driver - 已執行 Python 垃圾回收 2025-10-14 14:01:40 - INFO - WebScraper - [scraper.py:1526] - get_content - WebDriver 實例已成功返回到池中 2025-10-14 14:01:40 - INFO - WebScraper - [scraper.py:1931] - extract_text_from_html - 開始從HTML中提取文本,HTML長度: 243686 字節 2025-10-14 14:01:40 - INFO - WebScraper - [scraper.py:1943] - extract_text_from_html - 使用 trafilatura 成功提取文本,長度: 381 字節 2025-10-14 14:01:41 - INFO - WebScraper - [scraper.py:1968] - extract_text_from_html - 使用 BeautifulSoup 基本提取成功,長度: 1895 字節 2025-10-14 14:01:41 - INFO - WebScraper - [scraper.py:2017] - extract_text_from_html - 使用 BeautifulSoup 針對性提取成功,長度: 1784 字節 2025-10-14 14:01:41 - INFO - WebScraper - [scraper.py:2114] - extract_text_from_html - 成功提取結構化數據,長度: 121 字節 2025-10-14 14:01:41 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 trafilatura 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:01:41 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_basic 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:01:41 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_targeted 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:01:41 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 structured_data 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:01:41 - INFO - WebScraper - [scraper.py:2152] - extract_text_from_html - 根據聯絡信息分數 2 選擇 structured_data 作為最佳結果 2025-10-14 14:01:41 - INFO - WebScraper - [scraper.py:2177] - extract_text_from_html - 已成功提取文本,總長度: 254 字節,約 51 個詞,30 行 2025-10-14 14:01:41 - INFO - WebScraper - [scraper.py:2178] - extract_text_from_html - 提取的最終文本內容: 重量 | 1 公斤 • 智能商品 • 茶葉商品 • 禮盒商品 • 一般商品 • 福利品 • 電話: 0916002161 • 信箱: amw1002667@gmail.com • 地址: 高雄市三民區民族一路92號11樓之2 • • 額外的結構化內容: 重量 | 1 公斤 • 智能商品 • 茶葉商品 • 禮盒商品 • 一般商品 • 福利品 • 電話: 0916002161 • 信箱: amw1002667@gmail.com • 地址: 高雄市三民區民族一路92號11樓之2 • • 2025-10-14 14:01:41 - INFO - main - [url_processor.py:253] - process_url - 更新 UI 審核進度(URL ID=73):已完成 19/21 個網址 2025-10-14 14:01:41 - INFO - main - [url_processor.py:190] - process_url - 處理子頁面: https://yuefacai.com/product/%e8%bc%95%e5%a5%a2%e5%90%b8%e7%9b%a4%e6%94%b6%e7%b4%8d%e7%9b%92/ 2025-10-14 14:01:41 - INFO - main - [url_processor.py:198] - process_url - 嘗試獲取子頁面內容 (嘗試 1/2, force_new_driver=False) 2025-10-14 14:01:41 - INFO - WebScraper - [scraper.py:1004] - get_content - 正在獲取網頁內容: https://yuefacai.com/product/%e8%bc%95%e5%a5%a2%e5%90%b8%e7%9b%a4%e6%94%b6%e7%b4%8d%e7%9b%92/, use_selenium=True, proxy=False, force_new_driver=False 2025-10-14 14:01:41 - INFO - WebScraper - [scraper.py:1035] - get_content - 設置頁面加載超時:21 秒 2025-10-14 14:01:41 - INFO - WebScraper - [scraper.py:1053] - get_content - 嘗試獲取 https://yuefacai.com/product/%e8%bc%95%e5%a5%a2%e5%90%b8%e7%9b%a4%e6%94%b6%e7%b4%8d%e7%9b%92/ 的第 1/3 次請求 2025-10-14 14:01:41 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e1353586190>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/3fc20752baf99b1157eb64459168cf40 2025-10-14 14:01:41 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13538fbb50>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/3fc20752baf99b1157eb64459168cf40 2025-10-14 14:01:41 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e135333c8d0>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/3fc20752baf99b1157eb64459168cf40 2025-10-14 14:01:41 - ERROR - WebScraper - [scraper.py:1082] - get_content - 通過實例池管理器創建WebDriver失敗: cannot create weak reference to 'NoneType' object 2025-10-14 14:01:41 - INFO - WebScraper - [scraper.py:857] - _create_driver_internal - 正在創建 WebDriver 實例... 2025-10-14 14:01:41 - INFO - WebScraper - [scraper.py:861] - _create_driver_internal - 嘗試方法1:使用智能路徑發現機制 2025-10-14 14:01:41 - ERROR - WebScraper - [scraper.py:878] - _create_driver_internal - 智能路徑搜索失敗: 'WebScraper' object has no attribute 'smart_find_chrome_paths' 2025-10-14 14:01:41 - INFO - WebScraper - [scraper.py:882] - _create_driver_internal - 嘗試方法2:使用 webdriver-manager 自動管理 2025-10-14 14:01:41 - INFO - WDM - [logger.py:11] - log - ====== WebDriver manager ====== 2025-10-14 14:01:41 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:01:41 - INFO - WDM - [logger.py:11] - log - About to download new driver from https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip 2025-10-14 14:01:41 - INFO - WDM - [logger.py:11] - log - Driver downloading response is 200 2025-10-14 14:01:41 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:01:41 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:01:42 - INFO - WDM - [logger.py:11] - log - Driver has been saved in cache [/opt/urlanalyze/.wdm/drivers/chromedriver/linux64/114.0.5735.90] 2025-10-14 14:01:42 - ERROR - WebScraper - [scraper.py:893] - _create_driver_internal - webdriver-manager 方法失敗: Message: unknown error: Chrome failed to start: exited abnormally. (unknown error: DevToolsActivePort file doesn't exist) (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.) Stacktrace: #0 0x5795063004e3 <unknown> #1 0x57950602fc76 <unknown> #2 0x579506058d78 <unknown> #3 0x579506055029 <unknown> #4 0x579506093ccc <unknown> #5 0x57950609347f <unknown> #6 0x57950608ade3 <unknown> #7 0x5795060602dd <unknown> #8 0x57950606134e <unknown> #9 0x5795062c03e4 <unknown> #10 0x5795062c43d7 <unknown> #11 0x5795062ceb20 <unknown> #12 0x5795062c5023 <unknown> #13 0x5795062931aa <unknown> #14 0x5795062e96b8 <unknown> #15 0x5795062e9847 <unknown> #16 0x5795062f9243 <unknown> #17 0x77d453694ac3 <unknown> 2025-10-14 14:01:42 - INFO - WebScraper - [scraper.py:897] - _create_driver_internal - 嘗試方法3:使用系統 PATH 中的 chromedriver 2025-10-14 14:01:42 - INFO - WebScraper - [scraper.py:916] - _create_driver_internal - 找到 chromedriver: /usr/local/bin/chromedriver 2025-10-14 14:01:42 - INFO - WebScraper - [scraper.py:920] - _create_driver_internal - 使用系統 chromedriver 成功創建 WebDriver 2025-10-14 14:01:42 - INFO - WebScraper - [scraper.py:1099] - get_content - 使用 Selenium 訪問 URL: https://yuefacai.com/product/%e8%bc%95%e5%a5%a2%e5%90%b8%e7%9b%a4%e6%94%b6%e7%b4%8d%e7%9b%92/ 2025-10-14 14:01:46 - INFO - WebScraper - [scraper.py:1158] - get_content - 等待頁面基本加載完成: https://yuefacai.com/product/%e8%bc%95%e5%a5%a2%e5%90%b8%e7%9b%a4%e6%94%b6%e7%b4%8d%e7%9b%92/ 2025-10-14 14:01:46 - INFO - WebScraper - [scraper.py:1165] - get_content - 頁面body元素已加載 2025-10-14 14:01:46 - INFO - WebScraper - [scraper.py:1178] - get_content - 頁面加載狀態: complete 2025-10-14 14:01:50 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 19/21 2025-10-14 14:01:54 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:01:54 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:01:54 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:01:54 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:01:55 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:01:55 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:01:56 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:01:56 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:02:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:02:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:02:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:02:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:02:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:02:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:02:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:02:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:02:01 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 19/21 2025-10-14 14:02:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:02:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:02:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:02:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 1/5, 隊列大小 0, 總處理任務 0, 記憶體 185.4MB, CPU 0.0% 2025-10-14 14:02:04 - INFO - WebScraper - [scraper.py:1195] - get_content - 找到主要內容元素: .container 2025-10-14 14:02:04 - INFO - WebScraper - [scraper.py:1206] - get_content - 頁面基本加載完成: https://yuefacai.com/product/%e8%bc%95%e5%a5%a2%e5%90%b8%e7%9b%a4%e6%94%b6%e7%b4%8d%e7%9b%92/ 2025-10-14 14:02:06 - INFO - WebScraper - [scraper.py:1610] - _detect_page_type - 檢測到的框架: jquery 2025-10-14 14:02:06 - INFO - WebScraper - [scraper.py:1216] - get_content - 檢測到頁面類型: ajax 2025-10-14 14:02:06 - INFO - WebScraper - [scraper.py:1224] - get_content - 檢測到AJAX內容,等待AJAX請求完成 2025-10-14 14:02:06 - INFO - WebScraper - [scraper.py:1777] - _wait_for_ajax_completion - jQuery AJAX 請求已完成 2025-10-14 14:02:06 - INFO - WebScraper - [scraper.py:1788] - _wait_for_ajax_completion - XHR 請求已完成 2025-10-14 14:02:10 - INFO - WebScraper - [scraper.py:1238] - get_content - 初始可見元素數量: 255 2025-10-14 14:02:12 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 19/21 2025-10-14 14:02:12 - INFO - WebScraper - [scraper.py:1248] - get_content - 元素數量穩定: 255,內容可能已加載完成 2025-10-14 14:02:12 - INFO - WebScraper - [scraper.py:1255] - get_content - 等待可能的動態內容... 2025-10-14 14:02:19 - INFO - WebScraper - [scraper.py:1270] - get_content - 發現加載指示器: //div[contains(@class, 'loader')],等待其消失 2025-10-14 14:02:23 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 19/21 2025-10-14 14:02:28 - INFO - WebScraper - [scraper.py:1321] - get_content - 成功獲取 URL 內容: https://yuefacai.com/product/%e8%bc%95%e5%a5%a2%e5%90%b8%e7%9b%a4%e6%94%b6%e7%b4%8d%e7%9b%92/ (實際 URL: https://yuefacai.com/product/%e8%bc%95%e5%a5%a2%e5%90%b8%e7%9b%a4%e6%94%b6%e7%b4%8d%e7%9b%92/) 2025-10-14 14:02:28 - INFO - WebScraper - [scraper.py:1519] - get_content - 清理在 get_content 方法中創建的 WebDriver 實例 2025-10-14 14:02:28 - INFO - WebScraper - [scraper.py:105] - driver - 在設置新WebDriver前關閉舊實例 2025-10-14 14:02:28 - INFO - WebScraper - [scraper.py:249] - close_driver - 線程 138621577471104: 關閉 WebDriver 實例 2025-10-14 14:02:28 - INFO - WebScraper - [scraper.py:277] - close_driver - WebDriver 已成功關閉 2025-10-14 14:02:28 - INFO - WebScraper - [scraper.py:307] - close_driver - 已執行 Python 垃圾回收 2025-10-14 14:02:28 - INFO - WebScraper - [scraper.py:1526] - get_content - WebDriver 實例已成功返回到池中 2025-10-14 14:02:28 - INFO - WebScraper - [scraper.py:1931] - extract_text_from_html - 開始從HTML中提取文本,HTML長度: 326752 字節 2025-10-14 14:02:28 - INFO - WebScraper - [scraper.py:1943] - extract_text_from_html - 使用 trafilatura 成功提取文本,長度: 523 字節 2025-10-14 14:02:28 - INFO - WebScraper - [scraper.py:1968] - extract_text_from_html - 使用 BeautifulSoup 基本提取成功,長度: 1976 字節 2025-10-14 14:02:28 - INFO - WebScraper - [scraper.py:2017] - extract_text_from_html - 使用 BeautifulSoup 針對性提取成功,長度: 1848 字節 2025-10-14 14:02:28 - INFO - WebScraper - [scraper.py:2114] - extract_text_from_html - 成功提取結構化數據,長度: 185 字節 2025-10-14 14:02:28 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 trafilatura 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:02:28 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_basic 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:02:28 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_targeted 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:02:28 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 structured_data 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:02:28 - INFO - WebScraper - [scraper.py:2152] - extract_text_from_html - 根據聯絡信息分數 2 選擇 structured_data 作為最佳結果 2025-10-14 14:02:28 - INFO - WebScraper - [scraper.py:2177] - extract_text_from_html - 已成功提取文本,總長度: 382 字節,約 63 個詞,42 行 2025-10-14 14:02:28 - INFO - WebScraper - [scraper.py:2178] - extract_text_from_html - 提取的最終文本內容: 輕奢吸盤收納盒(升級加厚PET材質) | 請選取一個選項小大大小組合清除 輕奢吸盤收納盒(升級加厚PET材質) | 小 , 大 , 大小組合 • 智能商品 • 茶葉商品 • 禮盒商品 • 一般商品 • 福利品 • 電話: 0916002161 • 信箱: amw1002667@gmail.com • 地址: 高雄市三民區民族一路92號11樓之2 • • 額外的結構化內容: 輕奢吸盤收納盒(升級加厚PET材質) | 請選取一個選項小大大小組合清除 輕奢吸盤收納盒(升級加厚PET材質) | 小 , 大 , 大小組合 • 智能商品 • 茶葉商品 • 禮盒商品 • 一般商品 • 福利品 • 電話: 0916002161 • 信箱: amw1002667@gmail.com • 地址: 高雄市三民區民族一路92號11樓之2 • • 2025-10-14 14:02:28 - INFO - main - [url_processor.py:253] - process_url - 更新 UI 審核進度(URL ID=73):已完成 20/21 個網址 2025-10-14 14:02:28 - INFO - main - [url_processor.py:190] - process_url - 處理子頁面: https://yuefacai.com/?add-to-cart=16492 2025-10-14 14:02:28 - INFO - main - [url_processor.py:198] - process_url - 嘗試獲取子頁面內容 (嘗試 1/2, force_new_driver=False) 2025-10-14 14:02:28 - INFO - WebScraper - [scraper.py:1004] - get_content - 正在獲取網頁內容: https://yuefacai.com/?add-to-cart=16492, use_selenium=True, proxy=False, force_new_driver=False 2025-10-14 14:02:28 - INFO - WebScraper - [scraper.py:1035] - get_content - 設置頁面加載超時:20 秒 2025-10-14 14:02:28 - INFO - WebScraper - [scraper.py:1053] - get_content - 嘗試獲取 https://yuefacai.com/?add-to-cart=16492 的第 1/3 次請求 2025-10-14 14:02:28 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13534aaa10>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/bfd3aa7661bcca68002990a4301c9a75 2025-10-14 14:02:28 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13534e1750>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/bfd3aa7661bcca68002990a4301c9a75 2025-10-14 14:02:28 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13534e1b50>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/bfd3aa7661bcca68002990a4301c9a75 2025-10-14 14:02:28 - ERROR - WebScraper - [scraper.py:1082] - get_content - 通過實例池管理器創建WebDriver失敗: cannot create weak reference to 'NoneType' object 2025-10-14 14:02:28 - INFO - WebScraper - [scraper.py:857] - _create_driver_internal - 正在創建 WebDriver 實例... 2025-10-14 14:02:28 - INFO - WebScraper - [scraper.py:861] - _create_driver_internal - 嘗試方法1:使用智能路徑發現機制 2025-10-14 14:02:28 - ERROR - WebScraper - [scraper.py:878] - _create_driver_internal - 智能路徑搜索失敗: 'WebScraper' object has no attribute 'smart_find_chrome_paths' 2025-10-14 14:02:28 - INFO - WebScraper - [scraper.py:882] - _create_driver_internal - 嘗試方法2:使用 webdriver-manager 自動管理 2025-10-14 14:02:28 - INFO - WDM - [logger.py:11] - log - ====== WebDriver manager ====== 2025-10-14 14:02:28 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:02:28 - INFO - WDM - [logger.py:11] - log - About to download new driver from https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip 2025-10-14 14:02:28 - INFO - WDM - [logger.py:11] - log - Driver downloading response is 200 2025-10-14 14:02:29 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:02:29 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:02:29 - INFO - WDM - [logger.py:11] - log - Driver has been saved in cache [/opt/urlanalyze/.wdm/drivers/chromedriver/linux64/114.0.5735.90] 2025-10-14 14:02:29 - ERROR - WebScraper - [scraper.py:893] - _create_driver_internal - webdriver-manager 方法失敗: Message: unknown error: Chrome failed to start: exited abnormally. (unknown error: DevToolsActivePort file doesn't exist) (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.) Stacktrace: #0 0x56aa1f9c34e3 <unknown> #1 0x56aa1f6f2c76 <unknown> #2 0x56aa1f71bd78 <unknown> #3 0x56aa1f718029 <unknown> #4 0x56aa1f756ccc <unknown> #5 0x56aa1f75647f <unknown> #6 0x56aa1f74dde3 <unknown> #7 0x56aa1f7232dd <unknown> #8 0x56aa1f72434e <unknown> #9 0x56aa1f9833e4 <unknown> #10 0x56aa1f9873d7 <unknown> #11 0x56aa1f991b20 <unknown> #12 0x56aa1f988023 <unknown> #13 0x56aa1f9561aa <unknown> #14 0x56aa1f9ac6b8 <unknown> #15 0x56aa1f9ac847 <unknown> #16 0x56aa1f9bc243 <unknown> #17 0x777649694ac3 <unknown> 2025-10-14 14:02:29 - INFO - WebScraper - [scraper.py:897] - _create_driver_internal - 嘗試方法3:使用系統 PATH 中的 chromedriver 2025-10-14 14:02:29 - INFO - WebScraper - [scraper.py:916] - _create_driver_internal - 找到 chromedriver: /usr/local/bin/chromedriver 2025-10-14 14:02:30 - INFO - WebScraper - [scraper.py:920] - _create_driver_internal - 使用系統 chromedriver 成功創建 WebDriver 2025-10-14 14:02:30 - INFO - WebScraper - [scraper.py:1099] - get_content - 使用 Selenium 訪問 URL: https://yuefacai.com/?add-to-cart=16492 2025-10-14 14:02:33 - INFO - WebScraper - [scraper.py:1158] - get_content - 等待頁面基本加載完成: https://yuefacai.com/?add-to-cart=16492 2025-10-14 14:02:34 - INFO - WebScraper - [scraper.py:1165] - get_content - 頁面body元素已加載 2025-10-14 14:02:34 - INFO - WebScraper - [scraper.py:1178] - get_content - 頁面加載狀態: complete 2025-10-14 14:02:34 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 20/21 2025-10-14 14:02:37 - INFO - WebScraper - [scraper.py:1195] - get_content - 找到主要內容元素: article 2025-10-14 14:02:37 - INFO - WebScraper - [scraper.py:1206] - get_content - 頁面基本加載完成: https://yuefacai.com/?add-to-cart=16492 2025-10-14 14:02:39 - INFO - WebScraper - [scraper.py:1610] - _detect_page_type - 檢測到的框架: jquery 2025-10-14 14:02:39 - INFO - WebScraper - [scraper.py:1216] - get_content - 檢測到頁面類型: ajax 2025-10-14 14:02:39 - INFO - WebScraper - [scraper.py:1224] - get_content - 檢測到AJAX內容,等待AJAX請求完成 2025-10-14 14:02:39 - INFO - WebScraper - [scraper.py:1777] - _wait_for_ajax_completion - jQuery AJAX 請求已完成 2025-10-14 14:02:39 - INFO - WebScraper - [scraper.py:1788] - _wait_for_ajax_completion - XHR 請求已完成 2025-10-14 14:02:43 - INFO - WebScraper - [scraper.py:1238] - get_content - 初始可見元素數量: 327 2025-10-14 14:02:45 - INFO - WebScraper - [scraper.py:1248] - get_content - 元素數量穩定: 327,內容可能已加載完成 2025-10-14 14:02:45 - INFO - WebScraper - [scraper.py:1255] - get_content - 等待可能的動態內容... 2025-10-14 14:02:45 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 20/21 2025-10-14 14:02:51 - INFO - WebScraper - [scraper.py:1270] - get_content - 發現加載指示器: //div[contains(@class, 'loader')],等待其消失 2025-10-14 14:02:56 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 20/21 2025-10-14 14:03:00 - INFO - WebScraper - [scraper.py:1321] - get_content - 成功獲取 URL 內容: https://yuefacai.com/?add-to-cart=16492 (實際 URL: https://yuefacai.com/?add-to-cart=16492) 2025-10-14 14:03:00 - INFO - WebScraper - [scraper.py:1519] - get_content - 清理在 get_content 方法中創建的 WebDriver 實例 2025-10-14 14:03:00 - INFO - WebScraper - [scraper.py:105] - driver - 在設置新WebDriver前關閉舊實例 2025-10-14 14:03:00 - INFO - WebScraper - [scraper.py:249] - close_driver - 線程 138621577471104: 關閉 WebDriver 實例 2025-10-14 14:03:00 - INFO - WebScraper - [scraper.py:277] - close_driver - WebDriver 已成功關閉 2025-10-14 14:03:00 - INFO - WebScraper - [scraper.py:307] - close_driver - 已執行 Python 垃圾回收 2025-10-14 14:03:00 - INFO - WebScraper - [scraper.py:1526] - get_content - WebDriver 實例已成功返回到池中 2025-10-14 14:03:00 - INFO - WebScraper - [scraper.py:1931] - extract_text_from_html - 開始從HTML中提取文本,HTML長度: 223479 字節 2025-10-14 14:03:00 - INFO - WebScraper - [scraper.py:1943] - extract_text_from_html - 使用 trafilatura 成功提取文本,長度: 1014 字節 2025-10-14 14:03:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:03:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:03:00 - INFO - WebScraper - [scraper.py:1968] - extract_text_from_html - 使用 BeautifulSoup 基本提取成功,長度: 3018 字節 2025-10-14 14:03:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:03:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:03:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:03:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:03:00 - INFO - WebScraper - [scraper.py:2017] - extract_text_from_html - 使用 BeautifulSoup 針對性提取成功,長度: 2677 字節 2025-10-14 14:03:00 - INFO - WebScraper - [scraper.py:2114] - extract_text_from_html - 成功提取結構化數據,長度: 110 字節 2025-10-14 14:03:00 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 trafilatura 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:03:00 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_basic 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:03:00 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_targeted 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:03:00 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 structured_data 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:03:00 - INFO - WebScraper - [scraper.py:2152] - extract_text_from_html - 根據聯絡信息分數 2 選擇 structured_data 作為最佳結果 2025-10-14 14:03:00 - INFO - WebScraper - [scraper.py:2177] - extract_text_from_html - 已成功提取文本,總長度: 232 字節,約 43 個詞,26 行 2025-10-14 14:03:00 - INFO - WebScraper - [scraper.py:2178] - extract_text_from_html - 提取的最終文本內容: • 智能商品 • 茶葉商品 • 禮盒商品 • 一般商品 • 福利品 • 電話: 0916002161 • 信箱: amw1002667@gmail.com • 地址: 高雄市三民區民族一路92號11樓之2 • • 額外的結構化內容: • 智能商品 • 茶葉商品 • 禮盒商品 • 一般商品 • 福利品 • 電話: 0916002161 • 信箱: amw1002667@gmail.com • 地址: 高雄市三民區民族一路92號11樓之2 • • 2025-10-14 14:03:00 - INFO - main - [url_processor.py:253] - process_url - 更新 UI 審核進度(URL ID=73):已完成 21/21 個網址 2025-10-14 14:03:00 - INFO - main - [url_processor.py:266] - process_url - UI審核: 開始審核主頁面: https://yuefacai.com/ 2025-10-14 14:03:00 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 224 字符 2025-10-14 14:03:01 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:03:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:03:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:03:07 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:03:10 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:03:10 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 8.994秒 2025-10-14 14:03:10 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 9.150秒 2025-10-14 14:03:10 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:03:10 - INFO - main - [url_processor.py:305] - process_url - UI審核: 主頁面審核通過: https://yuefacai.com/ 2025-10-14 14:03:10 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 1/20: https://yuefacai.com 2025-10-14 14:03:10 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 224 字符 2025-10-14 14:03:10 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:03:18 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:03:29 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:03:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:03:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:03:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:03:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 1/5, 隊列大小 0, 總處理任務 0, 記憶體 194.1MB, CPU 0.0% 2025-10-14 14:03:37 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:03:37 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 27.855秒 2025-10-14 14:03:37 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 27.907秒 2025-10-14 14:03:37 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:03:37 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://yuefacai.com 2025-10-14 14:03:37 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 2/20: https://yuefacai.com/ 2025-10-14 14:03:37 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 224 字符 2025-10-14 14:03:38 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:03:40 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:03:51 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:03:54 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:03:54 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 16.707秒 2025-10-14 14:03:54 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 16.758秒 2025-10-14 14:03:54 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:03:54 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://yuefacai.com/ 2025-10-14 14:03:54 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 3/20: https://yuefacai.com/product/terahertz-little-god-blows/ 2025-10-14 14:03:54 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 1904 字符 2025-10-14 14:03:54 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:04:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:04:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:04:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:04:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:04:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:04:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:04:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:04:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:04:02 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:04:13 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:04:24 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:04:35 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:04:37 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:04:37 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 42.266秒 2025-10-14 14:04:37 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 435 字符, 總耗時: 42.317秒 2025-10-14 14:04:37 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:發現違規內容:「太赫茲光波療法屬於非侵入性治療方式,對身體無創傷。」「可用於疼痛緩解、炎症消除、血液循環改善等。」「抗菌效果:太赫茲光波具有一定的抗菌效果,能抑制某些病菌... 2025-10-14 14:04:37 - WARNING - main - [url_processor.py:354] - process_url - UI審核: 子頁面審核不通過: https://yuefacai.com/product/terahertz-little-god-blows/ 2025-10-14 14:04:37 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 4/20: https://yuefacai.com/contact-us/ 2025-10-14 14:04:37 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 224 字符 2025-10-14 14:04:37 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:04:46 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:04:50 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:04:50 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 13.803秒 2025-10-14 14:04:50 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 13.853秒 2025-10-14 14:04:50 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:04:50 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://yuefacai.com/contact-us/ 2025-10-14 14:04:50 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 5/20: https://yuefacai.com/?add-to-cart=17699 2025-10-14 14:04:50 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 224 字符 2025-10-14 14:04:50 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:04:54 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:04:54 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:04:54 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:04:54 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:04:55 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:04:55 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:04:57 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:04:57 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:04:57 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:05:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:05:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:05:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:05:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:05:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:05:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:05:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:05:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:05:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:05:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:05:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:05:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 1/5, 隊列大小 0, 總處理任務 0, 記憶體 194.2MB, CPU 0.0% 2025-10-14 14:05:05 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:05:05 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 15.041秒 2025-10-14 14:05:05 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 15.093秒 2025-10-14 14:05:05 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:05:05 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://yuefacai.com/?add-to-cart=17699 2025-10-14 14:05:05 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 6/20: https://yuefacai.com/my-account/ 2025-10-14 14:05:05 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 231 字符 2025-10-14 14:05:06 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:05:08 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:05:15 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:05:15 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 9.128秒 2025-10-14 14:05:15 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 45 字符, 總耗時: 9.178秒 2025-10-14 14:05:15 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論: 審核通過... 2025-10-14 14:05:15 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://yuefacai.com/my-account/ 2025-10-14 14:05:15 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 7/20: https://yuefacai.com/product/lithium-iron-phosphate-outdoor-power-supply-500w/ 2025-10-14 14:05:15 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 608 字符 2025-10-14 14:05:15 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:05:19 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:05:30 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:05:37 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:05:37 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 22.034秒 2025-10-14 14:05:37 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 22.085秒 2025-10-14 14:05:37 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:05:37 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://yuefacai.com/product/lithium-iron-phosphate-outdoor-power-supply-500w/ 2025-10-14 14:05:37 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 8/20: https://yuefacai.com/product-category/%e6%99%ba%e8%83%bd%e5%95%86%e5%93%81/ 2025-10-14 14:05:37 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 248 字符 2025-10-14 14:05:37 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:05:41 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:05:50 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:05:50 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 12.881秒 2025-10-14 14:05:50 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 43 字符, 總耗時: 12.932秒 2025-10-14 14:05:50 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:05:50 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://yuefacai.com/product-category/%e6%99%ba%e8%83%bd%e5%95%86%e5%93%81/ 2025-10-14 14:05:50 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 9/20: https://yuefacai.com/%e5%a4%aa%e8%b5%ab%e8%8c%b2%e7%90%86%e7%99%82%e5%84%80%e7%9a%84%e7%94%b1%e4%be%86%e3%80%81%e5%b0%8d%e4%ba%ba%e9%ab%94%e7%9a%84%e5%a5%bd%e8%99%95%e5%8f%8a%e6%9c%aa%e4%be%86%e8%b6%a8%e5%8b%a2/ 2025-10-14 14:05:50 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 1358 字符 2025-10-14 14:05:50 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:05:52 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:05:53 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:05:53 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:05:55 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:05:55 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:05:59 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:05:59 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:05:59 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:05:59 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:06:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:06:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:06:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:06:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.11 秒,結果: 0 2025-10-14 14:06:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.12 秒,結果: 0 2025-10-14 14:06:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.12 秒,結果: 0 2025-10-14 14:06:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:06:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.07 秒,結果: 0 2025-10-14 14:06:03 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:06:14 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:06:14 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 24.561秒 2025-10-14 14:06:14 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 423 字符, 總耗時: 24.611秒 2025-10-14 14:06:14 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2: 發現違規內容:「太赫茲理療儀將變得更加小型化、便攜化和智能化,並且將擁有更加精確的調控功能,以適應不同的治療需求。」「太赫茲理療儀的應用範圍將不斷擴展,除了傳統的疼痛管... 2025-10-14 14:06:14 - WARNING - main - [url_processor.py:354] - process_url - UI審核: 子頁面審核不通過: https://yuefacai.com/%e5%a4%aa%e8%b5%ab%e8%8c%b2%e7%90%86%e7%99%82%e5%84%80%e7%9a%84%e7%94%b1%e4%be%86%e3%80%81%e5%b0%8d%e4%ba%ba%e9%ab%94%e7%9a%84%e5%a5%bd%e8%99%95%e5%8f%8a%e6%9c%aa%e4%be%86%e8%b6%a8%e5%8b%a2/ 2025-10-14 14:06:14 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 10/20: https://yuefacai.com/?add-to-cart=18537 2025-10-14 14:06:14 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 224 字符 2025-10-14 14:06:14 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:06:14 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:06:25 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:06:25 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 10.396秒 2025-10-14 14:06:25 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 10.446秒 2025-10-14 14:06:25 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:06:25 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://yuefacai.com/?add-to-cart=18537 2025-10-14 14:06:25 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 11/20: https://yuefacai.com/shop/ 2025-10-14 14:06:25 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 264 字符 2025-10-14 14:06:25 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:06:25 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:06:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:06:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:06:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:06:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 1/5, 隊列大小 0, 總處理任務 0, 記憶體 194.4MB, CPU 0.0% 2025-10-14 14:06:36 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:06:37 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:06:37 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 11.895秒 2025-10-14 14:06:37 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 43 字符, 總耗時: 11.945秒 2025-10-14 14:06:37 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:06:37 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://yuefacai.com/shop/ 2025-10-14 14:06:37 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 12/20: https://yuefacai.com/product/cypler%e6%96%af%e6%99%ae%e5%8b%92-%e9%ab%98%e6%bf%83%e5%ba%a6%e5%af%8c%e6%b0%ab%e6%b0%b4%e6%9d%af/ 2025-10-14 14:06:37 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 926 字符 2025-10-14 14:06:37 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:06:47 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:06:58 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:07:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:07:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:07:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:07:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:07:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:07:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:07:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:07:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.03 秒,結果: 0 2025-10-14 14:07:07 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:07:07 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 30.273秒 2025-10-14 14:07:07 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 30.323秒 2025-10-14 14:07:07 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:07:07 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://yuefacai.com/product/cypler%e6%96%af%e6%99%ae%e5%8b%92-%e9%ab%98%e6%bf%83%e5%ba%a6%e5%af%8c%e6%b0%ab%e6%b0%b4%e6%9d%af/ 2025-10-14 14:07:07 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 13/20: https://yuefacai.com/%e6%99%ba%e6%85%a7%e5%b1%85%e5%ae%b6%e7%94%a2%e5%93%81%e5%a6%82%e4%bd%95%e8%88%87%e7%8f%be%e4%bb%a3%e4%ba%ba%e7%94%9f%e6%b4%bb%e7%b5%90%e5%90%88/ 2025-10-14 14:07:07 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 276 字符 2025-10-14 14:07:07 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:07:09 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:07:18 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:07:18 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 10.502秒 2025-10-14 14:07:18 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 10.552秒 2025-10-14 14:07:18 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:07:18 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://yuefacai.com/%e6%99%ba%e6%85%a7%e5%b1%85%e5%ae%b6%e7%94%a2%e5%93%81%e5%a6%82%e4%bd%95%e8%88%87%e7%8f%be%e4%bb%a3%e4%ba%ba%e7%94%9f%e6%b4%bb%e7%b5%90%e5%90%88/ 2025-10-14 14:07:18 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 14/20: https://yuefacai.com/16961-2/ 2025-10-14 14:07:18 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 1142 字符 2025-10-14 14:07:18 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:07:20 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:07:31 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:07:33 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:07:33 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 15.034秒 2025-10-14 14:07:33 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 15.084秒 2025-10-14 14:07:33 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:07:33 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://yuefacai.com/16961-2/ 2025-10-14 14:07:33 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 15/20: https://yuefacai.com/product/%e6%99%ba%e8%83%bd%e6%b0%a3%e5%a3%93%e6%89%8b%e9%83%a8%e6%8c%89%e6%91%a9/ 2025-10-14 14:07:33 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 224 字符 2025-10-14 14:07:33 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:07:42 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:07:49 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:07:49 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 15.911秒 2025-10-14 14:07:49 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 43 字符, 總耗時: 15.961秒 2025-10-14 14:07:49 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:07:49 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://yuefacai.com/product/%e6%99%ba%e8%83%bd%e6%b0%a3%e5%a3%93%e6%89%8b%e9%83%a8%e6%8c%89%e6%91%a9/ 2025-10-14 14:07:49 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 16/20: https://yuefacai.com/slider2-jpg/lost-password/ 2025-10-14 14:07:49 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 8 字符 2025-10-14 14:07:49 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:07:53 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:07:55 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:07:55 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:07:55 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:07:55 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:07:56 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:07:56 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:07:57 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:07:57 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:08:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:08:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:08:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:08:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:08:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:08:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:08:02 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:08:02 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 13.085秒 2025-10-14 14:08:02 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 43 字符, 總耗時: 13.136秒 2025-10-14 14:08:02 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:08:02 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://yuefacai.com/slider2-jpg/lost-password/ 2025-10-14 14:08:02 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 17/20: https://yuefacai.com/product/wireless-remote-control-face-slimming-device/ 2025-10-14 14:08:02 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 1284 字符 2025-10-14 14:08:02 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:08:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:08:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.03 秒,結果: 0 2025-10-14 14:08:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:08:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:08:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:08:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 1/5, 隊列大小 0, 總處理任務 0, 記憶體 194.4MB, CPU 0.0% 2025-10-14 14:08:05 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:08:15 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:08:26 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:08:35 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:08:35 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 32.772秒 2025-10-14 14:08:35 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 329 字符, 總耗時: 32.822秒 2025-10-14 14:08:35 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 發現違規內容:「三大技術,六大按摩功能,9種力度可調節:緊致輪廓;V型塑形;低頻磁療;殺菌消腫;淨痘美顏;細肌嫩膚」「42℃恒溫磁熱,燃燒面部脂肪,加速面部脂肪團溶解」「升級4大... 2025-10-14 14:08:35 - WARNING - main - [url_processor.py:354] - process_url - UI審核: 子頁面審核不通過: https://yuefacai.com/product/wireless-remote-control-face-slimming-device/ 2025-10-14 14:08:35 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 18/20: https://yuefacai.com/product/high-concentration-hydrogen-rich-water-cup/ 2025-10-14 14:08:35 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 244 字符 2025-10-14 14:08:35 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:08:37 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:08:45 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:08:45 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 10.784秒 2025-10-14 14:08:45 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 10.836秒 2025-10-14 14:08:45 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:08:45 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://yuefacai.com/product/high-concentration-hydrogen-rich-water-cup/ 2025-10-14 14:08:45 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 19/20: https://yuefacai.com/product/%e8%bc%95%e5%a5%a2%e5%90%b8%e7%9b%a4%e6%94%b6%e7%b4%8d%e7%9b%92/ 2025-10-14 14:08:45 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 366 字符 2025-10-14 14:08:45 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:08:48 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:08:57 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:08:57 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 11.234秒 2025-10-14 14:08:57 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 11.285秒 2025-10-14 14:08:57 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:08:57 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://yuefacai.com/product/%e8%bc%95%e5%a5%a2%e5%90%b8%e7%9b%a4%e6%94%b6%e7%b4%8d%e7%9b%92/ 2025-10-14 14:08:57 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 20/20: https://yuefacai.com/?add-to-cart=16492 2025-10-14 14:08:57 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 224 字符 2025-10-14 14:08:57 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:08:59 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:09:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:09:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:09:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:09:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:09:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:09:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:09:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:09:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:09:08 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:09:08 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 11.741秒 2025-10-14 14:09:08 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 11.792秒 2025-10-14 14:09:08 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:09:08 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://yuefacai.com/?add-to-cart=16492 2025-10-14 14:09:08 - INFO - main - [url_processor.py:376] - process_url - 開始判斷主頁面購物車功能 2025-10-14 14:09:08 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:09:08 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 224 字符 2025-10-14 14:09:09 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:09:10 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:09:11 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:09:11 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 2.040秒 2025-10-14 14:09:11 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 2.090秒 2025-10-14 14:09:11 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 無購物車功能 2025-10-14 14:09:11 - INFO - main - [url_processor.py:379] - process_url - 主頁面購物車判斷: 無購物車功能 2025-10-14 14:09:11 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 1/20 購物車功能 2025-10-14 14:09:11 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:09:11 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 224 字符 2025-10-14 14:09:11 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:09:13 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:09:13 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 2.336秒 2025-10-14 14:09:13 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 2.386秒 2025-10-14 14:09:13 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 無購物車功能 2025-10-14 14:09:13 - INFO - main - [url_processor.py:390] - process_url - 子頁面 1 購物車判斷: 無購物車功能 2025-10-14 14:09:13 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 2/20 購物車功能 2025-10-14 14:09:13 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:09:13 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 224 字符 2025-10-14 14:09:13 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:09:15 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:09:15 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 2.089秒 2025-10-14 14:09:15 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 2.139秒 2025-10-14 14:09:15 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 無購物車功能 2025-10-14 14:09:15 - INFO - main - [url_processor.py:390] - process_url - 子頁面 2 購物車判斷: 無購物車功能 2025-10-14 14:09:15 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 3/20 購物車功能 2025-10-14 14:09:15 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:09:15 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 1904 字符 2025-10-14 14:09:15 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:09:20 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:09:20 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 5.065秒 2025-10-14 14:09:20 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 5.115秒 2025-10-14 14:09:20 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 無購物車功能 2025-10-14 14:09:20 - INFO - main - [url_processor.py:390] - process_url - 子頁面 3 購物車判斷: 無購物車功能 2025-10-14 14:09:20 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 4/20 購物車功能 2025-10-14 14:09:20 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:09:20 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 224 字符 2025-10-14 14:09:20 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:09:21 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:09:23 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:09:23 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 2.326秒 2025-10-14 14:09:23 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 2.376秒 2025-10-14 14:09:23 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 無購物車功能 2025-10-14 14:09:23 - INFO - main - [url_processor.py:390] - process_url - 子頁面 4 購物車判斷: 無購物車功能 2025-10-14 14:09:23 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 5/20 購物車功能 2025-10-14 14:09:23 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:09:23 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 224 字符 2025-10-14 14:09:23 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:09:25 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:09:25 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 2.007秒 2025-10-14 14:09:25 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 2.057秒 2025-10-14 14:09:25 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 無購物車功能 2025-10-14 14:09:25 - INFO - main - [url_processor.py:390] - process_url - 子頁面 5 購物車判斷: 無購物車功能 2025-10-14 14:09:25 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 6/20 購物車功能 2025-10-14 14:09:25 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:09:25 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 231 字符 2025-10-14 14:09:25 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:09:27 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:09:27 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 1.923秒 2025-10-14 14:09:27 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 1.973秒 2025-10-14 14:09:27 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 無購物車功能 2025-10-14 14:09:27 - INFO - main - [url_processor.py:390] - process_url - 子頁面 6 購物車判斷: 無購物車功能 2025-10-14 14:09:27 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 7/20 購物車功能 2025-10-14 14:09:27 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:09:27 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 608 字符 2025-10-14 14:09:27 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:09:29 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:09:29 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 2.799秒 2025-10-14 14:09:29 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 2.850秒 2025-10-14 14:09:29 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 無購物車功能 2025-10-14 14:09:29 - INFO - main - [url_processor.py:390] - process_url - 子頁面 7 購物車判斷: 無購物車功能 2025-10-14 14:09:29 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 8/20 購物車功能 2025-10-14 14:09:29 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:09:29 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 248 字符 2025-10-14 14:09:30 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:09:32 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:09:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:09:33 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:09:33 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 3.560秒 2025-10-14 14:09:33 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 3.610秒 2025-10-14 14:09:33 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 無購物車功能 2025-10-14 14:09:33 - INFO - main - [url_processor.py:390] - process_url - 子頁面 8 購物車判斷: 無購物車功能 2025-10-14 14:09:33 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 9/20 購物車功能 2025-10-14 14:09:33 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:09:33 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 1358 字符 2025-10-14 14:09:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:09:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:09:33 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:09:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 1/5, 隊列大小 0, 總處理任務 0, 記憶體 194.6MB, CPU 0.0% 2025-10-14 14:09:37 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:09:37 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 3.778秒 2025-10-14 14:09:37 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 3.830秒 2025-10-14 14:09:37 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 無購物車功能 2025-10-14 14:09:37 - INFO - main - [url_processor.py:390] - process_url - 子頁面 9 購物車判斷: 無購物車功能 2025-10-14 14:09:37 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 10/20 購物車功能 2025-10-14 14:09:37 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:09:37 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 224 字符 2025-10-14 14:09:37 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:09:39 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:09:39 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 2.281秒 2025-10-14 14:09:39 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 2.331秒 2025-10-14 14:09:39 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 無購物車功能 2025-10-14 14:09:39 - INFO - main - [url_processor.py:390] - process_url - 子頁面 10 購物車判斷: 無購物車功能 2025-10-14 14:09:39 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 11/20 購物車功能 2025-10-14 14:09:39 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:09:39 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 264 字符 2025-10-14 14:09:39 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:09:42 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:09:42 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 2.857秒 2025-10-14 14:09:42 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 2.908秒 2025-10-14 14:09:42 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 無購物車功能 2025-10-14 14:09:42 - INFO - main - [url_processor.py:390] - process_url - 子頁面 11 購物車判斷: 無購物車功能 2025-10-14 14:09:42 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 12/20 購物車功能 2025-10-14 14:09:42 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:09:42 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 926 字符 2025-10-14 14:09:42 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:09:43 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:09:49 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_urls 2025-10-14 14:09:49 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_urls 2025-10-14 14:09:49 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_urls 2025-10-14 14:09:49 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_urls' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:09:49 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_urls' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:09:49 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_urls' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:09:49 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_urls 2025-10-14 14:09:49 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_urls' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:09:51 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:09:51 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 8.472秒 2025-10-14 14:09:51 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 8.522秒 2025-10-14 14:09:51 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 無購物車功能 2025-10-14 14:09:51 - INFO - main - [url_processor.py:390] - process_url - 子頁面 12 購物車判斷: 無購物車功能 2025-10-14 14:09:51 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 13/20 購物車功能 2025-10-14 14:09:51 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:09:51 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 276 字符 2025-10-14 14:09:51 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:09:53 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:09:53 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 2.600秒 2025-10-14 14:09:53 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 2.651秒 2025-10-14 14:09:53 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 無購物車功能 2025-10-14 14:09:53 - INFO - main - [url_processor.py:390] - process_url - 子頁面 13 購物車判斷: 無購物車功能 2025-10-14 14:09:53 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 14/20 購物車功能 2025-10-14 14:09:53 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:09:53 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 1142 字符 2025-10-14 14:09:53 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:09:54 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:09:56 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:09:56 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 2.515秒 2025-10-14 14:09:56 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 2.565秒 2025-10-14 14:09:56 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 無購物車功能 2025-10-14 14:09:56 - INFO - main - [url_processor.py:390] - process_url - 子頁面 14 購物車判斷: 無購物車功能 2025-10-14 14:09:56 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 15/20 購物車功能 2025-10-14 14:09:56 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:09:56 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 224 字符 2025-10-14 14:09:56 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:09:58 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:09:58 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 2.217秒 2025-10-14 14:09:58 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 2.267秒 2025-10-14 14:09:58 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 無購物車功能 2025-10-14 14:09:58 - INFO - main - [url_processor.py:390] - process_url - 子頁面 15 購物車判斷: 無購物車功能 2025-10-14 14:09:58 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 16/20 購物車功能 2025-10-14 14:09:58 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:09:58 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 8 字符 2025-10-14 14:09:58 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:10:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:10:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:10:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:10:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:10:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:10:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:10:02 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:10:02 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 3.596秒 2025-10-14 14:10:02 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 3.647秒 2025-10-14 14:10:02 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 無購物車功能 2025-10-14 14:10:02 - INFO - main - [url_processor.py:390] - process_url - 子頁面 16 購物車判斷: 無購物車功能 2025-10-14 14:10:02 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 17/20 購物車功能 2025-10-14 14:10:02 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:10:02 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 1284 字符 2025-10-14 14:10:02 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:10:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:10:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:10:05 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:10:08 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:10:08 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 6.329秒 2025-10-14 14:10:08 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 6.379秒 2025-10-14 14:10:08 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 無購物車功能 2025-10-14 14:10:08 - INFO - main - [url_processor.py:390] - process_url - 子頁面 17 購物車判斷: 無購物車功能 2025-10-14 14:10:08 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 18/20 購物車功能 2025-10-14 14:10:08 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:10:08 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 244 字符 2025-10-14 14:10:08 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:10:11 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:10:11 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 2.300秒 2025-10-14 14:10:11 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 2.350秒 2025-10-14 14:10:11 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 無購物車功能 2025-10-14 14:10:11 - INFO - main - [url_processor.py:390] - process_url - 子頁面 18 購物車判斷: 無購物車功能 2025-10-14 14:10:11 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 19/20 購物車功能 2025-10-14 14:10:11 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:10:11 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 366 字符 2025-10-14 14:10:11 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:10:15 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:10:15 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 4.430秒 2025-10-14 14:10:15 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 4.480秒 2025-10-14 14:10:15 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 無購物車功能 2025-10-14 14:10:15 - INFO - main - [url_processor.py:390] - process_url - 子頁面 19 購物車判斷: 無購物車功能 2025-10-14 14:10:15 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 20/20 購物車功能 2025-10-14 14:10:15 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:10:15 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 224 字符 2025-10-14 14:10:15 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:10:16 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:10:17 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:10:17 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 1.916秒 2025-10-14 14:10:17 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 1.966秒 2025-10-14 14:10:17 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 無購物車功能 2025-10-14 14:10:17 - INFO - main - [url_processor.py:390] - process_url - 子頁面 20 購物車判斷: 無購物車功能 2025-10-14 14:10:17 - INFO - main - [url_processor.py:402] - process_url - 最終購物車判斷結果: 無購物車功能 (檢查了 21 個頁面) 2025-10-14 14:10:17 - WARNING - main - [url_processor.py:427] - process_url - 審核不通過:3 個頁面失敗,0 個頁面被模型拒審(已忽略) 2025-10-14 14:10:17 - INFO - main - [helpers.py:186] - _find_phone_in_content - 找到電話號碼 0916002161 (完全匹配) 2025-10-14 14:10:17 - INFO - main - [helpers.py:223] - _find_email_in_content - 找到電子郵件 amw1002667@gmail.com (完全匹配) 2025-10-14 14:10:17 - INFO - main - [url_processor.py:525] - process_url - URL ID 73 是 UI 提交,使用 URL 記錄中的聯絡資訊進行驗證 2025-10-14 14:10:17 - INFO - main - [helpers.py:186] - _find_phone_in_content - 找到電話號碼 0916002161 (完全匹配) 2025-10-14 14:10:17 - INFO - main - [helpers.py:223] - _find_email_in_content - 找到電子郵件 amw1002667@gmail.com (完全匹配) 2025-10-14 14:10:17 - INFO - main - [url_processor.py:545] - process_url - UI審核(URL ID=73):身份驗證通過 2025-10-14 14:10:17 - INFO - database - [database.py:505] - update_url_status - URL ID 73 状态已更新为 completed 2025-10-14 14:10:17 - INFO - main - [url_processor.py:609] - process_url - URL ID 73 分析完成,結果: fail, API驗證: False 2025-10-14 14:10:17 - INFO - main - [url_processor.py:634] - process_url - 工作線程 #1 完成處理 URL ID: 73 2025-10-14 14:10:27 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 73, UID: 6whnxvhxhh, 進度: 21/21 2025-10-14 14:10:54 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:10:54 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:10:55 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:10:55 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:10:55 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:10:55 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:10:55 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:10:55 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:10:56 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:10:56 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:10:57 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:10:57 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:11:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:11:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:11:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:11:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:11:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:11:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:11:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:11:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.11 秒,結果: 0 2025-10-14 14:11:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.12 秒,結果: 0 2025-10-14 14:11:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.12 秒,結果: 0 2025-10-14 14:11:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:11:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.06 秒,結果: 0 2025-10-14 14:11:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:11:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:11:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:11:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 1, 記憶體 194.6MB, CPU 0.0% 2025-10-14 14:12:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:12:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:12:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:12:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:12:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:12:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:12:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:12:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:12:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:12:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:12:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:12:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 1, 記憶體 194.6MB, CPU 0.0% 2025-10-14 14:13:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:13:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:13:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:13:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:13:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:13:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:13:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:13:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:13:55 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:13:55 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:13:55 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:13:55 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:13:56 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:13:56 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:13:57 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:13:57 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:14:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:14:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:14:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:14:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:14:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:14:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:14:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:14:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:14:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:14:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:14:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:14:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 1, 記憶體 194.6MB, CPU 0.0% 2025-10-14 14:15:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:15:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:15:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:15:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:15:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:15:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:15:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:15:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:15:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:15:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:15:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:15:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 1, 記憶體 194.6MB, CPU 0.0% 2025-10-14 14:15:54 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:15:54 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:15:56 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:15:56 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:16:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:16:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:16:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:16:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:16:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:16:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:16:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:16:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.09 秒,結果: 0 2025-10-14 14:16:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.10 秒,結果: 0 2025-10-14 14:16:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.09 秒,結果: 0 2025-10-14 14:16:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:16:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.07 秒,結果: 0 2025-10-14 14:16:55 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:16:55 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:16:55 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:16:55 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:16:56 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:16:56 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:16:58 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:16:58 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:17:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:17:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:17:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:17:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:17:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:17:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:17:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:17:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:17:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:17:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:17:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:17:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 1, 記憶體 194.6MB, CPU 0.0% 2025-10-14 14:18:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:18:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:18:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:18:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:18:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:18:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:18:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:18:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:18:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:18:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:18:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:18:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 1, 記憶體 194.6MB, CPU 0.0% 2025-10-14 14:19:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:19:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:19:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:19:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:19:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:19:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:19:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:19:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:19:56 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:19:56 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:19:56 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:19:56 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:19:57 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:19:57 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:19:58 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:19:58 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:20:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:20:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:20:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:20:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:20:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:20:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:20:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:20:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:20:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:20:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:20:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:20:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 1, 記憶體 194.6MB, CPU 0.0% 2025-10-14 14:20:16 - ERROR - main - [main.py:200] - handle_api_exception - 網頁錯誤 [/]: 405 Method Not Allowed: The method is not allowed for the requested URL. Traceback (most recent call last): File "/opt/urlanalyze/venv/lib/python3.11/site-packages/flask/app.py", line 917, in full_dispatch_request rv = self.dispatch_request() ^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/urlanalyze/venv/lib/python3.11/site-packages/flask/app.py", line 891, in dispatch_request self.raise_routing_exception(req) File "/opt/urlanalyze/venv/lib/python3.11/site-packages/flask/app.py", line 500, in raise_routing_exception raise request.routing_exception # type: ignore[misc] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/urlanalyze/venv/lib/python3.11/site-packages/flask/ctx.py", line 362, in match_request result = self.url_adapter.match(return_rule=True) # type: ignore ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/urlanalyze/venv/lib/python3.11/site-packages/werkzeug/routing/map.py", line 624, in match raise MethodNotAllowed(valid_methods=list(e.have_match_for)) from None werkzeug.exceptions.MethodNotAllowed: 405 Method Not Allowed: The method is not allowed for the requested URL. 2025-10-14 14:20:54 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:20:54 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:20:56 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:20:56 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:21:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:21:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:21:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:21:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:21:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:21:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:21:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:21:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.09 秒,結果: 0 2025-10-14 14:21:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.09 秒,結果: 0 2025-10-14 14:21:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.10 秒,結果: 0 2025-10-14 14:21:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:21:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.07 秒,結果: 0 2025-10-14 14:21:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:21:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:21:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:21:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 1, 記憶體 194.6MB, CPU 0.0% 2025-10-14 14:22:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:22:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:22:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:22:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:22:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:22:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:22:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:22:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:22:56 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:22:57 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:22:57 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:22:57 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:22:57 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:22:58 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:22:58 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:22:58 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:23:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:23:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:23:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:23:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:23:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:23:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:23:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:23:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:23:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:23:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 1, 記憶體 194.6MB, CPU 0.0% 2025-10-14 14:23:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:23:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:24:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:24:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:24:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:24:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:24:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:24:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.03 秒,結果: 0 2025-10-14 14:24:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:24:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:24:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:24:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:24:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:24:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 1, 記憶體 194.6MB, CPU 0.0% 2025-10-14 14:25:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:25:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:25:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:25:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:25:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:25:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:25:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:25:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:25:55 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:25:55 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:25:57 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:25:57 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:25:57 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:25:57 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:25:57 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:25:57 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:25:58 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:25:58 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:25:59 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:25:59 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:26:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:26:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:26:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:26:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:26:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:26:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:26:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:26:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:26:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.09 秒,結果: 0 2025-10-14 14:26:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.09 秒,結果: 0 2025-10-14 14:26:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.09 秒,結果: 0 2025-10-14 14:26:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:26:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:26:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 1, 記憶體 194.6MB, CPU 0.0% 2025-10-14 14:26:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:26:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.07 秒,結果: 0 2025-10-14 14:27:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:27:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:27:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:27:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.03 秒,結果: 0 2025-10-14 14:27:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.03 秒,結果: 0 2025-10-14 14:27:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.03 秒,結果: 0 2025-10-14 14:27:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:27:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:27:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:27:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:27:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:27:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 1, 記憶體 194.6MB, CPU 0.0% 2025-10-14 14:28:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:28:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:28:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:28:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:28:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:28:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:28:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:28:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:28:57 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:28:57 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:28:57 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:28:57 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:28:58 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:28:58 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:28:59 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:28:59 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:29:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:29:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:29:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:29:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:29:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:29:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:29:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:29:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:29:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:29:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 1, 記憶體 194.6MB, CPU 0.0% 2025-10-14 14:29:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:29:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:30:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:30:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:30:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:30:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:30:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:30:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:30:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:30:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:30:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:30:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:30:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:30:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 1, 記憶體 194.6MB, CPU 0.0% 2025-10-14 14:30:55 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:30:55 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:30:57 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:30:57 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:31:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:31:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:31:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:31:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:31:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:31:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:31:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:31:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.10 秒,結果: 0 2025-10-14 14:31:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.10 秒,結果: 0 2025-10-14 14:31:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.11 秒,結果: 0 2025-10-14 14:31:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:31:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.07 秒,結果: 0 2025-10-14 14:31:57 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:31:57 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:31:57 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:31:57 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:31:58 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:31:58 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:31:59 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:31:59 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:32:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:32:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:32:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:32:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 1, 記憶體 194.6MB, CPU 0.0% 2025-10-14 14:32:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:32:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:32:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:32:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:32:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:32:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:32:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:32:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:33:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:33:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:33:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:33:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:33:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:33:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:33:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:33:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:33:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:33:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:33:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:33:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 1, 記憶體 194.6MB, CPU 0.0% 2025-10-14 14:34:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:34:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:34:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:34:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:34:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:34:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:34:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:34:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:34:58 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:34:58 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:34:58 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:34:58 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:34:59 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:34:59 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:35:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:35:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:35:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:35:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:35:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:35:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 1, 記憶體 194.6MB, CPU 0.0% 2025-10-14 14:35:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:35:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:35:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:35:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:35:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:35:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:35:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:35:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:35:56 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:35:56 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:35:58 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:35:58 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:36:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:36:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:36:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:36:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:36:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:36:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:36:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:36:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.09 秒,結果: 0 2025-10-14 14:36:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.09 秒,結果: 0 2025-10-14 14:36:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.09 秒,結果: 0 2025-10-14 14:36:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:36:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.06 秒,結果: 0 2025-10-14 14:36:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:36:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:36:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:36:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 1, 記憶體 194.6MB, CPU 0.0% 2025-10-14 14:37:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:37:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:37:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:37:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:37:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:37:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:37:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:37:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:37:58 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:37:58 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:37:58 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:37:58 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:37:59 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:37:59 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:38:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:38:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:38:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:38:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:38:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:38:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 1, 記憶體 194.6MB, CPU 0.0% 2025-10-14 14:38:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:38:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:38:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:38:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:38:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:38:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:38:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:38:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:39:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:39:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:39:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:39:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:39:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:39:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:39:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:39:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.03 秒,結果: 0 2025-10-14 14:39:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:39:33 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: perform_garbage_collection 2025-10-14 14:39:33 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'perform_garbage_collection' 執行完成,耗時 0.00 秒,結果: True 2025-10-14 14:39:33 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: perform_garbage_collection 2025-10-14 14:39:33 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'perform_garbage_collection' 執行完成,耗時 0.00 秒,結果: True 2025-10-14 14:39:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:39:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:39:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 1, 記憶體 194.6MB, CPU 0.0% 2025-10-14 14:39:34 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: perform_garbage_collection 2025-10-14 14:39:34 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'perform_garbage_collection' 執行完成,耗時 0.00 秒,結果: True 2025-10-14 14:39:34 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: perform_garbage_collection 2025-10-14 14:39:34 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'perform_garbage_collection' 執行完成,耗時 0.00 秒,結果: True 2025-10-14 14:39:35 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: clean_old_logs 2025-10-14 14:39:35 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: clean_old_logs 2025-10-14 14:39:35 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: clean_old_logs 2025-10-14 14:39:35 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: clean_old_logs 2025-10-14 14:39:35 - INFO - database - [database.py:1026] - clean_old_logs - 已清理 0 条旧日志记录 2025-10-14 14:39:35 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'clean_old_logs' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:39:35 - INFO - database - [database.py:1026] - clean_old_logs - 已清理 0 条旧日志记录 2025-10-14 14:39:35 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'clean_old_logs' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:39:35 - INFO - database - [database.py:1026] - clean_old_logs - 已清理 0 条旧日志记录 2025-10-14 14:39:35 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'clean_old_logs' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:39:35 - INFO - database - [database.py:1026] - clean_old_logs - 已清理 0 条旧日志记录 2025-10-14 14:39:35 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'clean_old_logs' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:39:49 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_urls 2025-10-14 14:39:49 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_urls 2025-10-14 14:39:49 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_urls 2025-10-14 14:39:49 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_urls' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:39:49 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_urls' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:39:49 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_urls' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:39:50 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_urls 2025-10-14 14:39:50 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_urls' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:40:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:40:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:40:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:40:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:40:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:40:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:40:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:40:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:40:56 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:40:56 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:40:58 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:40:58 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:40:58 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:40:58 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:40:58 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:40:58 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:40:59 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:40:59 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:41:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:41:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:41:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:41:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:41:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:41:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:41:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:41:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:41:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:41:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 1, 記憶體 194.6MB, CPU 0.0% 2025-10-14 14:41:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:41:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:41:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:41:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.12 秒,結果: 0 2025-10-14 14:41:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.13 秒,結果: 0 2025-10-14 14:41:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.13 秒,結果: 0 2025-10-14 14:41:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:41:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.06 秒,結果: 0 2025-10-14 14:42:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:42:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:42:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:42:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:42:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:42:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:42:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:42:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:42:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:42:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:42:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:42:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 1, 記憶體 194.6MB, CPU 0.0% 2025-10-14 14:43:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:43:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:43:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:43:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:43:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:43:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:43:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:43:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:43:43 - INFO - database - [database.py:420] - process_url - UI 提交生成 UID: 1k9oglnji7 2025-10-14 14:43:43 - INFO - database - [database.py:426] - process_url - UI 提交 URL https://wednesdaystudio22.com/,結果將立即顯示 2025-10-14 14:43:43 - INFO - main - [web_routes.py:115] - submit_url - UI 提交,URL ID: 74, Phone: 0905170975, Email: wednesdaystudio2022@gmail.com 2025-10-14 14:43:43 - INFO - database - [database.py:536] - get_pending_url - 找到待处理的 URL: ID=74, URL=https://wednesdaystudio22.com/ 2025-10-14 14:43:43 - INFO - main - [request_processor.py:690] - process_pending_urls - 已添加 1 個 URL 到處理隊列 2025-10-14 14:43:43 - INFO - main - [url_processor.py:42] - process_url - 工作線程 #1 開始處理 URL ID: 74 2025-10-14 14:43:43 - INFO - main - [url_processor.py:83] - process_url - 分析 URL: https://wednesdaystudio22.com/ 2025-10-14 14:43:43 - INFO - main - [url_processor.py:97] - process_url - 嘗試獲取網頁內容 (嘗試 1/3, force_new_driver=False) 2025-10-14 14:43:43 - INFO - WebScraper - [scraper.py:1004] - get_content - 正在獲取網頁內容: https://wednesdaystudio22.com/, use_selenium=True, proxy=False, force_new_driver=False 2025-10-14 14:43:43 - INFO - WebScraper - [scraper.py:1035] - get_content - 設置頁面加載超時:20 秒 2025-10-14 14:43:43 - INFO - WebScraper - [scraper.py:1053] - get_content - 嘗試獲取 https://wednesdaystudio22.com/ 的第 1/3 次請求 2025-10-14 14:43:43 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13534ce790>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/1390a89c4c924408ce92d79f7f277eb3 2025-10-14 14:43:43 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e135291c090>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/1390a89c4c924408ce92d79f7f277eb3 2025-10-14 14:43:43 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e135291ff50>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/1390a89c4c924408ce92d79f7f277eb3 2025-10-14 14:43:43 - ERROR - WebScraper - [scraper.py:1082] - get_content - 通過實例池管理器創建WebDriver失敗: cannot create weak reference to 'NoneType' object 2025-10-14 14:43:43 - INFO - WebScraper - [scraper.py:857] - _create_driver_internal - 正在創建 WebDriver 實例... 2025-10-14 14:43:43 - INFO - WebScraper - [scraper.py:861] - _create_driver_internal - 嘗試方法1:使用智能路徑發現機制 2025-10-14 14:43:43 - ERROR - WebScraper - [scraper.py:878] - _create_driver_internal - 智能路徑搜索失敗: 'WebScraper' object has no attribute 'smart_find_chrome_paths' 2025-10-14 14:43:43 - INFO - WebScraper - [scraper.py:882] - _create_driver_internal - 嘗試方法2:使用 webdriver-manager 自動管理 2025-10-14 14:43:43 - INFO - WDM - [logger.py:11] - log - ====== WebDriver manager ====== 2025-10-14 14:43:43 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:43:43 - INFO - WDM - [logger.py:11] - log - About to download new driver from https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip 2025-10-14 14:43:43 - INFO - WDM - [logger.py:11] - log - Driver downloading response is 200 2025-10-14 14:43:43 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:43:44 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:43:44 - INFO - WDM - [logger.py:11] - log - Driver has been saved in cache [/opt/urlanalyze/.wdm/drivers/chromedriver/linux64/114.0.5735.90] 2025-10-14 14:43:44 - ERROR - WebScraper - [scraper.py:893] - _create_driver_internal - webdriver-manager 方法失敗: Message: unknown error: Chrome failed to start: exited abnormally. (unknown error: DevToolsActivePort file doesn't exist) (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.) Stacktrace: #0 0x64eb393474e3 <unknown> #1 0x64eb39076c76 <unknown> #2 0x64eb3909fd78 <unknown> #3 0x64eb3909c029 <unknown> #4 0x64eb390daccc <unknown> #5 0x64eb390da47f <unknown> #6 0x64eb390d1de3 <unknown> #7 0x64eb390a72dd <unknown> #8 0x64eb390a834e <unknown> #9 0x64eb393073e4 <unknown> #10 0x64eb3930b3d7 <unknown> #11 0x64eb39315b20 <unknown> #12 0x64eb3930c023 <unknown> #13 0x64eb392da1aa <unknown> #14 0x64eb393306b8 <unknown> #15 0x64eb39330847 <unknown> #16 0x64eb39340243 <unknown> #17 0x75ab36294ac3 <unknown> 2025-10-14 14:43:44 - INFO - WebScraper - [scraper.py:897] - _create_driver_internal - 嘗試方法3:使用系統 PATH 中的 chromedriver 2025-10-14 14:43:44 - INFO - WebScraper - [scraper.py:916] - _create_driver_internal - 找到 chromedriver: /usr/local/bin/chromedriver 2025-10-14 14:43:44 - INFO - WebScraper - [scraper.py:920] - _create_driver_internal - 使用系統 chromedriver 成功創建 WebDriver 2025-10-14 14:43:44 - INFO - WebScraper - [scraper.py:1099] - get_content - 使用 Selenium 訪問 URL: https://wednesdaystudio22.com/ 2025-10-14 14:43:45 - INFO - WebScraper - [scraper.py:1158] - get_content - 等待頁面基本加載完成: https://wednesdaystudio22.com/ 2025-10-14 14:43:45 - INFO - WebScraper - [scraper.py:1165] - get_content - 頁面body元素已加載 2025-10-14 14:43:45 - INFO - WebScraper - [scraper.py:1178] - get_content - 頁面加載狀態: complete 2025-10-14 14:43:45 - INFO - WebScraper - [scraper.py:1195] - get_content - 找到主要內容元素: main 2025-10-14 14:43:45 - INFO - WebScraper - [scraper.py:1206] - get_content - 頁面基本加載完成: https://wednesdaystudio22.com/ 2025-10-14 14:43:45 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 0/1 2025-10-14 14:43:47 - INFO - WebScraper - [scraper.py:1610] - _detect_page_type - 檢測到的框架: jquery 2025-10-14 14:43:47 - INFO - WebScraper - [scraper.py:1216] - get_content - 檢測到頁面類型: ajax 2025-10-14 14:43:47 - INFO - WebScraper - [scraper.py:1224] - get_content - 檢測到AJAX內容,等待AJAX請求完成 2025-10-14 14:43:47 - INFO - WebScraper - [scraper.py:1777] - _wait_for_ajax_completion - jQuery AJAX 請求已完成 2025-10-14 14:43:47 - INFO - WebScraper - [scraper.py:1788] - _wait_for_ajax_completion - XHR 請求已完成 2025-10-14 14:43:51 - INFO - WebScraper - [scraper.py:1238] - get_content - 初始可見元素數量: 117 2025-10-14 14:43:53 - INFO - WebScraper - [scraper.py:1248] - get_content - 元素數量穩定: 117,內容可能已加載完成 2025-10-14 14:43:53 - INFO - WebScraper - [scraper.py:1255] - get_content - 等待可能的動態內容... 2025-10-14 14:43:56 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 0/1 2025-10-14 14:43:58 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:43:58 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:43:58 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:43:58 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:43:59 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:43:59 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:44:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:44:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:44:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:44:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:44:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:44:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 1/5, 隊列大小 0, 總處理任務 1, 記憶體 199.2MB, CPU 0.0% 2025-10-14 14:44:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:44:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:44:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:44:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:44:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:44:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:44:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:44:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:44:06 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 0/1 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:1321] - get_content - 成功獲取 URL 內容: https://wednesdaystudio22.com/ (實際 URL: https://wednesdaystudio22.com/) 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:1519] - get_content - 清理在 get_content 方法中創建的 WebDriver 實例 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:105] - driver - 在設置新WebDriver前關閉舊實例 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:249] - close_driver - 線程 138621577471104: 關閉 WebDriver 實例 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:277] - close_driver - WebDriver 已成功關閉 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:307] - close_driver - 已執行 Python 垃圾回收 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:1526] - get_content - WebDriver 實例已成功返回到池中 2025-10-14 14:44:12 - INFO - database - [database.py:505] - update_url_status - URL ID 74 状态已更新为 processing 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:1931] - extract_text_from_html - 開始從HTML中提取文本,HTML長度: 142288 字節 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:1943] - extract_text_from_html - 使用 trafilatura 成功提取文本,長度: 927 字節 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:1968] - extract_text_from_html - 使用 BeautifulSoup 基本提取成功,長度: 689 字節 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:2017] - extract_text_from_html - 使用 BeautifulSoup 針對性提取成功,長度: 221 字節 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:2114] - extract_text_from_html - 成功提取結構化數據,長度: 241 字節 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 trafilatura 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_basic 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_targeted 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 structured_data 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:2152] - extract_text_from_html - 根據聯絡信息分數 2 選擇 beautifulsoup_basic 作為最佳結果 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:2177] - extract_text_from_html - 已成功提取文本,總長度: 942 字節,約 139 個詞,107 行 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:2178] - extract_text_from_html - 提取的最終文本內容: 跳至主要內容 登入/註冊 LINE登入 LINE登入 登入 註冊 登入/註冊 搜尋 購物車 NT$ 0 0 選單 購物車 NT$ 0 0 new arrivals 新品上架 Nivelle NT$ 590 Lune NT$ 590 Vittra NT$ 590 Quillie NT$ 590 best sellers 熱門商品 Nivelle NT$ 590 Lune NT$ 590 Vittra NT$ 590 Quillie NT$ 590 categories 飾品分類 項鍊/necklaces 手鍊/bracelets 戒指/rings 腰鏈/chain belts 關於我們 品牌故事 購物相關 購物須知 退換貨須知 隱私權政策 聯絡我們 Instagram|wednesday___studio Email | wednesdaystudio2022@gmail.com 溫飾工作室 60076339 Instagram Line Envelope Copyright @2025 ᴡᴇᴅɴᴇsᴅᴀʏ 保留一切權利|本網站由 3C翔合作建置 登入 註冊 body::-webkit-scrollbar { width: 7px; } body::-webkit-scrollbar-track { border-radius: 10px; background: #f0f0f0; } body::-webkit-scrollbar-thumb { border-radius: 50px; background: #dfdbdb } 首頁 全部商品 聯絡我們 額外的結構化內容: • Nivelle NT$590 • Lune NT$590 • Vittra NT$590 • Quillie NT$590 • Nivelle NT$590 • Lune NT$590 • Vittra NT$590 • Quillie NT$590 • 購物須知 • 退換貨須知 • 隱私權政策 • Instagram|wednesday___studio • Email | wednesdaystudio2022@gmail.com • 溫飾工作室 60076339 2025-10-14 14:44:12 - INFO - ContentAnalyzer - [analyzer.py:310] - check_specific_issues - 開始檢查網頁特定問題: URL=https://wednesdaystudio22.com/, HTML 內容大小=142288 字節 2025-10-14 14:44:12 - INFO - ContentAnalyzer - [analyzer.py:676] - check_specific_issues - 網頁特定問題檢查完成: URL=https://wednesdaystudio22.com/, 發現問題數=8, 嚴重問題數=2, 耗時=0.024秒 2025-10-14 14:44:12 - INFO - ContentAnalyzer - [analyzer.py:681] - check_specific_issues - 問題類型摘要: suspicious_inline_script(2), suspicious_external_script(1), form(1), password_field(4) 2025-10-14 14:44:12 - INFO - ContentAnalyzer - [analyzer.py:685] - check_specific_issues - 嚴重程度摘要: info(6), warning(2) 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:2522] - find_internal_links - 從HTML靜態內容中提取了 22 個內部鏈接 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:2371] - should_skip_url - 跳過低價值URL: https://wednesdaystudio22.com/privacy-policy (匹配模式: /privacy) 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:2371] - should_skip_url - 跳過低價值URL: https://wednesdaystudio22.com/terms-2/ (匹配模式: /terms) 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:2683] - find_internal_links - 鏈接數量 (21) 超過限制 (20),進行截斷 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:2686] - find_internal_links - 總共找到 20 個有效內部鏈接 2025-10-14 14:44:12 - INFO - main - [url_processor.py:153] - process_url - 找到 20 個內部鏈接,最大深度2層 2025-10-14 14:44:12 - INFO - main - [url_processor.py:179] - process_url - 更新 UI 審核進度(URL ID=74):總計 21 個網址,已完成 1 個(主頁面) 2025-10-14 14:44:12 - INFO - main - [url_processor.py:190] - process_url - 處理子頁面: https://wednesdaystudio22.com 2025-10-14 14:44:12 - INFO - main - [url_processor.py:198] - process_url - 嘗試獲取子頁面內容 (嘗試 1/2, force_new_driver=False) 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:1004] - get_content - 正在獲取網頁內容: https://wednesdaystudio22.com, use_selenium=True, proxy=False, force_new_driver=False 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:1035] - get_content - 設置頁面加載超時:20 秒 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:1053] - get_content - 嘗試獲取 https://wednesdaystudio22.com 的第 1/3 次請求 2025-10-14 14:44:12 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e1352903b10>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/9c3149d5c6c624b16ea7647ac5d77544 2025-10-14 14:44:12 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13537b3f10>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/9c3149d5c6c624b16ea7647ac5d77544 2025-10-14 14:44:12 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13537b0b50>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/9c3149d5c6c624b16ea7647ac5d77544 2025-10-14 14:44:12 - ERROR - WebScraper - [scraper.py:1082] - get_content - 通過實例池管理器創建WebDriver失敗: cannot create weak reference to 'NoneType' object 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:857] - _create_driver_internal - 正在創建 WebDriver 實例... 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:861] - _create_driver_internal - 嘗試方法1:使用智能路徑發現機制 2025-10-14 14:44:12 - ERROR - WebScraper - [scraper.py:878] - _create_driver_internal - 智能路徑搜索失敗: 'WebScraper' object has no attribute 'smart_find_chrome_paths' 2025-10-14 14:44:12 - INFO - WebScraper - [scraper.py:882] - _create_driver_internal - 嘗試方法2:使用 webdriver-manager 自動管理 2025-10-14 14:44:12 - INFO - WDM - [logger.py:11] - log - ====== WebDriver manager ====== 2025-10-14 14:44:12 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:44:12 - INFO - WDM - [logger.py:11] - log - About to download new driver from https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip 2025-10-14 14:44:12 - INFO - WDM - [logger.py:11] - log - Driver downloading response is 200 2025-10-14 14:44:13 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:44:13 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:44:13 - INFO - WDM - [logger.py:11] - log - Driver has been saved in cache [/opt/urlanalyze/.wdm/drivers/chromedriver/linux64/114.0.5735.90] 2025-10-14 14:44:13 - ERROR - WebScraper - [scraper.py:893] - _create_driver_internal - webdriver-manager 方法失敗: Message: unknown error: Chrome failed to start: exited abnormally. (unknown error: DevToolsActivePort file doesn't exist) (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.) Stacktrace: #0 0x5577866c84e3 <unknown> #1 0x5577863f7c76 <unknown> #2 0x557786420d78 <unknown> #3 0x55778641d029 <unknown> #4 0x55778645bccc <unknown> #5 0x55778645b47f <unknown> #6 0x557786452de3 <unknown> #7 0x5577864282dd <unknown> #8 0x55778642934e <unknown> #9 0x5577866883e4 <unknown> #10 0x55778668c3d7 <unknown> #11 0x557786696b20 <unknown> #12 0x55778668d023 <unknown> #13 0x55778665b1aa <unknown> #14 0x5577866b16b8 <unknown> #15 0x5577866b1847 <unknown> #16 0x5577866c1243 <unknown> #17 0x781226e94ac3 <unknown> 2025-10-14 14:44:13 - INFO - WebScraper - [scraper.py:897] - _create_driver_internal - 嘗試方法3:使用系統 PATH 中的 chromedriver 2025-10-14 14:44:13 - INFO - WebScraper - [scraper.py:916] - _create_driver_internal - 找到 chromedriver: /usr/local/bin/chromedriver 2025-10-14 14:44:14 - INFO - WebScraper - [scraper.py:920] - _create_driver_internal - 使用系統 chromedriver 成功創建 WebDriver 2025-10-14 14:44:14 - INFO - WebScraper - [scraper.py:1099] - get_content - 使用 Selenium 訪問 URL: https://wednesdaystudio22.com 2025-10-14 14:44:14 - INFO - WebScraper - [scraper.py:1158] - get_content - 等待頁面基本加載完成: https://wednesdaystudio22.com 2025-10-14 14:44:15 - INFO - WebScraper - [scraper.py:1165] - get_content - 頁面body元素已加載 2025-10-14 14:44:15 - INFO - WebScraper - [scraper.py:1178] - get_content - 頁面加載狀態: complete 2025-10-14 14:44:15 - INFO - WebScraper - [scraper.py:1195] - get_content - 找到主要內容元素: main 2025-10-14 14:44:15 - INFO - WebScraper - [scraper.py:1206] - get_content - 頁面基本加載完成: https://wednesdaystudio22.com 2025-10-14 14:44:16 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 1/21 2025-10-14 14:44:17 - INFO - WebScraper - [scraper.py:1610] - _detect_page_type - 檢測到的框架: jquery 2025-10-14 14:44:17 - INFO - WebScraper - [scraper.py:1216] - get_content - 檢測到頁面類型: ajax 2025-10-14 14:44:17 - INFO - WebScraper - [scraper.py:1224] - get_content - 檢測到AJAX內容,等待AJAX請求完成 2025-10-14 14:44:17 - INFO - WebScraper - [scraper.py:1777] - _wait_for_ajax_completion - jQuery AJAX 請求已完成 2025-10-14 14:44:17 - INFO - WebScraper - [scraper.py:1788] - _wait_for_ajax_completion - XHR 請求已完成 2025-10-14 14:44:21 - INFO - WebScraper - [scraper.py:1238] - get_content - 初始可見元素數量: 117 2025-10-14 14:44:23 - INFO - WebScraper - [scraper.py:1248] - get_content - 元素數量穩定: 117,內容可能已加載完成 2025-10-14 14:44:23 - INFO - WebScraper - [scraper.py:1255] - get_content - 等待可能的動態內容... 2025-10-14 14:44:26 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 1/21 2025-10-14 14:44:27 - ERROR - main - [main.py:200] - handle_api_exception - 網頁錯誤 [/]: 405 Method Not Allowed: The method is not allowed for the requested URL. Traceback (most recent call last): File "/opt/urlanalyze/venv/lib/python3.11/site-packages/flask/app.py", line 917, in full_dispatch_request rv = self.dispatch_request() ^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/urlanalyze/venv/lib/python3.11/site-packages/flask/app.py", line 891, in dispatch_request self.raise_routing_exception(req) File "/opt/urlanalyze/venv/lib/python3.11/site-packages/flask/app.py", line 500, in raise_routing_exception raise request.routing_exception # type: ignore[misc] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/urlanalyze/venv/lib/python3.11/site-packages/flask/ctx.py", line 362, in match_request result = self.url_adapter.match(return_rule=True) # type: ignore ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/urlanalyze/venv/lib/python3.11/site-packages/werkzeug/routing/map.py", line 624, in match raise MethodNotAllowed(valid_methods=list(e.have_match_for)) from None werkzeug.exceptions.MethodNotAllowed: 405 Method Not Allowed: The method is not allowed for the requested URL. 2025-10-14 14:44:36 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 1/21 2025-10-14 14:44:41 - INFO - WebScraper - [scraper.py:1321] - get_content - 成功獲取 URL 內容: https://wednesdaystudio22.com (實際 URL: https://wednesdaystudio22.com/) 2025-10-14 14:44:41 - INFO - WebScraper - [scraper.py:1519] - get_content - 清理在 get_content 方法中創建的 WebDriver 實例 2025-10-14 14:44:41 - INFO - WebScraper - [scraper.py:105] - driver - 在設置新WebDriver前關閉舊實例 2025-10-14 14:44:41 - INFO - WebScraper - [scraper.py:249] - close_driver - 線程 138621577471104: 關閉 WebDriver 實例 2025-10-14 14:44:41 - INFO - WebScraper - [scraper.py:277] - close_driver - WebDriver 已成功關閉 2025-10-14 14:44:41 - INFO - WebScraper - [scraper.py:307] - close_driver - 已執行 Python 垃圾回收 2025-10-14 14:44:41 - INFO - WebScraper - [scraper.py:1526] - get_content - WebDriver 實例已成功返回到池中 2025-10-14 14:44:41 - INFO - WebScraper - [scraper.py:1931] - extract_text_from_html - 開始從HTML中提取文本,HTML長度: 142288 字節 2025-10-14 14:44:41 - INFO - WebScraper - [scraper.py:1943] - extract_text_from_html - 使用 trafilatura 成功提取文本,長度: 927 字節 2025-10-14 14:44:41 - INFO - WebScraper - [scraper.py:1968] - extract_text_from_html - 使用 BeautifulSoup 基本提取成功,長度: 689 字節 2025-10-14 14:44:41 - INFO - WebScraper - [scraper.py:2017] - extract_text_from_html - 使用 BeautifulSoup 針對性提取成功,長度: 221 字節 2025-10-14 14:44:41 - INFO - WebScraper - [scraper.py:2114] - extract_text_from_html - 成功提取結構化數據,長度: 241 字節 2025-10-14 14:44:41 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 trafilatura 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:44:41 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_basic 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:44:41 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_targeted 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:44:41 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 structured_data 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:44:41 - INFO - WebScraper - [scraper.py:2152] - extract_text_from_html - 根據聯絡信息分數 2 選擇 beautifulsoup_basic 作為最佳結果 2025-10-14 14:44:41 - INFO - WebScraper - [scraper.py:2177] - extract_text_from_html - 已成功提取文本,總長度: 942 字節,約 139 個詞,107 行 2025-10-14 14:44:41 - INFO - WebScraper - [scraper.py:2178] - extract_text_from_html - 提取的最終文本內容: 跳至主要內容 登入/註冊 LINE登入 LINE登入 登入 註冊 登入/註冊 搜尋 購物車 NT$ 0 0 選單 購物車 NT$ 0 0 new arrivals 新品上架 Nivelle NT$ 590 Lune NT$ 590 Vittra NT$ 590 Quillie NT$ 590 best sellers 熱門商品 Nivelle NT$ 590 Lune NT$ 590 Vittra NT$ 590 Quillie NT$ 590 categories 飾品分類 項鍊/necklaces 手鍊/bracelets 戒指/rings 腰鏈/chain belts 關於我們 品牌故事 購物相關 購物須知 退換貨須知 隱私權政策 聯絡我們 Instagram|wednesday___studio Email | wednesdaystudio2022@gmail.com 溫飾工作室 60076339 Instagram Line Envelope Copyright @2025 ᴡᴇᴅɴᴇsᴅᴀʏ 保留一切權利|本網站由 3C翔合作建置 登入 註冊 body::-webkit-scrollbar { width: 7px; } body::-webkit-scrollbar-track { border-radius: 10px; background: #f0f0f0; } body::-webkit-scrollbar-thumb { border-radius: 50px; background: #dfdbdb } 首頁 全部商品 聯絡我們 額外的結構化內容: • Nivelle NT$590 • Lune NT$590 • Vittra NT$590 • Quillie NT$590 • Nivelle NT$590 • Lune NT$590 • Vittra NT$590 • Quillie NT$590 • 購物須知 • 退換貨須知 • 隱私權政策 • Instagram|wednesday___studio • Email | wednesdaystudio2022@gmail.com • 溫飾工作室 60076339 2025-10-14 14:44:41 - INFO - main - [url_processor.py:253] - process_url - 更新 UI 審核進度(URL ID=74):已完成 2/21 個網址 2025-10-14 14:44:41 - INFO - main - [url_processor.py:190] - process_url - 處理子頁面: https://wednesdaystudio22.com/ 2025-10-14 14:44:41 - INFO - main - [url_processor.py:198] - process_url - 嘗試獲取子頁面內容 (嘗試 1/2, force_new_driver=False) 2025-10-14 14:44:41 - INFO - WebScraper - [scraper.py:1004] - get_content - 正在獲取網頁內容: https://wednesdaystudio22.com/, use_selenium=True, proxy=False, force_new_driver=False 2025-10-14 14:44:41 - INFO - WebScraper - [scraper.py:1035] - get_content - 設置頁面加載超時:20 秒 2025-10-14 14:44:41 - INFO - WebScraper - [scraper.py:1053] - get_content - 嘗試獲取 https://wednesdaystudio22.com/ 的第 1/3 次請求 2025-10-14 14:44:41 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13536d0e90>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/dcb6da970163bbd8e925dfbe76025d0a 2025-10-14 14:44:41 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13536d0610>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/dcb6da970163bbd8e925dfbe76025d0a 2025-10-14 14:44:41 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13533db850>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/dcb6da970163bbd8e925dfbe76025d0a 2025-10-14 14:44:41 - ERROR - WebScraper - [scraper.py:1082] - get_content - 通過實例池管理器創建WebDriver失敗: cannot create weak reference to 'NoneType' object 2025-10-14 14:44:41 - INFO - WebScraper - [scraper.py:857] - _create_driver_internal - 正在創建 WebDriver 實例... 2025-10-14 14:44:41 - INFO - WebScraper - [scraper.py:861] - _create_driver_internal - 嘗試方法1:使用智能路徑發現機制 2025-10-14 14:44:41 - ERROR - WebScraper - [scraper.py:878] - _create_driver_internal - 智能路徑搜索失敗: 'WebScraper' object has no attribute 'smart_find_chrome_paths' 2025-10-14 14:44:41 - INFO - WebScraper - [scraper.py:882] - _create_driver_internal - 嘗試方法2:使用 webdriver-manager 自動管理 2025-10-14 14:44:41 - INFO - WDM - [logger.py:11] - log - ====== WebDriver manager ====== 2025-10-14 14:44:41 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:44:41 - INFO - WDM - [logger.py:11] - log - About to download new driver from https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip 2025-10-14 14:44:42 - INFO - WDM - [logger.py:11] - log - Driver downloading response is 200 2025-10-14 14:44:42 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:44:42 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:44:42 - INFO - WDM - [logger.py:11] - log - Driver has been saved in cache [/opt/urlanalyze/.wdm/drivers/chromedriver/linux64/114.0.5735.90] 2025-10-14 14:44:42 - ERROR - WebScraper - [scraper.py:893] - _create_driver_internal - webdriver-manager 方法失敗: Message: unknown error: Chrome failed to start: exited abnormally. (unknown error: DevToolsActivePort file doesn't exist) (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.) Stacktrace: #0 0x585b5ac074e3 <unknown> #1 0x585b5a936c76 <unknown> #2 0x585b5a95fd78 <unknown> #3 0x585b5a95c029 <unknown> #4 0x585b5a99accc <unknown> #5 0x585b5a99a47f <unknown> #6 0x585b5a991de3 <unknown> #7 0x585b5a9672dd <unknown> #8 0x585b5a96834e <unknown> #9 0x585b5abc73e4 <unknown> #10 0x585b5abcb3d7 <unknown> #11 0x585b5abd5b20 <unknown> #12 0x585b5abcc023 <unknown> #13 0x585b5ab9a1aa <unknown> #14 0x585b5abf06b8 <unknown> #15 0x585b5abf0847 <unknown> #16 0x585b5ac00243 <unknown> #17 0x7e85f2894ac3 <unknown> 2025-10-14 14:44:42 - INFO - WebScraper - [scraper.py:897] - _create_driver_internal - 嘗試方法3:使用系統 PATH 中的 chromedriver 2025-10-14 14:44:42 - INFO - WebScraper - [scraper.py:916] - _create_driver_internal - 找到 chromedriver: /usr/local/bin/chromedriver 2025-10-14 14:44:43 - INFO - WebScraper - [scraper.py:920] - _create_driver_internal - 使用系統 chromedriver 成功創建 WebDriver 2025-10-14 14:44:43 - INFO - WebScraper - [scraper.py:1099] - get_content - 使用 Selenium 訪問 URL: https://wednesdaystudio22.com/ 2025-10-14 14:44:44 - INFO - WebScraper - [scraper.py:1158] - get_content - 等待頁面基本加載完成: https://wednesdaystudio22.com/ 2025-10-14 14:44:44 - INFO - WebScraper - [scraper.py:1165] - get_content - 頁面body元素已加載 2025-10-14 14:44:44 - INFO - WebScraper - [scraper.py:1178] - get_content - 頁面加載狀態: complete 2025-10-14 14:44:44 - INFO - WebScraper - [scraper.py:1195] - get_content - 找到主要內容元素: main 2025-10-14 14:44:44 - INFO - WebScraper - [scraper.py:1206] - get_content - 頁面基本加載完成: https://wednesdaystudio22.com/ 2025-10-14 14:44:46 - INFO - WebScraper - [scraper.py:1610] - _detect_page_type - 檢測到的框架: jquery 2025-10-14 14:44:46 - INFO - WebScraper - [scraper.py:1216] - get_content - 檢測到頁面類型: ajax 2025-10-14 14:44:46 - INFO - WebScraper - [scraper.py:1224] - get_content - 檢測到AJAX內容,等待AJAX請求完成 2025-10-14 14:44:46 - INFO - WebScraper - [scraper.py:1777] - _wait_for_ajax_completion - jQuery AJAX 請求已完成 2025-10-14 14:44:46 - INFO - WebScraper - [scraper.py:1788] - _wait_for_ajax_completion - XHR 請求已完成 2025-10-14 14:44:48 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 2/21 2025-10-14 14:44:50 - INFO - WebScraper - [scraper.py:1238] - get_content - 初始可見元素數量: 117 2025-10-14 14:44:52 - INFO - WebScraper - [scraper.py:1248] - get_content - 元素數量穩定: 117,內容可能已加載完成 2025-10-14 14:44:52 - INFO - WebScraper - [scraper.py:1255] - get_content - 等待可能的動態內容... 2025-10-14 14:44:58 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 2/21 2025-10-14 14:45:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:45:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:45:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:45:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:45:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:45:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:45:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:45:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:45:09 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 2/21 2025-10-14 14:45:10 - INFO - WebScraper - [scraper.py:1321] - get_content - 成功獲取 URL 內容: https://wednesdaystudio22.com/ (實際 URL: https://wednesdaystudio22.com/) 2025-10-14 14:45:10 - INFO - WebScraper - [scraper.py:1519] - get_content - 清理在 get_content 方法中創建的 WebDriver 實例 2025-10-14 14:45:10 - INFO - WebScraper - [scraper.py:105] - driver - 在設置新WebDriver前關閉舊實例 2025-10-14 14:45:10 - INFO - WebScraper - [scraper.py:249] - close_driver - 線程 138621577471104: 關閉 WebDriver 實例 2025-10-14 14:45:10 - INFO - WebScraper - [scraper.py:277] - close_driver - WebDriver 已成功關閉 2025-10-14 14:45:10 - INFO - WebScraper - [scraper.py:307] - close_driver - 已執行 Python 垃圾回收 2025-10-14 14:45:10 - INFO - WebScraper - [scraper.py:1526] - get_content - WebDriver 實例已成功返回到池中 2025-10-14 14:45:10 - INFO - WebScraper - [scraper.py:1931] - extract_text_from_html - 開始從HTML中提取文本,HTML長度: 142288 字節 2025-10-14 14:45:10 - INFO - WebScraper - [scraper.py:1943] - extract_text_from_html - 使用 trafilatura 成功提取文本,長度: 927 字節 2025-10-14 14:45:10 - INFO - WebScraper - [scraper.py:1968] - extract_text_from_html - 使用 BeautifulSoup 基本提取成功,長度: 689 字節 2025-10-14 14:45:10 - INFO - WebScraper - [scraper.py:2017] - extract_text_from_html - 使用 BeautifulSoup 針對性提取成功,長度: 221 字節 2025-10-14 14:45:10 - INFO - WebScraper - [scraper.py:2114] - extract_text_from_html - 成功提取結構化數據,長度: 241 字節 2025-10-14 14:45:10 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 trafilatura 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:45:10 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_basic 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:45:10 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_targeted 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:45:10 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 structured_data 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:45:10 - INFO - WebScraper - [scraper.py:2152] - extract_text_from_html - 根據聯絡信息分數 2 選擇 beautifulsoup_basic 作為最佳結果 2025-10-14 14:45:10 - INFO - WebScraper - [scraper.py:2177] - extract_text_from_html - 已成功提取文本,總長度: 942 字節,約 139 個詞,107 行 2025-10-14 14:45:10 - INFO - WebScraper - [scraper.py:2178] - extract_text_from_html - 提取的最終文本內容: 跳至主要內容 登入/註冊 LINE登入 LINE登入 登入 註冊 登入/註冊 搜尋 購物車 NT$ 0 0 選單 購物車 NT$ 0 0 new arrivals 新品上架 Nivelle NT$ 590 Lune NT$ 590 Vittra NT$ 590 Quillie NT$ 590 best sellers 熱門商品 Nivelle NT$ 590 Lune NT$ 590 Vittra NT$ 590 Quillie NT$ 590 categories 飾品分類 項鍊/necklaces 手鍊/bracelets 戒指/rings 腰鏈/chain belts 關於我們 品牌故事 購物相關 購物須知 退換貨須知 隱私權政策 聯絡我們 Instagram|wednesday___studio Email | wednesdaystudio2022@gmail.com 溫飾工作室 60076339 Instagram Line Envelope Copyright @2025 ᴡᴇᴅɴᴇsᴅᴀʏ 保留一切權利|本網站由 3C翔合作建置 登入 註冊 body::-webkit-scrollbar { width: 7px; } body::-webkit-scrollbar-track { border-radius: 10px; background: #f0f0f0; } body::-webkit-scrollbar-thumb { border-radius: 50px; background: #dfdbdb } 首頁 全部商品 聯絡我們 額外的結構化內容: • Nivelle NT$590 • Lune NT$590 • Vittra NT$590 • Quillie NT$590 • Nivelle NT$590 • Lune NT$590 • Vittra NT$590 • Quillie NT$590 • 購物須知 • 退換貨須知 • 隱私權政策 • Instagram|wednesday___studio • Email | wednesdaystudio2022@gmail.com • 溫飾工作室 60076339 2025-10-14 14:45:10 - INFO - main - [url_processor.py:253] - process_url - 更新 UI 審核進度(URL ID=74):已完成 3/21 個網址 2025-10-14 14:45:10 - INFO - main - [url_processor.py:190] - process_url - 處理子頁面: https://wednesdaystudio22.com/product/nivelle/ 2025-10-14 14:45:10 - INFO - main - [url_processor.py:198] - process_url - 嘗試獲取子頁面內容 (嘗試 1/2, force_new_driver=False) 2025-10-14 14:45:10 - INFO - WebScraper - [scraper.py:1004] - get_content - 正在獲取網頁內容: https://wednesdaystudio22.com/product/nivelle/, use_selenium=True, proxy=False, force_new_driver=False 2025-10-14 14:45:10 - INFO - WebScraper - [scraper.py:1035] - get_content - 設置頁面加載超時:20 秒 2025-10-14 14:45:10 - INFO - WebScraper - [scraper.py:1053] - get_content - 嘗試獲取 https://wednesdaystudio22.com/product/nivelle/ 的第 1/3 次請求 2025-10-14 14:45:10 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13536d0e90>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/204979a6e43739145aee81449c7e8451 2025-10-14 14:45:10 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13533d8d90>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/204979a6e43739145aee81449c7e8451 2025-10-14 14:45:10 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e1353364510>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/204979a6e43739145aee81449c7e8451 2025-10-14 14:45:10 - ERROR - WebScraper - [scraper.py:1082] - get_content - 通過實例池管理器創建WebDriver失敗: cannot create weak reference to 'NoneType' object 2025-10-14 14:45:10 - INFO - WebScraper - [scraper.py:857] - _create_driver_internal - 正在創建 WebDriver 實例... 2025-10-14 14:45:10 - INFO - WebScraper - [scraper.py:861] - _create_driver_internal - 嘗試方法1:使用智能路徑發現機制 2025-10-14 14:45:10 - ERROR - WebScraper - [scraper.py:878] - _create_driver_internal - 智能路徑搜索失敗: 'WebScraper' object has no attribute 'smart_find_chrome_paths' 2025-10-14 14:45:10 - INFO - WebScraper - [scraper.py:882] - _create_driver_internal - 嘗試方法2:使用 webdriver-manager 自動管理 2025-10-14 14:45:10 - INFO - WDM - [logger.py:11] - log - ====== WebDriver manager ====== 2025-10-14 14:45:10 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:45:11 - INFO - WDM - [logger.py:11] - log - About to download new driver from https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip 2025-10-14 14:45:11 - INFO - WDM - [logger.py:11] - log - Driver downloading response is 200 2025-10-14 14:45:11 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:45:11 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:45:11 - INFO - WDM - [logger.py:11] - log - Driver has been saved in cache [/opt/urlanalyze/.wdm/drivers/chromedriver/linux64/114.0.5735.90] 2025-10-14 14:45:11 - ERROR - WebScraper - [scraper.py:893] - _create_driver_internal - webdriver-manager 方法失敗: Message: unknown error: Chrome failed to start: exited abnormally. (unknown error: DevToolsActivePort file doesn't exist) (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.) Stacktrace: #0 0x58497edc74e3 <unknown> #1 0x58497eaf6c76 <unknown> #2 0x58497eb1fd78 <unknown> #3 0x58497eb1c029 <unknown> #4 0x58497eb5accc <unknown> #5 0x58497eb5a47f <unknown> #6 0x58497eb51de3 <unknown> #7 0x58497eb272dd <unknown> #8 0x58497eb2834e <unknown> #9 0x58497ed873e4 <unknown> #10 0x58497ed8b3d7 <unknown> #11 0x58497ed95b20 <unknown> #12 0x58497ed8c023 <unknown> #13 0x58497ed5a1aa <unknown> #14 0x58497edb06b8 <unknown> #15 0x58497edb0847 <unknown> #16 0x58497edc0243 <unknown> #17 0x706f1d694ac3 <unknown> 2025-10-14 14:45:11 - INFO - WebScraper - [scraper.py:897] - _create_driver_internal - 嘗試方法3:使用系統 PATH 中的 chromedriver 2025-10-14 14:45:11 - INFO - WebScraper - [scraper.py:916] - _create_driver_internal - 找到 chromedriver: /usr/local/bin/chromedriver 2025-10-14 14:45:12 - INFO - WebScraper - [scraper.py:920] - _create_driver_internal - 使用系統 chromedriver 成功創建 WebDriver 2025-10-14 14:45:12 - INFO - WebScraper - [scraper.py:1099] - get_content - 使用 Selenium 訪問 URL: https://wednesdaystudio22.com/product/nivelle/ 2025-10-14 14:45:13 - INFO - WebScraper - [scraper.py:1158] - get_content - 等待頁面基本加載完成: https://wednesdaystudio22.com/product/nivelle/ 2025-10-14 14:45:13 - INFO - WebScraper - [scraper.py:1165] - get_content - 頁面body元素已加載 2025-10-14 14:45:13 - INFO - WebScraper - [scraper.py:1178] - get_content - 頁面加載狀態: complete 2025-10-14 14:45:13 - INFO - WebScraper - [scraper.py:1195] - get_content - 找到主要內容元素: main 2025-10-14 14:45:13 - INFO - WebScraper - [scraper.py:1206] - get_content - 頁面基本加載完成: https://wednesdaystudio22.com/product/nivelle/ 2025-10-14 14:45:15 - INFO - WebScraper - [scraper.py:1610] - _detect_page_type - 檢測到的框架: jquery 2025-10-14 14:45:15 - INFO - WebScraper - [scraper.py:1216] - get_content - 檢測到頁面類型: ajax 2025-10-14 14:45:15 - INFO - WebScraper - [scraper.py:1224] - get_content - 檢測到AJAX內容,等待AJAX請求完成 2025-10-14 14:45:15 - INFO - WebScraper - [scraper.py:1777] - _wait_for_ajax_completion - jQuery AJAX 請求已完成 2025-10-14 14:45:15 - INFO - WebScraper - [scraper.py:1788] - _wait_for_ajax_completion - XHR 請求已完成 2025-10-14 14:45:19 - INFO - WebScraper - [scraper.py:1238] - get_content - 初始可見元素數量: 120 2025-10-14 14:45:20 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 3/21 2025-10-14 14:45:21 - INFO - WebScraper - [scraper.py:1248] - get_content - 元素數量穩定: 120,內容可能已加載完成 2025-10-14 14:45:21 - INFO - WebScraper - [scraper.py:1255] - get_content - 等待可能的動態內容... 2025-10-14 14:45:30 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 3/21 2025-10-14 14:45:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:45:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:45:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:45:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 1/5, 隊列大小 0, 總處理任務 1, 記憶體 199.2MB, CPU 0.0% 2025-10-14 14:45:39 - INFO - WebScraper - [scraper.py:1321] - get_content - 成功獲取 URL 內容: https://wednesdaystudio22.com/product/nivelle/ (實際 URL: https://wednesdaystudio22.com/product/nivelle/) 2025-10-14 14:45:39 - INFO - WebScraper - [scraper.py:1519] - get_content - 清理在 get_content 方法中創建的 WebDriver 實例 2025-10-14 14:45:39 - INFO - WebScraper - [scraper.py:105] - driver - 在設置新WebDriver前關閉舊實例 2025-10-14 14:45:39 - INFO - WebScraper - [scraper.py:249] - close_driver - 線程 138621577471104: 關閉 WebDriver 實例 2025-10-14 14:45:39 - INFO - WebScraper - [scraper.py:277] - close_driver - WebDriver 已成功關閉 2025-10-14 14:45:39 - INFO - WebScraper - [scraper.py:307] - close_driver - 已執行 Python 垃圾回收 2025-10-14 14:45:39 - INFO - WebScraper - [scraper.py:1526] - get_content - WebDriver 實例已成功返回到池中 2025-10-14 14:45:39 - INFO - WebScraper - [scraper.py:1931] - extract_text_from_html - 開始從HTML中提取文本,HTML長度: 146217 字節 2025-10-14 14:45:39 - INFO - WebScraper - [scraper.py:1943] - extract_text_from_html - 使用 trafilatura 成功提取文本,長度: 453 字節 2025-10-14 14:45:39 - INFO - WebScraper - [scraper.py:1968] - extract_text_from_html - 使用 BeautifulSoup 基本提取成功,長度: 773 字節 2025-10-14 14:45:39 - INFO - WebScraper - [scraper.py:2017] - extract_text_from_html - 使用 BeautifulSoup 針對性提取成功,長度: 361 字節 2025-10-14 14:45:39 - INFO - WebScraper - [scraper.py:2114] - extract_text_from_html - 成功提取結構化數據,長度: 182 字節 2025-10-14 14:45:39 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 trafilatura 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:45:39 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_basic 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:45:39 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_targeted 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:45:39 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 structured_data 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:45:39 - INFO - WebScraper - [scraper.py:2152] - extract_text_from_html - 根據聯絡信息分數 2 選擇 beautifulsoup_basic 作為最佳結果 2025-10-14 14:45:39 - INFO - WebScraper - [scraper.py:2177] - extract_text_from_html - 已成功提取文本,總長度: 967 字節,約 123 個詞,94 行 2025-10-14 14:45:39 - INFO - WebScraper - [scraper.py:2178] - extract_text_from_html - 提取的最終文本內容: 跳至主要內容 登入/註冊 LINE登入 LINE登入 登入 註冊 登入/註冊 搜尋 購物車 NT$ 0 0 選單 購物車 NT$ 0 0 Nivelle NT$ 590 5 件庫存 描述 Nivelle 冬夜裡的微弱星光💫 以冷白和銀灰色為主,圓珠、切割玻璃珠和金屬珠錯落排列,彷彿光在雪中折射出柔軟的閃爍 項鍊側邊藏有一顆小星星 低調卻充滿存在感,就像雪夜中唯一的那一點光 項鍊在脖子與鎖骨間貼合,呈現出乾淨的銀白感 材質與長度 銅鍍珠、玻璃珠、貝殼珍珠、日本米珠、棉花珍珠、鈦鋼五金配件 項鍊長度(不含延長鏈): 銅鍍材質接觸到汗水後較容易氧化,建議每次佩戴完都擦拭 @wednesday studio 相關商品 poetry NT$ 590 morandi NT$ 590 gentle NT$ 590 Gummy bears NT$ 490 關於我們 品牌故事 購物相關 購物須知 退換貨須知 隱私權政策 聯絡我們 Instagram|wednesday___studio Email | wednesdaystudio2022@gmail.com 溫飾工作室 60076339 Instagram Line Envelope Copyright @2025 ᴡᴇᴅɴᴇsᴅᴀʏ 保留一切權利|本網站由 3C翔合作建置 登入 註冊 body::-webkit-scrollbar { width: 7px; } body::-webkit-scrollbar-track { border-radius: 10px; background: #f0f0f0; } body::-webkit-scrollbar-thumb { border-radius: 50px; background: #dfdbdb } 首頁 全部商品 聯絡我們 額外的結構化內容: • poetry NT$590 • morandi NT$590 • gentle NT$590 • Gummy bears NT$490 • 購物須知 • 退換貨須知 • 隱私權政策 • Instagram|wednesday___studio • Email | wednesdaystudio2022@gmail.com • 溫飾工作室 60076339 2025-10-14 14:45:39 - INFO - main - [url_processor.py:253] - process_url - 更新 UI 審核進度(URL ID=74):已完成 4/21 個網址 2025-10-14 14:45:39 - INFO - main - [url_processor.py:190] - process_url - 處理子頁面: https://wednesdaystudio22.com/return 2025-10-14 14:45:39 - INFO - main - [url_processor.py:198] - process_url - 嘗試獲取子頁面內容 (嘗試 1/2, force_new_driver=False) 2025-10-14 14:45:39 - INFO - WebScraper - [scraper.py:1004] - get_content - 正在獲取網頁內容: https://wednesdaystudio22.com/return, use_selenium=True, proxy=False, force_new_driver=False 2025-10-14 14:45:39 - INFO - WebScraper - [scraper.py:1035] - get_content - 設置頁面加載超時:20 秒 2025-10-14 14:45:39 - INFO - WebScraper - [scraper.py:1053] - get_content - 嘗試獲取 https://wednesdaystudio22.com/return 的第 1/3 次請求 2025-10-14 14:45:39 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e1352abf550>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/302f49cf3f06a7d592f425a22149e1e4 2025-10-14 14:45:39 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e135320b410>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/302f49cf3f06a7d592f425a22149e1e4 2025-10-14 14:45:39 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e1353209dd0>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/302f49cf3f06a7d592f425a22149e1e4 2025-10-14 14:45:39 - ERROR - WebScraper - [scraper.py:1082] - get_content - 通過實例池管理器創建WebDriver失敗: cannot create weak reference to 'NoneType' object 2025-10-14 14:45:39 - INFO - WebScraper - [scraper.py:857] - _create_driver_internal - 正在創建 WebDriver 實例... 2025-10-14 14:45:39 - INFO - WebScraper - [scraper.py:861] - _create_driver_internal - 嘗試方法1:使用智能路徑發現機制 2025-10-14 14:45:39 - ERROR - WebScraper - [scraper.py:878] - _create_driver_internal - 智能路徑搜索失敗: 'WebScraper' object has no attribute 'smart_find_chrome_paths' 2025-10-14 14:45:39 - INFO - WebScraper - [scraper.py:882] - _create_driver_internal - 嘗試方法2:使用 webdriver-manager 自動管理 2025-10-14 14:45:39 - INFO - WDM - [logger.py:11] - log - ====== WebDriver manager ====== 2025-10-14 14:45:40 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:45:40 - INFO - WDM - [logger.py:11] - log - About to download new driver from https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip 2025-10-14 14:45:40 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 4/21 2025-10-14 14:45:40 - INFO - WDM - [logger.py:11] - log - Driver downloading response is 200 2025-10-14 14:45:40 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:45:40 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:45:40 - INFO - WDM - [logger.py:11] - log - Driver has been saved in cache [/opt/urlanalyze/.wdm/drivers/chromedriver/linux64/114.0.5735.90] 2025-10-14 14:45:40 - ERROR - WebScraper - [scraper.py:893] - _create_driver_internal - webdriver-manager 方法失敗: Message: unknown error: Chrome failed to start: exited abnormally. (unknown error: DevToolsActivePort file doesn't exist) (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.) Stacktrace: #0 0x58ba18a254e3 <unknown> #1 0x58ba18754c76 <unknown> #2 0x58ba1877dd78 <unknown> #3 0x58ba1877a029 <unknown> #4 0x58ba187b8ccc <unknown> #5 0x58ba187b847f <unknown> #6 0x58ba187afde3 <unknown> #7 0x58ba187852dd <unknown> #8 0x58ba1878634e <unknown> #9 0x58ba189e53e4 <unknown> #10 0x58ba189e93d7 <unknown> #11 0x58ba189f3b20 <unknown> #12 0x58ba189ea023 <unknown> #13 0x58ba189b81aa <unknown> #14 0x58ba18a0e6b8 <unknown> #15 0x58ba18a0e847 <unknown> #16 0x58ba18a1e243 <unknown> #17 0x7889e1094ac3 <unknown> 2025-10-14 14:45:40 - INFO - WebScraper - [scraper.py:897] - _create_driver_internal - 嘗試方法3:使用系統 PATH 中的 chromedriver 2025-10-14 14:45:40 - INFO - WebScraper - [scraper.py:916] - _create_driver_internal - 找到 chromedriver: /usr/local/bin/chromedriver 2025-10-14 14:45:41 - INFO - WebScraper - [scraper.py:920] - _create_driver_internal - 使用系統 chromedriver 成功創建 WebDriver 2025-10-14 14:45:41 - INFO - WebScraper - [scraper.py:1099] - get_content - 使用 Selenium 訪問 URL: https://wednesdaystudio22.com/return 2025-10-14 14:45:45 - INFO - WebScraper - [scraper.py:1158] - get_content - 等待頁面基本加載完成: https://wednesdaystudio22.com/return 2025-10-14 14:45:45 - INFO - WebScraper - [scraper.py:1165] - get_content - 頁面body元素已加載 2025-10-14 14:45:45 - INFO - WebScraper - [scraper.py:1178] - get_content - 頁面加載狀態: complete 2025-10-14 14:45:45 - INFO - WebScraper - [scraper.py:1195] - get_content - 找到主要內容元素: main 2025-10-14 14:45:45 - INFO - WebScraper - [scraper.py:1206] - get_content - 頁面基本加載完成: https://wednesdaystudio22.com/return 2025-10-14 14:45:47 - INFO - WebScraper - [scraper.py:1610] - _detect_page_type - 檢測到的框架: jquery 2025-10-14 14:45:47 - INFO - WebScraper - [scraper.py:1216] - get_content - 檢測到頁面類型: ajax 2025-10-14 14:45:47 - INFO - WebScraper - [scraper.py:1224] - get_content - 檢測到AJAX內容,等待AJAX請求完成 2025-10-14 14:45:47 - INFO - WebScraper - [scraper.py:1777] - _wait_for_ajax_completion - jQuery AJAX 請求已完成 2025-10-14 14:45:47 - INFO - WebScraper - [scraper.py:1788] - _wait_for_ajax_completion - XHR 請求已完成 2025-10-14 14:45:50 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 4/21 2025-10-14 14:45:51 - INFO - WebScraper - [scraper.py:1238] - get_content - 初始可見元素數量: 80 2025-10-14 14:45:53 - INFO - WebScraper - [scraper.py:1248] - get_content - 元素數量穩定: 80,內容可能已加載完成 2025-10-14 14:45:53 - INFO - WebScraper - [scraper.py:1255] - get_content - 等待可能的動態內容... 2025-10-14 14:45:56 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:45:56 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:45:59 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:45:59 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:46:00 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 4/21 2025-10-14 14:46:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:46:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:46:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:46:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:46:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:46:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:46:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:46:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.09 秒,結果: 0 2025-10-14 14:46:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.08 秒,結果: 0 2025-10-14 14:46:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.10 秒,結果: 0 2025-10-14 14:46:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:46:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.07 秒,結果: 0 2025-10-14 14:46:10 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 4/21 2025-10-14 14:46:11 - INFO - WebScraper - [scraper.py:1321] - get_content - 成功獲取 URL 內容: https://wednesdaystudio22.com/return (實際 URL: https://wednesdaystudio22.com/return/) 2025-10-14 14:46:11 - INFO - WebScraper - [scraper.py:1519] - get_content - 清理在 get_content 方法中創建的 WebDriver 實例 2025-10-14 14:46:11 - INFO - WebScraper - [scraper.py:105] - driver - 在設置新WebDriver前關閉舊實例 2025-10-14 14:46:11 - INFO - WebScraper - [scraper.py:249] - close_driver - 線程 138621577471104: 關閉 WebDriver 實例 2025-10-14 14:46:11 - INFO - WebScraper - [scraper.py:277] - close_driver - WebDriver 已成功關閉 2025-10-14 14:46:11 - INFO - WebScraper - [scraper.py:307] - close_driver - 已執行 Python 垃圾回收 2025-10-14 14:46:11 - INFO - WebScraper - [scraper.py:1526] - get_content - WebDriver 實例已成功返回到池中 2025-10-14 14:46:11 - INFO - WebScraper - [scraper.py:1931] - extract_text_from_html - 開始從HTML中提取文本,HTML長度: 124119 字節 2025-10-14 14:46:11 - INFO - WebScraper - [scraper.py:1943] - extract_text_from_html - 使用 trafilatura 成功提取文本,長度: 402 字節 2025-10-14 14:46:11 - INFO - WebScraper - [scraper.py:1968] - extract_text_from_html - 使用 BeautifulSoup 基本提取成功,長度: 870 字節 2025-10-14 14:46:11 - INFO - WebScraper - [scraper.py:2017] - extract_text_from_html - 使用 BeautifulSoup 針對性提取成功,長度: 402 字節 2025-10-14 14:46:12 - INFO - WebScraper - [scraper.py:2114] - extract_text_from_html - 成功提取結構化數據,長度: 111 字節 2025-10-14 14:46:12 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 trafilatura 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:46:12 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_basic 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:46:12 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_targeted 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:46:12 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 structured_data 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:46:12 - INFO - WebScraper - [scraper.py:2152] - extract_text_from_html - 根據聯絡信息分數 2 選擇 beautifulsoup_basic 作為最佳結果 2025-10-14 14:46:12 - INFO - WebScraper - [scraper.py:2177] - extract_text_from_html - 已成功提取文本,總長度: 993 字節,約 110 個詞,70 行 2025-10-14 14:46:12 - INFO - WebScraper - [scraper.py:2178] - extract_text_from_html - 提取的最終文本內容: 跳至主要內容 登入/註冊 LINE登入 LINE登入 登入 註冊 登入/註冊 搜尋 購物車 NT$ 0 0 選單 購物車 NT$ 0 0 退換貨須知 • 商品為手工製作,每件皆有細微差異,非屬瑕疵範圍。 • 基於 個人衛生考量,飾品一經配戴或接觸皮膚後,恕不接受退換貨。 • 如收到商品有 明顯瑕疵或寄錯商品,請於 收到後 3 日內(含假日)拍照並聯繫我們,將協助辦理退換貨。 • 退回商品需保持 完整包裝、未使用狀態,若包裝或配件不完整,將影響退換貨權益。 • 因個人因素(不喜歡、與想像不同、尺寸不合等)恕不提供退換貨服務。 • 退換貨寄送過程中,請妥善包裝避免碰撞,如因包裝不良造成損壞,需由買方承擔責任。 維修服務 • 若項鍊或其他飾品於日常使用中出現 斷裂、毀損等情況,歡迎透過 IG 私訊聯繫我們,將視情況提供維修服務(可能需酌收材料或工本費)。 保養方式 • 建議避免長時間接觸水、香水、化學藥劑,以延長飾品壽命。 • 不配戴時,請收納於夾鏈袋或收納盒內,避免碰撞或氧化。 • 若飾品表面失去光澤,可用拭銀布或乾淨柔布輕輕擦拭。 關於我們 品牌故事 購物相關 購物須知 退換貨須知 隱私權政策 聯絡我們 Instagram|wednesday___studio Email | wednesdaystudio2022@gmail.com 溫飾工作室 60076339 Instagram Line Envelope Copyright @2025 ᴡᴇᴅɴᴇsᴅᴀʏ 保留一切權利|本網站由 3C翔合作建置 登入 註冊 body::-webkit-scrollbar { width: 7px; } body::-webkit-scrollbar-track { border-radius: 10px; background: #f0f0f0; } body::-webkit-scrollbar-thumb { border-radius: 50px; background: #dfdbdb } 首頁 全部商品 聯絡我們 額外的結構化內容: • 購物須知 • 退換貨須知 • 隱私權政策 • Instagram|wednesday___studio • Email | wednesdaystudio2022@gmail.com • 溫飾工作室 60076339 2025-10-14 14:46:12 - INFO - main - [url_processor.py:253] - process_url - 更新 UI 審核進度(URL ID=74):已完成 5/21 個網址 2025-10-14 14:46:12 - INFO - main - [url_processor.py:190] - process_url - 處理子頁面: https://wednesdaystudio22.com/cart/ 2025-10-14 14:46:12 - INFO - main - [url_processor.py:198] - process_url - 嘗試獲取子頁面內容 (嘗試 1/2, force_new_driver=False) 2025-10-14 14:46:12 - INFO - WebScraper - [scraper.py:1004] - get_content - 正在獲取網頁內容: https://wednesdaystudio22.com/cart/, use_selenium=True, proxy=False, force_new_driver=False 2025-10-14 14:46:12 - INFO - WebScraper - [scraper.py:1035] - get_content - 設置頁面加載超時:20 秒 2025-10-14 14:46:12 - INFO - WebScraper - [scraper.py:1053] - get_content - 嘗試獲取 https://wednesdaystudio22.com/cart/ 的第 1/3 次請求 2025-10-14 14:46:12 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13537a2910>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/cf83d0baad0087bb1d340c5bf5ad42f0 2025-10-14 14:46:12 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13537a3850>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/cf83d0baad0087bb1d340c5bf5ad42f0 2025-10-14 14:46:12 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13537a1450>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/cf83d0baad0087bb1d340c5bf5ad42f0 2025-10-14 14:46:12 - ERROR - WebScraper - [scraper.py:1082] - get_content - 通過實例池管理器創建WebDriver失敗: cannot create weak reference to 'NoneType' object 2025-10-14 14:46:12 - INFO - WebScraper - [scraper.py:857] - _create_driver_internal - 正在創建 WebDriver 實例... 2025-10-14 14:46:12 - INFO - WebScraper - [scraper.py:861] - _create_driver_internal - 嘗試方法1:使用智能路徑發現機制 2025-10-14 14:46:12 - ERROR - WebScraper - [scraper.py:878] - _create_driver_internal - 智能路徑搜索失敗: 'WebScraper' object has no attribute 'smart_find_chrome_paths' 2025-10-14 14:46:12 - INFO - WebScraper - [scraper.py:882] - _create_driver_internal - 嘗試方法2:使用 webdriver-manager 自動管理 2025-10-14 14:46:12 - INFO - WDM - [logger.py:11] - log - ====== WebDriver manager ====== 2025-10-14 14:46:12 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:46:12 - INFO - WDM - [logger.py:11] - log - About to download new driver from https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip 2025-10-14 14:46:12 - INFO - WDM - [logger.py:11] - log - Driver downloading response is 200 2025-10-14 14:46:12 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:46:12 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:46:12 - INFO - WDM - [logger.py:11] - log - Driver has been saved in cache [/opt/urlanalyze/.wdm/drivers/chromedriver/linux64/114.0.5735.90] 2025-10-14 14:46:13 - ERROR - WebScraper - [scraper.py:893] - _create_driver_internal - webdriver-manager 方法失敗: Message: unknown error: Chrome failed to start: exited abnormally. (unknown error: DevToolsActivePort file doesn't exist) (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.) Stacktrace: #0 0x57bdcf3fd4e3 <unknown> #1 0x57bdcf12cc76 <unknown> #2 0x57bdcf155d78 <unknown> #3 0x57bdcf152029 <unknown> #4 0x57bdcf190ccc <unknown> #5 0x57bdcf19047f <unknown> #6 0x57bdcf187de3 <unknown> #7 0x57bdcf15d2dd <unknown> #8 0x57bdcf15e34e <unknown> #9 0x57bdcf3bd3e4 <unknown> #10 0x57bdcf3c13d7 <unknown> #11 0x57bdcf3cbb20 <unknown> #12 0x57bdcf3c2023 <unknown> #13 0x57bdcf3901aa <unknown> #14 0x57bdcf3e66b8 <unknown> #15 0x57bdcf3e6847 <unknown> #16 0x57bdcf3f6243 <unknown> #17 0x71ae15094ac3 <unknown> 2025-10-14 14:46:13 - INFO - WebScraper - [scraper.py:897] - _create_driver_internal - 嘗試方法3:使用系統 PATH 中的 chromedriver 2025-10-14 14:46:13 - INFO - WebScraper - [scraper.py:916] - _create_driver_internal - 找到 chromedriver: /usr/local/bin/chromedriver 2025-10-14 14:46:13 - INFO - WebScraper - [scraper.py:920] - _create_driver_internal - 使用系統 chromedriver 成功創建 WebDriver 2025-10-14 14:46:13 - INFO - WebScraper - [scraper.py:1099] - get_content - 使用 Selenium 訪問 URL: https://wednesdaystudio22.com/cart/ 2025-10-14 14:46:15 - INFO - WebScraper - [scraper.py:1158] - get_content - 等待頁面基本加載完成: https://wednesdaystudio22.com/cart/ 2025-10-14 14:46:15 - INFO - WebScraper - [scraper.py:1165] - get_content - 頁面body元素已加載 2025-10-14 14:46:15 - INFO - WebScraper - [scraper.py:1178] - get_content - 頁面加載狀態: complete 2025-10-14 14:46:15 - INFO - WebScraper - [scraper.py:1195] - get_content - 找到主要內容元素: main 2025-10-14 14:46:15 - INFO - WebScraper - [scraper.py:1206] - get_content - 頁面基本加載完成: https://wednesdaystudio22.com/cart/ 2025-10-14 14:46:17 - INFO - WebScraper - [scraper.py:1610] - _detect_page_type - 檢測到的框架: jquery 2025-10-14 14:46:17 - INFO - WebScraper - [scraper.py:1216] - get_content - 檢測到頁面類型: ajax 2025-10-14 14:46:17 - INFO - WebScraper - [scraper.py:1224] - get_content - 檢測到AJAX內容,等待AJAX請求完成 2025-10-14 14:46:17 - INFO - WebScraper - [scraper.py:1777] - _wait_for_ajax_completion - jQuery AJAX 請求已完成 2025-10-14 14:46:17 - INFO - WebScraper - [scraper.py:1788] - _wait_for_ajax_completion - XHR 請求已完成 2025-10-14 14:46:20 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 5/21 2025-10-14 14:46:21 - INFO - WebScraper - [scraper.py:1238] - get_content - 初始可見元素數量: 70 2025-10-14 14:46:23 - INFO - WebScraper - [scraper.py:1248] - get_content - 元素數量穩定: 70,內容可能已加載完成 2025-10-14 14:46:23 - INFO - WebScraper - [scraper.py:1255] - get_content - 等待可能的動態內容... 2025-10-14 14:46:30 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 5/21 2025-10-14 14:46:40 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 5/21 2025-10-14 14:46:42 - INFO - WebScraper - [scraper.py:1321] - get_content - 成功獲取 URL 內容: https://wednesdaystudio22.com/cart/ (實際 URL: https://wednesdaystudio22.com/cart/) 2025-10-14 14:46:42 - INFO - WebScraper - [scraper.py:1519] - get_content - 清理在 get_content 方法中創建的 WebDriver 實例 2025-10-14 14:46:42 - INFO - WebScraper - [scraper.py:105] - driver - 在設置新WebDriver前關閉舊實例 2025-10-14 14:46:42 - INFO - WebScraper - [scraper.py:249] - close_driver - 線程 138621577471104: 關閉 WebDriver 實例 2025-10-14 14:46:42 - INFO - WebScraper - [scraper.py:277] - close_driver - WebDriver 已成功關閉 2025-10-14 14:46:42 - INFO - WebScraper - [scraper.py:307] - close_driver - 已執行 Python 垃圾回收 2025-10-14 14:46:42 - INFO - WebScraper - [scraper.py:1526] - get_content - WebDriver 實例已成功返回到池中 2025-10-14 14:46:42 - INFO - WebScraper - [scraper.py:1931] - extract_text_from_html - 開始從HTML中提取文本,HTML長度: 191408 字節 2025-10-14 14:46:42 - INFO - WebScraper - [scraper.py:1943] - extract_text_from_html - 使用 trafilatura 成功提取文本,長度: 712 字節 2025-10-14 14:46:42 - INFO - WebScraper - [scraper.py:1968] - extract_text_from_html - 使用 BeautifulSoup 基本提取成功,長度: 474 字節 2025-10-14 14:46:42 - INFO - WebScraper - [scraper.py:2114] - extract_text_from_html - 成功提取結構化數據,長度: 111 字節 2025-10-14 14:46:42 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 trafilatura 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:46:42 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_basic 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:46:42 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 structured_data 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:46:42 - INFO - WebScraper - [scraper.py:2152] - extract_text_from_html - 根據聯絡信息分數 2 選擇 beautifulsoup_basic 作為最佳結果 2025-10-14 14:46:42 - INFO - WebScraper - [scraper.py:2177] - extract_text_from_html - 已成功提取文本,總長度: 597 字節,約 77 個詞,56 行 2025-10-14 14:46:42 - INFO - WebScraper - [scraper.py:2178] - extract_text_from_html - 提取的最終文本內容: 跳至主要內容 登入/註冊 LINE登入 LINE登入 登入 註冊 登入/註冊 搜尋 購物車 NT$ 0 0 選單 購物車 NT$ 0 0 您的購物車裡還沒有任何商品。 回到商店 關於我們 品牌故事 購物相關 購物須知 退換貨須知 隱私權政策 聯絡我們 Instagram|wednesday___studio Email | wednesdaystudio2022@gmail.com 溫飾工作室 60076339 Instagram Line Envelope Copyright @2025 ᴡᴇᴅɴᴇsᴅᴀʏ 保留一切權利|本網站由 3C翔合作建置 登入 註冊 body::-webkit-scrollbar { width: 7px; } body::-webkit-scrollbar-track { border-radius: 10px; background: #f0f0f0; } body::-webkit-scrollbar-thumb { border-radius: 50px; background: #dfdbdb } 額外的結構化內容: • 購物須知 • 退換貨須知 • 隱私權政策 • Instagram|wednesday___studio • Email | wednesdaystudio2022@gmail.com • 溫飾工作室 60076339 2025-10-14 14:46:42 - INFO - main - [url_processor.py:253] - process_url - 更新 UI 審核進度(URL ID=74):已完成 6/21 個網址 2025-10-14 14:46:42 - INFO - main - [url_processor.py:190] - process_url - 處理子頁面: https://wednesdaystudio22.com/product-category/%e6%9c%80%e6%96%b0%e5%95%86%e5%93%81-%ef%bd%9c-new-arrivals/ 2025-10-14 14:46:42 - INFO - main - [url_processor.py:198] - process_url - 嘗試獲取子頁面內容 (嘗試 1/2, force_new_driver=False) 2025-10-14 14:46:42 - INFO - WebScraper - [scraper.py:1004] - get_content - 正在獲取網頁內容: https://wednesdaystudio22.com/product-category/%e6%9c%80%e6%96%b0%e5%95%86%e5%93%81-%ef%bd%9c-new-arrivals/, use_selenium=True, proxy=False, force_new_driver=False 2025-10-14 14:46:42 - INFO - WebScraper - [scraper.py:1035] - get_content - 設置頁面加載超時:22 秒 2025-10-14 14:46:42 - INFO - WebScraper - [scraper.py:1053] - get_content - 嘗試獲取 https://wednesdaystudio22.com/product-category/%e6%9c%80%e6%96%b0%e5%95%86%e5%93%81-%ef%bd%9c-new-arrivals/ 的第 1/3 次請求 2025-10-14 14:46:42 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e135333e250>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/f5185d763bdcfa757d5bec6e56d04ea1 2025-10-14 14:46:42 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e1353653250>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/f5185d763bdcfa757d5bec6e56d04ea1 2025-10-14 14:46:42 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e1353650b10>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/f5185d763bdcfa757d5bec6e56d04ea1 2025-10-14 14:46:42 - ERROR - WebScraper - [scraper.py:1082] - get_content - 通過實例池管理器創建WebDriver失敗: cannot create weak reference to 'NoneType' object 2025-10-14 14:46:42 - INFO - WebScraper - [scraper.py:857] - _create_driver_internal - 正在創建 WebDriver 實例... 2025-10-14 14:46:42 - INFO - WebScraper - [scraper.py:861] - _create_driver_internal - 嘗試方法1:使用智能路徑發現機制 2025-10-14 14:46:42 - ERROR - WebScraper - [scraper.py:878] - _create_driver_internal - 智能路徑搜索失敗: 'WebScraper' object has no attribute 'smart_find_chrome_paths' 2025-10-14 14:46:42 - INFO - WebScraper - [scraper.py:882] - _create_driver_internal - 嘗試方法2:使用 webdriver-manager 自動管理 2025-10-14 14:46:42 - INFO - WDM - [logger.py:11] - log - ====== WebDriver manager ====== 2025-10-14 14:46:42 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:46:42 - INFO - WDM - [logger.py:11] - log - About to download new driver from https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip 2025-10-14 14:46:42 - INFO - WDM - [logger.py:11] - log - Driver downloading response is 200 2025-10-14 14:46:42 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:46:43 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:46:43 - INFO - WDM - [logger.py:11] - log - Driver has been saved in cache [/opt/urlanalyze/.wdm/drivers/chromedriver/linux64/114.0.5735.90] 2025-10-14 14:46:43 - ERROR - WebScraper - [scraper.py:893] - _create_driver_internal - webdriver-manager 方法失敗: Message: unknown error: Chrome failed to start: exited abnormally. (unknown error: DevToolsActivePort file doesn't exist) (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.) Stacktrace: #0 0x624dced1f4e3 <unknown> #1 0x624dcea4ec76 <unknown> #2 0x624dcea77d78 <unknown> #3 0x624dcea74029 <unknown> #4 0x624dceab2ccc <unknown> #5 0x624dceab247f <unknown> #6 0x624dceaa9de3 <unknown> #7 0x624dcea7f2dd <unknown> #8 0x624dcea8034e <unknown> #9 0x624dcecdf3e4 <unknown> #10 0x624dcece33d7 <unknown> #11 0x624dcecedb20 <unknown> #12 0x624dcece4023 <unknown> #13 0x624dcecb21aa <unknown> #14 0x624dced086b8 <unknown> #15 0x624dced08847 <unknown> #16 0x624dced18243 <unknown> #17 0x783e8cc94ac3 <unknown> 2025-10-14 14:46:43 - INFO - WebScraper - [scraper.py:897] - _create_driver_internal - 嘗試方法3:使用系統 PATH 中的 chromedriver 2025-10-14 14:46:43 - INFO - WebScraper - [scraper.py:916] - _create_driver_internal - 找到 chromedriver: /usr/local/bin/chromedriver 2025-10-14 14:46:43 - INFO - WebScraper - [scraper.py:920] - _create_driver_internal - 使用系統 chromedriver 成功創建 WebDriver 2025-10-14 14:46:43 - INFO - WebScraper - [scraper.py:1099] - get_content - 使用 Selenium 訪問 URL: https://wednesdaystudio22.com/product-category/%e6%9c%80%e6%96%b0%e5%95%86%e5%93%81-%ef%bd%9c-new-arrivals/ 2025-10-14 14:46:46 - INFO - WebScraper - [scraper.py:1158] - get_content - 等待頁面基本加載完成: https://wednesdaystudio22.com/product-category/%e6%9c%80%e6%96%b0%e5%95%86%e5%93%81-%ef%bd%9c-new-arrivals/ 2025-10-14 14:46:46 - INFO - WebScraper - [scraper.py:1165] - get_content - 頁面body元素已加載 2025-10-14 14:46:46 - INFO - WebScraper - [scraper.py:1178] - get_content - 頁面加載狀態: complete 2025-10-14 14:46:46 - INFO - WebScraper - [scraper.py:1195] - get_content - 找到主要內容元素: main 2025-10-14 14:46:46 - INFO - WebScraper - [scraper.py:1206] - get_content - 頁面基本加載完成: https://wednesdaystudio22.com/product-category/%e6%9c%80%e6%96%b0%e5%95%86%e5%93%81-%ef%bd%9c-new-arrivals/ 2025-10-14 14:46:48 - INFO - WebScraper - [scraper.py:1610] - _detect_page_type - 檢測到的框架: jquery 2025-10-14 14:46:48 - INFO - WebScraper - [scraper.py:1216] - get_content - 檢測到頁面類型: ajax 2025-10-14 14:46:48 - INFO - WebScraper - [scraper.py:1224] - get_content - 檢測到AJAX內容,等待AJAX請求完成 2025-10-14 14:46:48 - INFO - WebScraper - [scraper.py:1777] - _wait_for_ajax_completion - jQuery AJAX 請求已完成 2025-10-14 14:46:48 - INFO - WebScraper - [scraper.py:1788] - _wait_for_ajax_completion - XHR 請求已完成 2025-10-14 14:46:50 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 6/21 2025-10-14 14:46:52 - INFO - WebScraper - [scraper.py:1238] - get_content - 初始可見元素數量: 98 2025-10-14 14:46:54 - INFO - WebScraper - [scraper.py:1248] - get_content - 元素數量穩定: 98,內容可能已加載完成 2025-10-14 14:46:54 - INFO - WebScraper - [scraper.py:1255] - get_content - 等待可能的動態內容... 2025-10-14 14:46:59 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:46:59 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:46:59 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:46:59 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:47:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:47:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:47:00 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 6/21 2025-10-14 14:47:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:47:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:47:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:47:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:47:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 1/5, 隊列大小 0, 總處理任務 1, 記憶體 200.7MB, CPU 0.0% 2025-10-14 14:47:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:47:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:47:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:47:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:47:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:47:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:47:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:47:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:47:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:47:10 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 6/21 2025-10-14 14:47:12 - INFO - WebScraper - [scraper.py:1321] - get_content - 成功獲取 URL 內容: https://wednesdaystudio22.com/product-category/%e6%9c%80%e6%96%b0%e5%95%86%e5%93%81-%ef%bd%9c-new-arrivals/ (實際 URL: https://wednesdaystudio22.com/product-category/%e6%9c%80%e6%96%b0%e5%95%86%e5%93%81-%ef%bd%9c-new-arrivals/) 2025-10-14 14:47:12 - INFO - WebScraper - [scraper.py:1519] - get_content - 清理在 get_content 方法中創建的 WebDriver 實例 2025-10-14 14:47:12 - INFO - WebScraper - [scraper.py:105] - driver - 在設置新WebDriver前關閉舊實例 2025-10-14 14:47:12 - INFO - WebScraper - [scraper.py:249] - close_driver - 線程 138621577471104: 關閉 WebDriver 實例 2025-10-14 14:47:12 - INFO - WebScraper - [scraper.py:277] - close_driver - WebDriver 已成功關閉 2025-10-14 14:47:12 - INFO - WebScraper - [scraper.py:307] - close_driver - 已執行 Python 垃圾回收 2025-10-14 14:47:12 - INFO - WebScraper - [scraper.py:1526] - get_content - WebDriver 實例已成功返回到池中 2025-10-14 14:47:12 - INFO - WebScraper - [scraper.py:1931] - extract_text_from_html - 開始從HTML中提取文本,HTML長度: 118019 字節 2025-10-14 14:47:12 - INFO - WebScraper - [scraper.py:1943] - extract_text_from_html - 使用 trafilatura 成功提取文本,長度: 717 字節 2025-10-14 14:47:12 - INFO - WebScraper - [scraper.py:1968] - extract_text_from_html - 使用 BeautifulSoup 基本提取成功,長度: 639 字節 2025-10-14 14:47:12 - INFO - WebScraper - [scraper.py:2114] - extract_text_from_html - 成功提取結構化數據,長度: 288 字節 2025-10-14 14:47:12 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 trafilatura 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:47:12 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_basic 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:47:12 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 structured_data 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:47:12 - INFO - WebScraper - [scraper.py:2152] - extract_text_from_html - 根據聯絡信息分數 2 選擇 beautifulsoup_basic 作為最佳結果 2025-10-14 14:47:12 - INFO - WebScraper - [scraper.py:2177] - extract_text_from_html - 已成功提取文本,總長度: 939 字節,約 146 個詞,104 行 2025-10-14 14:47:12 - INFO - WebScraper - [scraper.py:2178] - extract_text_from_html - 提取的最終文本內容: 跳至主要內容 登入/註冊 LINE登入 LINE登入 登入 註冊 登入/註冊 搜尋 購物車 NT$ 0 0 選單 購物車 NT$ 0 0 找不到符合您選擇的商品 商品分類 熱門商品 | best seller 5 5 個產品 所有商品 | ALL 46 46 個產品 項鍊 | necklaces 46 46 個產品 最新商品 Nivelle NT$ 590 Lune NT$ 590 Vittra NT$ 590 Quillie NT$ 590 Ethereal NT$ 590 關於我們 品牌故事 購物相關 購物須知 退換貨須知 隱私權政策 聯絡我們 Instagram|wednesday___studio Email | wednesdaystudio2022@gmail.com 溫飾工作室 60076339 Instagram Line Envelope Copyright @2025 ᴡᴇᴅɴᴇsᴅᴀʏ 保留一切權利|本網站由 3C翔合作建置 登入 註冊 body::-webkit-scrollbar { width: 7px; } body::-webkit-scrollbar-track { border-radius: 10px; background: #f0f0f0; } body::-webkit-scrollbar-thumb { border-radius: 50px; background: #dfdbdb } 首頁 全部商品 聯絡我們 額外的結構化內容: • 熱門商品 | best seller55 個產品 • 所有商品 | ALL4646 個產品 • 項鍊 | necklaces4646 個產品 • Nivelle NT$590 • Lune NT$590 • Vittra NT$590 • Quillie NT$590 • Ethereal NT$590 • 購物須知 • 退換貨須知 • 隱私權政策 • Instagram|wednesday___studio • Email | wednesdaystudio2022@gmail.com • 溫飾工作室 60076339 2025-10-14 14:47:12 - INFO - main - [url_processor.py:253] - process_url - 更新 UI 審核進度(URL ID=74):已完成 7/21 個網址 2025-10-14 14:47:12 - INFO - main - [url_processor.py:190] - process_url - 處理子頁面: https://wednesdaystudio22.com/product-category/%e8%85%b0%e9%8f%88-chain-belts/ 2025-10-14 14:47:12 - INFO - main - [url_processor.py:198] - process_url - 嘗試獲取子頁面內容 (嘗試 1/2, force_new_driver=False) 2025-10-14 14:47:12 - INFO - WebScraper - [scraper.py:1004] - get_content - 正在獲取網頁內容: https://wednesdaystudio22.com/product-category/%e8%85%b0%e9%8f%88-chain-belts/, use_selenium=True, proxy=False, force_new_driver=False 2025-10-14 14:47:12 - INFO - WebScraper - [scraper.py:1035] - get_content - 設置頁面加載超時:21 秒 2025-10-14 14:47:12 - INFO - WebScraper - [scraper.py:1053] - get_content - 嘗試獲取 https://wednesdaystudio22.com/product-category/%e8%85%b0%e9%8f%88-chain-belts/ 的第 1/3 次請求 2025-10-14 14:47:12 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e1353745650>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/7c2b22df695f73e091c07d2cbdb360bc 2025-10-14 14:47:12 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e1353549bd0>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/7c2b22df695f73e091c07d2cbdb360bc 2025-10-14 14:47:12 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e135354a450>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/7c2b22df695f73e091c07d2cbdb360bc 2025-10-14 14:47:12 - ERROR - WebScraper - [scraper.py:1082] - get_content - 通過實例池管理器創建WebDriver失敗: cannot create weak reference to 'NoneType' object 2025-10-14 14:47:12 - INFO - WebScraper - [scraper.py:857] - _create_driver_internal - 正在創建 WebDriver 實例... 2025-10-14 14:47:12 - INFO - WebScraper - [scraper.py:861] - _create_driver_internal - 嘗試方法1:使用智能路徑發現機制 2025-10-14 14:47:12 - ERROR - WebScraper - [scraper.py:878] - _create_driver_internal - 智能路徑搜索失敗: 'WebScraper' object has no attribute 'smart_find_chrome_paths' 2025-10-14 14:47:12 - INFO - WebScraper - [scraper.py:882] - _create_driver_internal - 嘗試方法2:使用 webdriver-manager 自動管理 2025-10-14 14:47:12 - INFO - WDM - [logger.py:11] - log - ====== WebDriver manager ====== 2025-10-14 14:47:12 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:47:13 - INFO - WDM - [logger.py:11] - log - About to download new driver from https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip 2025-10-14 14:47:13 - INFO - WDM - [logger.py:11] - log - Driver downloading response is 200 2025-10-14 14:47:13 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:47:13 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:47:13 - INFO - WDM - [logger.py:11] - log - Driver has been saved in cache [/opt/urlanalyze/.wdm/drivers/chromedriver/linux64/114.0.5735.90] 2025-10-14 14:47:13 - ERROR - WebScraper - [scraper.py:893] - _create_driver_internal - webdriver-manager 方法失敗: Message: unknown error: Chrome failed to start: exited abnormally. (unknown error: DevToolsActivePort file doesn't exist) (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.) Stacktrace: #0 0x5a475ea5d4e3 <unknown> #1 0x5a475e78cc76 <unknown> #2 0x5a475e7b5d78 <unknown> #3 0x5a475e7b2029 <unknown> #4 0x5a475e7f0ccc <unknown> #5 0x5a475e7f047f <unknown> #6 0x5a475e7e7de3 <unknown> #7 0x5a475e7bd2dd <unknown> #8 0x5a475e7be34e <unknown> #9 0x5a475ea1d3e4 <unknown> #10 0x5a475ea213d7 <unknown> #11 0x5a475ea2bb20 <unknown> #12 0x5a475ea22023 <unknown> #13 0x5a475e9f01aa <unknown> #14 0x5a475ea466b8 <unknown> #15 0x5a475ea46847 <unknown> #16 0x5a475ea56243 <unknown> #17 0x729a6dc94ac3 <unknown> 2025-10-14 14:47:13 - INFO - WebScraper - [scraper.py:897] - _create_driver_internal - 嘗試方法3:使用系統 PATH 中的 chromedriver 2025-10-14 14:47:13 - INFO - WebScraper - [scraper.py:916] - _create_driver_internal - 找到 chromedriver: /usr/local/bin/chromedriver 2025-10-14 14:47:14 - INFO - WebScraper - [scraper.py:920] - _create_driver_internal - 使用系統 chromedriver 成功創建 WebDriver 2025-10-14 14:47:14 - INFO - WebScraper - [scraper.py:1099] - get_content - 使用 Selenium 訪問 URL: https://wednesdaystudio22.com/product-category/%e8%85%b0%e9%8f%88-chain-belts/ 2025-10-14 14:47:18 - INFO - WebScraper - [scraper.py:1158] - get_content - 等待頁面基本加載完成: https://wednesdaystudio22.com/product-category/%e8%85%b0%e9%8f%88-chain-belts/ 2025-10-14 14:47:18 - INFO - WebScraper - [scraper.py:1165] - get_content - 頁面body元素已加載 2025-10-14 14:47:18 - INFO - WebScraper - [scraper.py:1178] - get_content - 頁面加載狀態: complete 2025-10-14 14:47:18 - INFO - WebScraper - [scraper.py:1195] - get_content - 找到主要內容元素: main 2025-10-14 14:47:18 - INFO - WebScraper - [scraper.py:1206] - get_content - 頁面基本加載完成: https://wednesdaystudio22.com/product-category/%e8%85%b0%e9%8f%88-chain-belts/ 2025-10-14 14:47:20 - INFO - WebScraper - [scraper.py:1610] - _detect_page_type - 檢測到的框架: jquery 2025-10-14 14:47:20 - INFO - WebScraper - [scraper.py:1216] - get_content - 檢測到頁面類型: ajax 2025-10-14 14:47:20 - INFO - WebScraper - [scraper.py:1224] - get_content - 檢測到AJAX內容,等待AJAX請求完成 2025-10-14 14:47:20 - INFO - WebScraper - [scraper.py:1777] - _wait_for_ajax_completion - jQuery AJAX 請求已完成 2025-10-14 14:47:20 - INFO - WebScraper - [scraper.py:1788] - _wait_for_ajax_completion - XHR 請求已完成 2025-10-14 14:47:20 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 7/21 2025-10-14 14:47:24 - INFO - WebScraper - [scraper.py:1238] - get_content - 初始可見元素數量: 74 2025-10-14 14:47:26 - INFO - WebScraper - [scraper.py:1248] - get_content - 元素數量穩定: 74,內容可能已加載完成 2025-10-14 14:47:26 - INFO - WebScraper - [scraper.py:1255] - get_content - 等待可能的動態內容... 2025-10-14 14:47:31 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 7/21 2025-10-14 14:47:41 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 7/21 2025-10-14 14:47:44 - INFO - WebScraper - [scraper.py:1321] - get_content - 成功獲取 URL 內容: https://wednesdaystudio22.com/product-category/%e8%85%b0%e9%8f%88-chain-belts/ (實際 URL: https://wednesdaystudio22.com/product-category/%e8%85%b0%e9%8f%88-chain-belts/) 2025-10-14 14:47:44 - INFO - WebScraper - [scraper.py:1519] - get_content - 清理在 get_content 方法中創建的 WebDriver 實例 2025-10-14 14:47:44 - INFO - WebScraper - [scraper.py:105] - driver - 在設置新WebDriver前關閉舊實例 2025-10-14 14:47:44 - INFO - WebScraper - [scraper.py:249] - close_driver - 線程 138621577471104: 關閉 WebDriver 實例 2025-10-14 14:47:44 - INFO - WebScraper - [scraper.py:277] - close_driver - WebDriver 已成功關閉 2025-10-14 14:47:45 - INFO - WebScraper - [scraper.py:307] - close_driver - 已執行 Python 垃圾回收 2025-10-14 14:47:45 - INFO - WebScraper - [scraper.py:1526] - get_content - WebDriver 實例已成功返回到池中 2025-10-14 14:47:45 - INFO - WebScraper - [scraper.py:1895] - _is_404_page - 檢測到 404 頁面 (長內容): (指示符數量: 3) 2025-10-14 14:47:45 - INFO - WebScraper - [scraper.py:1926] - extract_text_from_html - 檢測到 404 頁面,跳過詳細文本提取 2025-10-14 14:47:45 - INFO - main - [url_processor.py:253] - process_url - 更新 UI 審核進度(URL ID=74):已完成 8/21 個網址 2025-10-14 14:47:45 - INFO - main - [url_processor.py:190] - process_url - 處理子頁面: https://wednesdaystudio22.com/product-category/%E9%A0%85%E9%8D%8A-%EF%BD%9C-necklaces/ 2025-10-14 14:47:45 - INFO - main - [url_processor.py:198] - process_url - 嘗試獲取子頁面內容 (嘗試 1/2, force_new_driver=False) 2025-10-14 14:47:45 - INFO - WebScraper - [scraper.py:1004] - get_content - 正在獲取網頁內容: https://wednesdaystudio22.com/product-category/%E9%A0%85%E9%8D%8A-%EF%BD%9C-necklaces/, use_selenium=True, proxy=False, force_new_driver=False 2025-10-14 14:47:45 - INFO - WebScraper - [scraper.py:1035] - get_content - 設置頁面加載超時:21 秒 2025-10-14 14:47:45 - INFO - WebScraper - [scraper.py:1053] - get_content - 嘗試獲取 https://wednesdaystudio22.com/product-category/%E9%A0%85%E9%8D%8A-%EF%BD%9C-necklaces/ 的第 1/3 次請求 2025-10-14 14:47:45 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e135884e310>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/65d5e066e97032f273bb634c4999b3e5 2025-10-14 14:47:45 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e135367df10>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/65d5e066e97032f273bb634c4999b3e5 2025-10-14 14:47:45 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e135367cc10>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/65d5e066e97032f273bb634c4999b3e5 2025-10-14 14:47:45 - ERROR - WebScraper - [scraper.py:1082] - get_content - 通過實例池管理器創建WebDriver失敗: cannot create weak reference to 'NoneType' object 2025-10-14 14:47:45 - INFO - WebScraper - [scraper.py:857] - _create_driver_internal - 正在創建 WebDriver 實例... 2025-10-14 14:47:45 - INFO - WebScraper - [scraper.py:861] - _create_driver_internal - 嘗試方法1:使用智能路徑發現機制 2025-10-14 14:47:45 - ERROR - WebScraper - [scraper.py:878] - _create_driver_internal - 智能路徑搜索失敗: 'WebScraper' object has no attribute 'smart_find_chrome_paths' 2025-10-14 14:47:45 - INFO - WebScraper - [scraper.py:882] - _create_driver_internal - 嘗試方法2:使用 webdriver-manager 自動管理 2025-10-14 14:47:45 - INFO - WDM - [logger.py:11] - log - ====== WebDriver manager ====== 2025-10-14 14:47:45 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:47:45 - INFO - WDM - [logger.py:11] - log - About to download new driver from https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip 2025-10-14 14:47:45 - INFO - WDM - [logger.py:11] - log - Driver downloading response is 200 2025-10-14 14:47:45 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:47:45 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:47:46 - INFO - WDM - [logger.py:11] - log - Driver has been saved in cache [/opt/urlanalyze/.wdm/drivers/chromedriver/linux64/114.0.5735.90] 2025-10-14 14:47:46 - ERROR - WebScraper - [scraper.py:893] - _create_driver_internal - webdriver-manager 方法失敗: Message: unknown error: Chrome failed to start: exited abnormally. (unknown error: DevToolsActivePort file doesn't exist) (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.) Stacktrace: #0 0x5b70f6c244e3 <unknown> #1 0x5b70f6953c76 <unknown> #2 0x5b70f697cd78 <unknown> #3 0x5b70f6979029 <unknown> #4 0x5b70f69b7ccc <unknown> #5 0x5b70f69b747f <unknown> #6 0x5b70f69aede3 <unknown> #7 0x5b70f69842dd <unknown> #8 0x5b70f698534e <unknown> #9 0x5b70f6be43e4 <unknown> #10 0x5b70f6be83d7 <unknown> #11 0x5b70f6bf2b20 <unknown> #12 0x5b70f6be9023 <unknown> #13 0x5b70f6bb71aa <unknown> #14 0x5b70f6c0d6b8 <unknown> #15 0x5b70f6c0d847 <unknown> #16 0x5b70f6c1d243 <unknown> #17 0x74588b494ac3 <unknown> 2025-10-14 14:47:46 - INFO - WebScraper - [scraper.py:897] - _create_driver_internal - 嘗試方法3:使用系統 PATH 中的 chromedriver 2025-10-14 14:47:46 - INFO - WebScraper - [scraper.py:916] - _create_driver_internal - 找到 chromedriver: /usr/local/bin/chromedriver 2025-10-14 14:47:46 - INFO - WebScraper - [scraper.py:920] - _create_driver_internal - 使用系統 chromedriver 成功創建 WebDriver 2025-10-14 14:47:46 - INFO - WebScraper - [scraper.py:1099] - get_content - 使用 Selenium 訪問 URL: https://wednesdaystudio22.com/product-category/%E9%A0%85%E9%8D%8A-%EF%BD%9C-necklaces/ 2025-10-14 14:47:47 - INFO - WebScraper - [scraper.py:1158] - get_content - 等待頁面基本加載完成: https://wednesdaystudio22.com/product-category/%E9%A0%85%E9%8D%8A-%EF%BD%9C-necklaces/ 2025-10-14 14:47:47 - INFO - WebScraper - [scraper.py:1165] - get_content - 頁面body元素已加載 2025-10-14 14:47:47 - INFO - WebScraper - [scraper.py:1178] - get_content - 頁面加載狀態: complete 2025-10-14 14:47:47 - INFO - WebScraper - [scraper.py:1195] - get_content - 找到主要內容元素: main 2025-10-14 14:47:47 - INFO - WebScraper - [scraper.py:1206] - get_content - 頁面基本加載完成: https://wednesdaystudio22.com/product-category/%E9%A0%85%E9%8D%8A-%EF%BD%9C-necklaces/ 2025-10-14 14:47:49 - INFO - WebScraper - [scraper.py:1610] - _detect_page_type - 檢測到的框架: jquery 2025-10-14 14:47:49 - INFO - WebScraper - [scraper.py:1216] - get_content - 檢測到頁面類型: ajax 2025-10-14 14:47:49 - INFO - WebScraper - [scraper.py:1224] - get_content - 檢測到AJAX內容,等待AJAX請求完成 2025-10-14 14:47:49 - INFO - WebScraper - [scraper.py:1777] - _wait_for_ajax_completion - jQuery AJAX 請求已完成 2025-10-14 14:47:49 - INFO - WebScraper - [scraper.py:1788] - _wait_for_ajax_completion - XHR 請求已完成 2025-10-14 14:47:51 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 8/21 2025-10-14 14:47:53 - INFO - WebScraper - [scraper.py:1238] - get_content - 初始可見元素數量: 185 2025-10-14 14:47:55 - INFO - WebScraper - [scraper.py:1248] - get_content - 元素數量穩定: 185,內容可能已加載完成 2025-10-14 14:47:55 - INFO - WebScraper - [scraper.py:1255] - get_content - 等待可能的動態內容... 2025-10-14 14:48:01 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 8/21 2025-10-14 14:48:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:48:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:48:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:48:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:48:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:48:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:48:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:48:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:48:11 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 8/21 2025-10-14 14:48:13 - INFO - WebScraper - [scraper.py:1321] - get_content - 成功獲取 URL 內容: https://wednesdaystudio22.com/product-category/%E9%A0%85%E9%8D%8A-%EF%BD%9C-necklaces/ (實際 URL: https://wednesdaystudio22.com/product-category/%E9%A0%85%E9%8D%8A-%EF%BD%9C-necklaces/) 2025-10-14 14:48:13 - INFO - WebScraper - [scraper.py:1519] - get_content - 清理在 get_content 方法中創建的 WebDriver 實例 2025-10-14 14:48:13 - INFO - WebScraper - [scraper.py:105] - driver - 在設置新WebDriver前關閉舊實例 2025-10-14 14:48:13 - INFO - WebScraper - [scraper.py:249] - close_driver - 線程 138621577471104: 關閉 WebDriver 實例 2025-10-14 14:48:13 - INFO - WebScraper - [scraper.py:277] - close_driver - WebDriver 已成功關閉 2025-10-14 14:48:14 - INFO - WebScraper - [scraper.py:307] - close_driver - 已執行 Python 垃圾回收 2025-10-14 14:48:14 - INFO - WebScraper - [scraper.py:1526] - get_content - WebDriver 實例已成功返回到池中 2025-10-14 14:48:14 - INFO - WebScraper - [scraper.py:1931] - extract_text_from_html - 開始從HTML中提取文本,HTML長度: 152709 字節 2025-10-14 14:48:14 - INFO - WebScraper - [scraper.py:1943] - extract_text_from_html - 使用 trafilatura 成功提取文本,長度: 394 字節 2025-10-14 14:48:14 - INFO - WebScraper - [scraper.py:1968] - extract_text_from_html - 使用 BeautifulSoup 基本提取成功,長度: 1078 字節 2025-10-14 14:48:14 - INFO - WebScraper - [scraper.py:2017] - extract_text_from_html - 使用 BeautifulSoup 針對性提取成功,長度: 618 字節 2025-10-14 14:48:14 - INFO - WebScraper - [scraper.py:2114] - extract_text_from_html - 成功提取結構化數據,長度: 685 字節 2025-10-14 14:48:14 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 trafilatura 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:48:14 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_basic 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:48:14 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_targeted 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:48:14 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 structured_data 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:48:14 - INFO - WebScraper - [scraper.py:2152] - extract_text_from_html - 根據聯絡信息分數 2 選擇 beautifulsoup_basic 作為最佳結果 2025-10-14 14:48:14 - INFO - WebScraper - [scraper.py:2177] - extract_text_from_html - 已成功提取文本,總長度: 1775 字節,約 313 個詞,235 行 2025-10-14 14:48:14 - INFO - WebScraper - [scraper.py:2178] - extract_text_from_html - 提取的最終文本內容: 跳至主要內容 登入/註冊 LINE登入 LINE登入 登入 註冊 登入/註冊 搜尋 購物車 NT$ 0 0 選單 購物車 NT$ 0 0 排序 上架時間:由新到舊 上架時間:由舊到新 價格:由低至高 價格:由高至低 銷量:由高至低 每頁 每頁顯示 24 個 每頁顯示 48 個 每頁顯示 72 個 Nivelle NT$ 590 Lune NT$ 590 Vittra NT$ 590 Quillie NT$ 590 Ethereal NT$ 590 Bloom NT$ 790 窗花 NT$ 690 Daisy NT$ 690 Clarus NT$ 690 Star 𖤐 NT$ 690 winter NT$ 690 ⋆. 𐙚˚ ribbon 𝜗𝜚˚⋆ NT$ 690 Polaris NT$ 690 April NT$ 690 Odette NT$ 690 blooming NT$ 690 Glyniya NT$ 690 admiring NT$ 690 meteor NT$ 590 SUMMER NT$ 590 流光夢境 NT$ 590 Eleanor NT$ 590 Orlena NT$ 590 Oceana NT$ 590 商品分類 熱門商品 | best seller 5 5 個產品 所有商品 | ALL 46 46 個產品 項鍊 | necklaces 46 46 個產品 最新商品 Nivelle NT$ 590 Lune NT$ 590 Vittra NT$ 590 Quillie NT$ 590 Ethereal NT$ 590 關於我們 品牌故事 購物相關 購物須知 退換貨須知 隱私權政策 聯絡我們 Instagram|wednesday___studio Email | wednesdaystudio2022@gmail.com 溫飾工作室 60076339 Instagram Line Envelope Copyright @2025 ᴡᴇᴅɴᴇsᴅᴀʏ 保留一切權利|本網站由 3C翔合作建置 登入 註冊 body::-webkit-scrollbar { width: 7px; } body::-webkit-scrollbar-track { border-radius: 10px; background: #f0f0f0; } body::-webkit-scrollbar-thumb { border-radius: 50px; background: #dfdbdb } 首頁 全部商品 聯絡我們 額外的結構化內容: • Nivelle NT$590 • Lune NT$590 • Vittra NT$590 • Quillie NT$590 • Ethereal NT$590 • Bloom NT$790 • 窗花 NT$690 • Daisy NT$690 • Clarus NT$690 • Star 𖤐 NT$690 • winter NT$690 • ⋆. 𐙚˚ ribbon 𝜗𝜚˚⋆ NT$690 • Polaris NT$690 • April NT$690 • Odette NT$690 • blooming NT$690 • Glyniya NT$690 • admiring NT$690 • meteor NT$590 • SUMMER NT$590 • 流光夢境 NT$590 • Eleanor NT$590 • Orlena NT$590 • Oceana NT$590 • 熱門商品 | best seller55 個產品 • 所有商品 | ALL4646 個產品 • 項鍊 | necklaces4646 個產品 • Nivelle NT$590 • Lune NT$590 • Vittra NT$590 • Quillie NT$590 • Ethereal NT$590 • 購物須知 • 退換貨須知 • 隱私權政策 • Instagram|wednesday___studio • Email | wednesdaystudio2022@gmail.com • 溫飾工作室 60076339 2025-10-14 14:48:14 - INFO - main - [url_processor.py:253] - process_url - 更新 UI 審核進度(URL ID=74):已完成 9/21 個網址 2025-10-14 14:48:14 - INFO - main - [url_processor.py:190] - process_url - 處理子頁面: https://wednesdaystudio22.com/product/lune/ 2025-10-14 14:48:14 - INFO - main - [url_processor.py:198] - process_url - 嘗試獲取子頁面內容 (嘗試 1/2, force_new_driver=False) 2025-10-14 14:48:14 - INFO - WebScraper - [scraper.py:1004] - get_content - 正在獲取網頁內容: https://wednesdaystudio22.com/product/lune/, use_selenium=True, proxy=False, force_new_driver=False 2025-10-14 14:48:14 - INFO - WebScraper - [scraper.py:1035] - get_content - 設置頁面加載超時:20 秒 2025-10-14 14:48:14 - INFO - WebScraper - [scraper.py:1053] - get_content - 嘗試獲取 https://wednesdaystudio22.com/product/lune/ 的第 1/3 次請求 2025-10-14 14:48:14 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13532ffed0>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/69ae1806670ac0c825fcadcc063770d8 2025-10-14 14:48:14 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13538a93d0>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/69ae1806670ac0c825fcadcc063770d8 2025-10-14 14:48:14 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13537b17d0>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/69ae1806670ac0c825fcadcc063770d8 2025-10-14 14:48:14 - ERROR - WebScraper - [scraper.py:1082] - get_content - 通過實例池管理器創建WebDriver失敗: cannot create weak reference to 'NoneType' object 2025-10-14 14:48:14 - INFO - WebScraper - [scraper.py:857] - _create_driver_internal - 正在創建 WebDriver 實例... 2025-10-14 14:48:14 - INFO - WebScraper - [scraper.py:861] - _create_driver_internal - 嘗試方法1:使用智能路徑發現機制 2025-10-14 14:48:14 - ERROR - WebScraper - [scraper.py:878] - _create_driver_internal - 智能路徑搜索失敗: 'WebScraper' object has no attribute 'smart_find_chrome_paths' 2025-10-14 14:48:14 - INFO - WebScraper - [scraper.py:882] - _create_driver_internal - 嘗試方法2:使用 webdriver-manager 自動管理 2025-10-14 14:48:14 - INFO - WDM - [logger.py:11] - log - ====== WebDriver manager ====== 2025-10-14 14:48:14 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:48:14 - INFO - WDM - [logger.py:11] - log - About to download new driver from https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip 2025-10-14 14:48:14 - INFO - WDM - [logger.py:11] - log - Driver downloading response is 200 2025-10-14 14:48:14 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:48:14 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:48:15 - INFO - WDM - [logger.py:11] - log - Driver has been saved in cache [/opt/urlanalyze/.wdm/drivers/chromedriver/linux64/114.0.5735.90] 2025-10-14 14:48:15 - ERROR - WebScraper - [scraper.py:893] - _create_driver_internal - webdriver-manager 方法失敗: Message: unknown error: Chrome failed to start: exited abnormally. (unknown error: DevToolsActivePort file doesn't exist) (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.) Stacktrace: #0 0x5b3bf438b4e3 <unknown> #1 0x5b3bf40bac76 <unknown> #2 0x5b3bf40e3d78 <unknown> #3 0x5b3bf40e0029 <unknown> #4 0x5b3bf411eccc <unknown> #5 0x5b3bf411e47f <unknown> #6 0x5b3bf4115de3 <unknown> #7 0x5b3bf40eb2dd <unknown> #8 0x5b3bf40ec34e <unknown> #9 0x5b3bf434b3e4 <unknown> #10 0x5b3bf434f3d7 <unknown> #11 0x5b3bf4359b20 <unknown> #12 0x5b3bf4350023 <unknown> #13 0x5b3bf431e1aa <unknown> #14 0x5b3bf43746b8 <unknown> #15 0x5b3bf4374847 <unknown> #16 0x5b3bf4384243 <unknown> #17 0x77676ec94ac3 <unknown> 2025-10-14 14:48:15 - INFO - WebScraper - [scraper.py:897] - _create_driver_internal - 嘗試方法3:使用系統 PATH 中的 chromedriver 2025-10-14 14:48:15 - INFO - WebScraper - [scraper.py:916] - _create_driver_internal - 找到 chromedriver: /usr/local/bin/chromedriver 2025-10-14 14:48:15 - INFO - WebScraper - [scraper.py:920] - _create_driver_internal - 使用系統 chromedriver 成功創建 WebDriver 2025-10-14 14:48:15 - INFO - WebScraper - [scraper.py:1099] - get_content - 使用 Selenium 訪問 URL: https://wednesdaystudio22.com/product/lune/ 2025-10-14 14:48:16 - INFO - WebScraper - [scraper.py:1158] - get_content - 等待頁面基本加載完成: https://wednesdaystudio22.com/product/lune/ 2025-10-14 14:48:16 - INFO - WebScraper - [scraper.py:1165] - get_content - 頁面body元素已加載 2025-10-14 14:48:16 - INFO - WebScraper - [scraper.py:1178] - get_content - 頁面加載狀態: complete 2025-10-14 14:48:16 - INFO - WebScraper - [scraper.py:1195] - get_content - 找到主要內容元素: main 2025-10-14 14:48:16 - INFO - WebScraper - [scraper.py:1206] - get_content - 頁面基本加載完成: https://wednesdaystudio22.com/product/lune/ 2025-10-14 14:48:18 - INFO - WebScraper - [scraper.py:1610] - _detect_page_type - 檢測到的框架: jquery 2025-10-14 14:48:18 - INFO - WebScraper - [scraper.py:1216] - get_content - 檢測到頁面類型: ajax 2025-10-14 14:48:18 - INFO - WebScraper - [scraper.py:1224] - get_content - 檢測到AJAX內容,等待AJAX請求完成 2025-10-14 14:48:18 - INFO - WebScraper - [scraper.py:1777] - _wait_for_ajax_completion - jQuery AJAX 請求已完成 2025-10-14 14:48:18 - INFO - WebScraper - [scraper.py:1788] - _wait_for_ajax_completion - XHR 請求已完成 2025-10-14 14:48:21 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 9/21 2025-10-14 14:48:22 - INFO - WebScraper - [scraper.py:1238] - get_content - 初始可見元素數量: 119 2025-10-14 14:48:24 - INFO - WebScraper - [scraper.py:1248] - get_content - 元素數量穩定: 119,內容可能已加載完成 2025-10-14 14:48:24 - INFO - WebScraper - [scraper.py:1255] - get_content - 等待可能的動態內容... 2025-10-14 14:48:31 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 9/21 2025-10-14 14:48:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:48:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 128.0MB, CPU 0.0% 2025-10-14 14:48:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:48:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 1/5, 隊列大小 0, 總處理任務 1, 記憶體 200.7MB, CPU 0.0% 2025-10-14 14:48:41 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 9/21 2025-10-14 14:48:42 - INFO - WebScraper - [scraper.py:1321] - get_content - 成功獲取 URL 內容: https://wednesdaystudio22.com/product/lune/ (實際 URL: https://wednesdaystudio22.com/product/lune/) 2025-10-14 14:48:42 - INFO - WebScraper - [scraper.py:1519] - get_content - 清理在 get_content 方法中創建的 WebDriver 實例 2025-10-14 14:48:42 - INFO - WebScraper - [scraper.py:105] - driver - 在設置新WebDriver前關閉舊實例 2025-10-14 14:48:42 - INFO - WebScraper - [scraper.py:249] - close_driver - 線程 138621577471104: 關閉 WebDriver 實例 2025-10-14 14:48:42 - INFO - WebScraper - [scraper.py:277] - close_driver - WebDriver 已成功關閉 2025-10-14 14:48:43 - INFO - WebScraper - [scraper.py:307] - close_driver - 已執行 Python 垃圾回收 2025-10-14 14:48:43 - INFO - WebScraper - [scraper.py:1526] - get_content - WebDriver 實例已成功返回到池中 2025-10-14 14:48:43 - INFO - WebScraper - [scraper.py:1931] - extract_text_from_html - 開始從HTML中提取文本,HTML長度: 143998 字節 2025-10-14 14:48:43 - INFO - WebScraper - [scraper.py:1943] - extract_text_from_html - 使用 trafilatura 成功提取文本,長度: 254 字節 2025-10-14 14:48:43 - INFO - WebScraper - [scraper.py:1968] - extract_text_from_html - 使用 BeautifulSoup 基本提取成功,長度: 793 字節 2025-10-14 14:48:43 - INFO - WebScraper - [scraper.py:2017] - extract_text_from_html - 使用 BeautifulSoup 針對性提取成功,長度: 375 字節 2025-10-14 14:48:43 - INFO - WebScraper - [scraper.py:2114] - extract_text_from_html - 成功提取結構化數據,長度: 178 字節 2025-10-14 14:48:43 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 trafilatura 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:48:43 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_basic 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:48:43 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_targeted 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:48:43 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 structured_data 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:48:43 - INFO - WebScraper - [scraper.py:2152] - extract_text_from_html - 根據聯絡信息分數 2 選擇 beautifulsoup_basic 作為最佳結果 2025-10-14 14:48:43 - INFO - WebScraper - [scraper.py:2177] - extract_text_from_html - 已成功提取文本,總長度: 983 字節,約 122 個詞,94 行 2025-10-14 14:48:43 - INFO - WebScraper - [scraper.py:2178] - extract_text_from_html - 提取的最終文本內容: 跳至主要內容 登入/註冊 LINE登入 LINE登入 登入 註冊 登入/註冊 搜尋 購物車 NT$ 0 0 選單 購物車 NT$ 0 0 Lune NT$ 590 10 件庫存 描述 Lune 🌙 不耀眼、不炙熱,只是靜靜落在月亮表面的那一道光 項鍊以兩種銀鏈錯落組合,一側是光滑的蛇鏈細膩順滑 充分展現出項鍊的線條感 另一側以粗鏈延伸出項鍊的重量感,搭配上中間如同融化的銀墜,整體看起來就像月光滴落,在呼應到鏈尾的水滴垂墜,更有氛圍了 細鏈上加了幾顆可以滑動的珠珠,可以配合穿搭調整~ 材質與長度 銅鍍珠、鈦鋼珠、鈦鋼鏈條、鈦鋼五金配件 項鍊長度(不含延長鏈): 銅鍍材質接觸到汗水後較容易氧化,建議每次佩戴完都擦拭 @wednesday studio 相關商品 lovely NT$ 590 Isaro NT$ 590 Orlena NT$ 590 Sparkling NT$ 590 關於我們 品牌故事 購物相關 購物須知 退換貨須知 隱私權政策 聯絡我們 Instagram|wednesday___studio Email | wednesdaystudio2022@gmail.com 溫飾工作室 60076339 Instagram Line Envelope Copyright @2025 ᴡᴇᴅɴᴇsᴅᴀʏ 保留一切權利|本網站由 3C翔合作建置 登入 註冊 body::-webkit-scrollbar { width: 7px; } body::-webkit-scrollbar-track { border-radius: 10px; background: #f0f0f0; } body::-webkit-scrollbar-thumb { border-radius: 50px; background: #dfdbdb } 首頁 全部商品 聯絡我們 額外的結構化內容: • lovely NT$590 • Isaro NT$590 • Orlena NT$590 • Sparkling NT$590 • 購物須知 • 退換貨須知 • 隱私權政策 • Instagram|wednesday___studio • Email | wednesdaystudio2022@gmail.com • 溫飾工作室 60076339 2025-10-14 14:48:43 - INFO - main - [url_processor.py:253] - process_url - 更新 UI 審核進度(URL ID=74):已完成 10/21 個網址 2025-10-14 14:48:43 - INFO - main - [url_processor.py:190] - process_url - 處理子頁面: https://wednesdaystudio22.com/product-category/%e6%89%8b%e9%8d%8a-%ef%bd%9c-bracelets/ 2025-10-14 14:48:43 - INFO - main - [url_processor.py:198] - process_url - 嘗試獲取子頁面內容 (嘗試 1/2, force_new_driver=False) 2025-10-14 14:48:43 - INFO - WebScraper - [scraper.py:1004] - get_content - 正在獲取網頁內容: https://wednesdaystudio22.com/product-category/%e6%89%8b%e9%8d%8a-%ef%bd%9c-bracelets/, use_selenium=True, proxy=False, force_new_driver=False 2025-10-14 14:48:43 - INFO - WebScraper - [scraper.py:1035] - get_content - 設置頁面加載超時:21 秒 2025-10-14 14:48:43 - INFO - WebScraper - [scraper.py:1053] - get_content - 嘗試獲取 https://wednesdaystudio22.com/product-category/%e6%89%8b%e9%8d%8a-%ef%bd%9c-bracelets/ 的第 1/3 次請求 2025-10-14 14:48:43 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e1352916250>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/a6b865f718c302ededb3e14f72cc2e2d 2025-10-14 14:48:43 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e1353586110>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/a6b865f718c302ededb3e14f72cc2e2d 2025-10-14 14:48:43 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e1353587b10>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/a6b865f718c302ededb3e14f72cc2e2d 2025-10-14 14:48:43 - ERROR - WebScraper - [scraper.py:1082] - get_content - 通過實例池管理器創建WebDriver失敗: cannot create weak reference to 'NoneType' object 2025-10-14 14:48:43 - INFO - WebScraper - [scraper.py:857] - _create_driver_internal - 正在創建 WebDriver 實例... 2025-10-14 14:48:43 - INFO - WebScraper - [scraper.py:861] - _create_driver_internal - 嘗試方法1:使用智能路徑發現機制 2025-10-14 14:48:43 - ERROR - WebScraper - [scraper.py:878] - _create_driver_internal - 智能路徑搜索失敗: 'WebScraper' object has no attribute 'smart_find_chrome_paths' 2025-10-14 14:48:43 - INFO - WebScraper - [scraper.py:882] - _create_driver_internal - 嘗試方法2:使用 webdriver-manager 自動管理 2025-10-14 14:48:43 - INFO - WDM - [logger.py:11] - log - ====== WebDriver manager ====== 2025-10-14 14:48:43 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:48:43 - INFO - WDM - [logger.py:11] - log - About to download new driver from https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip 2025-10-14 14:48:43 - INFO - WDM - [logger.py:11] - log - Driver downloading response is 200 2025-10-14 14:48:43 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:48:44 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:48:44 - INFO - WDM - [logger.py:11] - log - Driver has been saved in cache [/opt/urlanalyze/.wdm/drivers/chromedriver/linux64/114.0.5735.90] 2025-10-14 14:48:44 - ERROR - WebScraper - [scraper.py:893] - _create_driver_internal - webdriver-manager 方法失敗: Message: unknown error: Chrome failed to start: exited abnormally. (unknown error: DevToolsActivePort file doesn't exist) (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.) Stacktrace: #0 0x633579e124e3 <unknown> #1 0x633579b41c76 <unknown> #2 0x633579b6ad78 <unknown> #3 0x633579b67029 <unknown> #4 0x633579ba5ccc <unknown> #5 0x633579ba547f <unknown> #6 0x633579b9cde3 <unknown> #7 0x633579b722dd <unknown> #8 0x633579b7334e <unknown> #9 0x633579dd23e4 <unknown> #10 0x633579dd63d7 <unknown> #11 0x633579de0b20 <unknown> #12 0x633579dd7023 <unknown> #13 0x633579da51aa <unknown> #14 0x633579dfb6b8 <unknown> #15 0x633579dfb847 <unknown> #16 0x633579e0b243 <unknown> #17 0x70497b294ac3 <unknown> 2025-10-14 14:48:44 - INFO - WebScraper - [scraper.py:897] - _create_driver_internal - 嘗試方法3:使用系統 PATH 中的 chromedriver 2025-10-14 14:48:44 - INFO - WebScraper - [scraper.py:916] - _create_driver_internal - 找到 chromedriver: /usr/local/bin/chromedriver 2025-10-14 14:48:44 - INFO - WebScraper - [scraper.py:920] - _create_driver_internal - 使用系統 chromedriver 成功創建 WebDriver 2025-10-14 14:48:44 - INFO - WebScraper - [scraper.py:1099] - get_content - 使用 Selenium 訪問 URL: https://wednesdaystudio22.com/product-category/%e6%89%8b%e9%8d%8a-%ef%bd%9c-bracelets/ 2025-10-14 14:48:47 - INFO - WebScraper - [scraper.py:1158] - get_content - 等待頁面基本加載完成: https://wednesdaystudio22.com/product-category/%e6%89%8b%e9%8d%8a-%ef%bd%9c-bracelets/ 2025-10-14 14:48:47 - INFO - WebScraper - [scraper.py:1165] - get_content - 頁面body元素已加載 2025-10-14 14:48:47 - INFO - WebScraper - [scraper.py:1178] - get_content - 頁面加載狀態: complete 2025-10-14 14:48:47 - INFO - WebScraper - [scraper.py:1195] - get_content - 找到主要內容元素: main 2025-10-14 14:48:47 - INFO - WebScraper - [scraper.py:1206] - get_content - 頁面基本加載完成: https://wednesdaystudio22.com/product-category/%e6%89%8b%e9%8d%8a-%ef%bd%9c-bracelets/ 2025-10-14 14:48:49 - INFO - WebScraper - [scraper.py:1610] - _detect_page_type - 檢測到的框架: jquery 2025-10-14 14:48:49 - INFO - WebScraper - [scraper.py:1216] - get_content - 檢測到頁面類型: ajax 2025-10-14 14:48:49 - INFO - WebScraper - [scraper.py:1224] - get_content - 檢測到AJAX內容,等待AJAX請求完成 2025-10-14 14:48:49 - INFO - WebScraper - [scraper.py:1777] - _wait_for_ajax_completion - jQuery AJAX 請求已完成 2025-10-14 14:48:49 - INFO - WebScraper - [scraper.py:1788] - _wait_for_ajax_completion - XHR 請求已完成 2025-10-14 14:48:51 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 10/21 2025-10-14 14:48:53 - INFO - WebScraper - [scraper.py:1238] - get_content - 初始可見元素數量: 98 2025-10-14 14:48:55 - INFO - WebScraper - [scraper.py:1248] - get_content - 元素數量穩定: 98,內容可能已加載完成 2025-10-14 14:48:55 - INFO - WebScraper - [scraper.py:1255] - get_content - 等待可能的動態內容... 2025-10-14 14:49:01 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 10/21 2025-10-14 14:49:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:49:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:49:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:49:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:49:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:49:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:49:07 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:49:07 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:49:11 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 10/21 2025-10-14 14:49:13 - INFO - WebScraper - [scraper.py:1321] - get_content - 成功獲取 URL 內容: https://wednesdaystudio22.com/product-category/%e6%89%8b%e9%8d%8a-%ef%bd%9c-bracelets/ (實際 URL: https://wednesdaystudio22.com/product-category/%e6%89%8b%e9%8d%8a-%ef%bd%9c-bracelets/) 2025-10-14 14:49:13 - INFO - WebScraper - [scraper.py:1519] - get_content - 清理在 get_content 方法中創建的 WebDriver 實例 2025-10-14 14:49:13 - INFO - WebScraper - [scraper.py:105] - driver - 在設置新WebDriver前關閉舊實例 2025-10-14 14:49:13 - INFO - WebScraper - [scraper.py:249] - close_driver - 線程 138621577471104: 關閉 WebDriver 實例 2025-10-14 14:49:13 - INFO - WebScraper - [scraper.py:277] - close_driver - WebDriver 已成功關閉 2025-10-14 14:49:13 - INFO - WebScraper - [scraper.py:307] - close_driver - 已執行 Python 垃圾回收 2025-10-14 14:49:13 - INFO - WebScraper - [scraper.py:1526] - get_content - WebDriver 實例已成功返回到池中 2025-10-14 14:49:13 - INFO - WebScraper - [scraper.py:1931] - extract_text_from_html - 開始從HTML中提取文本,HTML長度: 118017 字節 2025-10-14 14:49:13 - INFO - WebScraper - [scraper.py:1943] - extract_text_from_html - 使用 trafilatura 成功提取文本,長度: 717 字節 2025-10-14 14:49:13 - INFO - WebScraper - [scraper.py:1968] - extract_text_from_html - 使用 BeautifulSoup 基本提取成功,長度: 639 字節 2025-10-14 14:49:13 - INFO - WebScraper - [scraper.py:2114] - extract_text_from_html - 成功提取結構化數據,長度: 288 字節 2025-10-14 14:49:13 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 trafilatura 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:49:13 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_basic 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:49:13 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 structured_data 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:49:13 - INFO - WebScraper - [scraper.py:2152] - extract_text_from_html - 根據聯絡信息分數 2 選擇 beautifulsoup_basic 作為最佳結果 2025-10-14 14:49:13 - INFO - WebScraper - [scraper.py:2177] - extract_text_from_html - 已成功提取文本,總長度: 939 字節,約 146 個詞,104 行 2025-10-14 14:49:13 - INFO - WebScraper - [scraper.py:2178] - extract_text_from_html - 提取的最終文本內容: 跳至主要內容 登入/註冊 LINE登入 LINE登入 登入 註冊 登入/註冊 搜尋 購物車 NT$ 0 0 選單 購物車 NT$ 0 0 找不到符合您選擇的商品 商品分類 熱門商品 | best seller 5 5 個產品 所有商品 | ALL 46 46 個產品 項鍊 | necklaces 46 46 個產品 最新商品 Nivelle NT$ 590 Lune NT$ 590 Vittra NT$ 590 Quillie NT$ 590 Ethereal NT$ 590 關於我們 品牌故事 購物相關 購物須知 退換貨須知 隱私權政策 聯絡我們 Instagram|wednesday___studio Email | wednesdaystudio2022@gmail.com 溫飾工作室 60076339 Instagram Line Envelope Copyright @2025 ᴡᴇᴅɴᴇsᴅᴀʏ 保留一切權利|本網站由 3C翔合作建置 登入 註冊 body::-webkit-scrollbar { width: 7px; } body::-webkit-scrollbar-track { border-radius: 10px; background: #f0f0f0; } body::-webkit-scrollbar-thumb { border-radius: 50px; background: #dfdbdb } 首頁 全部商品 聯絡我們 額外的結構化內容: • 熱門商品 | best seller55 個產品 • 所有商品 | ALL4646 個產品 • 項鍊 | necklaces4646 個產品 • Nivelle NT$590 • Lune NT$590 • Vittra NT$590 • Quillie NT$590 • Ethereal NT$590 • 購物須知 • 退換貨須知 • 隱私權政策 • Instagram|wednesday___studio • Email | wednesdaystudio2022@gmail.com • 溫飾工作室 60076339 2025-10-14 14:49:13 - INFO - main - [url_processor.py:253] - process_url - 更新 UI 審核進度(URL ID=74):已完成 11/21 個網址 2025-10-14 14:49:13 - INFO - main - [url_processor.py:190] - process_url - 處理子頁面: https://wednesdaystudio22.com/type-2 2025-10-14 14:49:13 - INFO - main - [url_processor.py:198] - process_url - 嘗試獲取子頁面內容 (嘗試 1/2, force_new_driver=False) 2025-10-14 14:49:13 - INFO - WebScraper - [scraper.py:1004] - get_content - 正在獲取網頁內容: https://wednesdaystudio22.com/type-2, use_selenium=True, proxy=False, force_new_driver=False 2025-10-14 14:49:13 - INFO - WebScraper - [scraper.py:1035] - get_content - 設置頁面加載超時:20 秒 2025-10-14 14:49:13 - INFO - WebScraper - [scraper.py:1053] - get_content - 嘗試獲取 https://wednesdaystudio22.com/type-2 的第 1/3 次請求 2025-10-14 14:49:13 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13533da910>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/2ce4dec4926027424144e0467ddb30eb 2025-10-14 14:49:13 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13533db9d0>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/2ce4dec4926027424144e0467ddb30eb 2025-10-14 14:49:13 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13533db5d0>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/2ce4dec4926027424144e0467ddb30eb 2025-10-14 14:49:13 - ERROR - WebScraper - [scraper.py:1082] - get_content - 通過實例池管理器創建WebDriver失敗: cannot create weak reference to 'NoneType' object 2025-10-14 14:49:13 - INFO - WebScraper - [scraper.py:857] - _create_driver_internal - 正在創建 WebDriver 實例... 2025-10-14 14:49:13 - INFO - WebScraper - [scraper.py:861] - _create_driver_internal - 嘗試方法1:使用智能路徑發現機制 2025-10-14 14:49:13 - ERROR - WebScraper - [scraper.py:878] - _create_driver_internal - 智能路徑搜索失敗: 'WebScraper' object has no attribute 'smart_find_chrome_paths' 2025-10-14 14:49:13 - INFO - WebScraper - [scraper.py:882] - _create_driver_internal - 嘗試方法2:使用 webdriver-manager 自動管理 2025-10-14 14:49:13 - INFO - WDM - [logger.py:11] - log - ====== WebDriver manager ====== 2025-10-14 14:49:13 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:49:14 - INFO - WDM - [logger.py:11] - log - About to download new driver from https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip 2025-10-14 14:49:14 - INFO - WDM - [logger.py:11] - log - Driver downloading response is 200 2025-10-14 14:49:14 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:49:14 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:49:14 - INFO - WDM - [logger.py:11] - log - Driver has been saved in cache [/opt/urlanalyze/.wdm/drivers/chromedriver/linux64/114.0.5735.90] 2025-10-14 14:49:14 - ERROR - WebScraper - [scraper.py:893] - _create_driver_internal - webdriver-manager 方法失敗: Message: unknown error: Chrome failed to start: exited abnormally. (unknown error: DevToolsActivePort file doesn't exist) (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.) Stacktrace: #0 0x582d6d1f64e3 <unknown> #1 0x582d6cf25c76 <unknown> #2 0x582d6cf4ed78 <unknown> #3 0x582d6cf4b029 <unknown> #4 0x582d6cf89ccc <unknown> #5 0x582d6cf8947f <unknown> #6 0x582d6cf80de3 <unknown> #7 0x582d6cf562dd <unknown> #8 0x582d6cf5734e <unknown> #9 0x582d6d1b63e4 <unknown> #10 0x582d6d1ba3d7 <unknown> #11 0x582d6d1c4b20 <unknown> #12 0x582d6d1bb023 <unknown> #13 0x582d6d1891aa <unknown> #14 0x582d6d1df6b8 <unknown> #15 0x582d6d1df847 <unknown> #16 0x582d6d1ef243 <unknown> #17 0x7ae21e094ac3 <unknown> 2025-10-14 14:49:14 - INFO - WebScraper - [scraper.py:897] - _create_driver_internal - 嘗試方法3:使用系統 PATH 中的 chromedriver 2025-10-14 14:49:14 - INFO - WebScraper - [scraper.py:916] - _create_driver_internal - 找到 chromedriver: /usr/local/bin/chromedriver 2025-10-14 14:49:15 - INFO - WebScraper - [scraper.py:920] - _create_driver_internal - 使用系統 chromedriver 成功創建 WebDriver 2025-10-14 14:49:15 - INFO - WebScraper - [scraper.py:1099] - get_content - 使用 Selenium 訪問 URL: https://wednesdaystudio22.com/type-2 2025-10-14 14:49:17 - INFO - WebScraper - [scraper.py:1158] - get_content - 等待頁面基本加載完成: https://wednesdaystudio22.com/type-2 2025-10-14 14:49:17 - INFO - WebScraper - [scraper.py:1165] - get_content - 頁面body元素已加載 2025-10-14 14:49:17 - INFO - WebScraper - [scraper.py:1178] - get_content - 頁面加載狀態: complete 2025-10-14 14:49:17 - INFO - WebScraper - [scraper.py:1195] - get_content - 找到主要內容元素: main 2025-10-14 14:49:17 - INFO - WebScraper - [scraper.py:1206] - get_content - 頁面基本加載完成: https://wednesdaystudio22.com/type-2 2025-10-14 14:49:19 - INFO - WebScraper - [scraper.py:1610] - _detect_page_type - 檢測到的框架: jquery 2025-10-14 14:49:19 - INFO - WebScraper - [scraper.py:1216] - get_content - 檢測到頁面類型: ajax 2025-10-14 14:49:19 - INFO - WebScraper - [scraper.py:1224] - get_content - 檢測到AJAX內容,等待AJAX請求完成 2025-10-14 14:49:19 - INFO - WebScraper - [scraper.py:1777] - _wait_for_ajax_completion - jQuery AJAX 請求已完成 2025-10-14 14:49:19 - INFO - WebScraper - [scraper.py:1788] - _wait_for_ajax_completion - XHR 請求已完成 2025-10-14 14:49:21 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 11/21 2025-10-14 14:49:23 - INFO - WebScraper - [scraper.py:1238] - get_content - 初始可見元素數量: 74 2025-10-14 14:49:25 - INFO - WebScraper - [scraper.py:1248] - get_content - 元素數量穩定: 74,內容可能已加載完成 2025-10-14 14:49:25 - INFO - WebScraper - [scraper.py:1255] - get_content - 等待可能的動態內容... 2025-10-14 14:49:31 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 11/21 2025-10-14 14:49:41 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 11/21 2025-10-14 14:49:44 - INFO - WebScraper - [scraper.py:1321] - get_content - 成功獲取 URL 內容: https://wednesdaystudio22.com/type-2 (實際 URL: https://wednesdaystudio22.com/type-2) 2025-10-14 14:49:44 - INFO - WebScraper - [scraper.py:1519] - get_content - 清理在 get_content 方法中創建的 WebDriver 實例 2025-10-14 14:49:44 - INFO - WebScraper - [scraper.py:105] - driver - 在設置新WebDriver前關閉舊實例 2025-10-14 14:49:44 - INFO - WebScraper - [scraper.py:249] - close_driver - 線程 138621577471104: 關閉 WebDriver 實例 2025-10-14 14:49:44 - INFO - WebScraper - [scraper.py:277] - close_driver - WebDriver 已成功關閉 2025-10-14 14:49:44 - INFO - WebScraper - [scraper.py:307] - close_driver - 已執行 Python 垃圾回收 2025-10-14 14:49:44 - INFO - WebScraper - [scraper.py:1526] - get_content - WebDriver 實例已成功返回到池中 2025-10-14 14:49:44 - INFO - WebScraper - [scraper.py:1895] - _is_404_page - 檢測到 404 頁面 (長內容): (指示符數量: 3) 2025-10-14 14:49:44 - INFO - WebScraper - [scraper.py:1926] - extract_text_from_html - 檢測到 404 頁面,跳過詳細文本提取 2025-10-14 14:49:44 - INFO - main - [url_processor.py:253] - process_url - 更新 UI 審核進度(URL ID=74):已完成 12/21 個網址 2025-10-14 14:49:44 - INFO - main - [url_processor.py:190] - process_url - 處理子頁面: https://wednesdaystudio22.com/product-category/%e8%85%b0%e9%8f%88-%ef%bd%9c-waist-chains/ 2025-10-14 14:49:44 - INFO - main - [url_processor.py:198] - process_url - 嘗試獲取子頁面內容 (嘗試 1/2, force_new_driver=False) 2025-10-14 14:49:44 - INFO - WebScraper - [scraper.py:1004] - get_content - 正在獲取網頁內容: https://wednesdaystudio22.com/product-category/%e8%85%b0%e9%8f%88-%ef%bd%9c-waist-chains/, use_selenium=True, proxy=False, force_new_driver=False 2025-10-14 14:49:44 - INFO - WebScraper - [scraper.py:1035] - get_content - 設置頁面加載超時:21 秒 2025-10-14 14:49:44 - INFO - WebScraper - [scraper.py:1053] - get_content - 嘗試獲取 https://wednesdaystudio22.com/product-category/%e8%85%b0%e9%8f%88-%ef%bd%9c-waist-chains/ 的第 1/3 次請求 2025-10-14 14:49:44 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e135291c7d0>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/7149eb2b11c5abf8e7ad3a47e7a624c8 2025-10-14 14:49:44 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e135291fed0>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/7149eb2b11c5abf8e7ad3a47e7a624c8 2025-10-14 14:49:44 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e135291ec10>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/7149eb2b11c5abf8e7ad3a47e7a624c8 2025-10-14 14:49:44 - ERROR - WebScraper - [scraper.py:1082] - get_content - 通過實例池管理器創建WebDriver失敗: cannot create weak reference to 'NoneType' object 2025-10-14 14:49:44 - INFO - WebScraper - [scraper.py:857] - _create_driver_internal - 正在創建 WebDriver 實例... 2025-10-14 14:49:44 - INFO - WebScraper - [scraper.py:861] - _create_driver_internal - 嘗試方法1:使用智能路徑發現機制 2025-10-14 14:49:44 - ERROR - WebScraper - [scraper.py:878] - _create_driver_internal - 智能路徑搜索失敗: 'WebScraper' object has no attribute 'smart_find_chrome_paths' 2025-10-14 14:49:44 - INFO - WebScraper - [scraper.py:882] - _create_driver_internal - 嘗試方法2:使用 webdriver-manager 自動管理 2025-10-14 14:49:44 - INFO - WDM - [logger.py:11] - log - ====== WebDriver manager ====== 2025-10-14 14:49:44 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:49:44 - INFO - WDM - [logger.py:11] - log - About to download new driver from https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip 2025-10-14 14:49:44 - INFO - WDM - [logger.py:11] - log - Driver downloading response is 200 2025-10-14 14:49:44 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:49:45 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:49:45 - INFO - WDM - [logger.py:11] - log - Driver has been saved in cache [/opt/urlanalyze/.wdm/drivers/chromedriver/linux64/114.0.5735.90] 2025-10-14 14:49:45 - ERROR - WebScraper - [scraper.py:893] - _create_driver_internal - webdriver-manager 方法失敗: Message: unknown error: Chrome failed to start: exited abnormally. (unknown error: DevToolsActivePort file doesn't exist) (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.) Stacktrace: #0 0x56d2d88ab4e3 <unknown> #1 0x56d2d85dac76 <unknown> #2 0x56d2d8603d78 <unknown> #3 0x56d2d8600029 <unknown> #4 0x56d2d863eccc <unknown> #5 0x56d2d863e47f <unknown> #6 0x56d2d8635de3 <unknown> #7 0x56d2d860b2dd <unknown> #8 0x56d2d860c34e <unknown> #9 0x56d2d886b3e4 <unknown> #10 0x56d2d886f3d7 <unknown> #11 0x56d2d8879b20 <unknown> #12 0x56d2d8870023 <unknown> #13 0x56d2d883e1aa <unknown> #14 0x56d2d88946b8 <unknown> #15 0x56d2d8894847 <unknown> #16 0x56d2d88a4243 <unknown> #17 0x70aa97e94ac3 <unknown> 2025-10-14 14:49:45 - INFO - WebScraper - [scraper.py:897] - _create_driver_internal - 嘗試方法3:使用系統 PATH 中的 chromedriver 2025-10-14 14:49:45 - INFO - WebScraper - [scraper.py:916] - _create_driver_internal - 找到 chromedriver: /usr/local/bin/chromedriver 2025-10-14 14:49:45 - INFO - WebScraper - [scraper.py:920] - _create_driver_internal - 使用系統 chromedriver 成功創建 WebDriver 2025-10-14 14:49:45 - INFO - WebScraper - [scraper.py:1099] - get_content - 使用 Selenium 訪問 URL: https://wednesdaystudio22.com/product-category/%e8%85%b0%e9%8f%88-%ef%bd%9c-waist-chains/ 2025-10-14 14:49:48 - INFO - WebScraper - [scraper.py:1158] - get_content - 等待頁面基本加載完成: https://wednesdaystudio22.com/product-category/%e8%85%b0%e9%8f%88-%ef%bd%9c-waist-chains/ 2025-10-14 14:49:48 - INFO - WebScraper - [scraper.py:1165] - get_content - 頁面body元素已加載 2025-10-14 14:49:48 - INFO - WebScraper - [scraper.py:1178] - get_content - 頁面加載狀態: complete 2025-10-14 14:49:48 - INFO - WebScraper - [scraper.py:1195] - get_content - 找到主要內容元素: main 2025-10-14 14:49:48 - INFO - WebScraper - [scraper.py:1206] - get_content - 頁面基本加載完成: https://wednesdaystudio22.com/product-category/%e8%85%b0%e9%8f%88-%ef%bd%9c-waist-chains/ 2025-10-14 14:49:50 - INFO - WebScraper - [scraper.py:1610] - _detect_page_type - 檢測到的框架: jquery 2025-10-14 14:49:50 - INFO - WebScraper - [scraper.py:1216] - get_content - 檢測到頁面類型: ajax 2025-10-14 14:49:50 - INFO - WebScraper - [scraper.py:1224] - get_content - 檢測到AJAX內容,等待AJAX請求完成 2025-10-14 14:49:50 - INFO - WebScraper - [scraper.py:1777] - _wait_for_ajax_completion - jQuery AJAX 請求已完成 2025-10-14 14:49:50 - INFO - WebScraper - [scraper.py:1788] - _wait_for_ajax_completion - XHR 請求已完成 2025-10-14 14:49:52 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 12/21 2025-10-14 14:49:54 - INFO - WebScraper - [scraper.py:1238] - get_content - 初始可見元素數量: 98 2025-10-14 14:49:56 - INFO - WebScraper - [scraper.py:1248] - get_content - 元素數量穩定: 98,內容可能已加載完成 2025-10-14 14:49:56 - INFO - WebScraper - [scraper.py:1255] - get_content - 等待可能的動態內容... 2025-10-14 14:49:59 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:49:59 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:49:59 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:49:59 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:50:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:50:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:50:02 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 12/21 2025-10-14 14:50:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:50:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:50:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:50:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 128.0MB, CPU 0.0% 2025-10-14 14:50:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 1/5, 隊列大小 0, 總處理任務 1, 記憶體 200.7MB, CPU 0.0% 2025-10-14 14:50:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:50:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:50:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:50:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:50:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:50:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:50:05 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:50:07 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:50:07 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:50:12 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 12/21 2025-10-14 14:50:14 - INFO - WebScraper - [scraper.py:1321] - get_content - 成功獲取 URL 內容: https://wednesdaystudio22.com/product-category/%e8%85%b0%e9%8f%88-%ef%bd%9c-waist-chains/ (實際 URL: https://wednesdaystudio22.com/product-category/%e8%85%b0%e9%8f%88-%ef%bd%9c-waist-chains/) 2025-10-14 14:50:14 - INFO - WebScraper - [scraper.py:1519] - get_content - 清理在 get_content 方法中創建的 WebDriver 實例 2025-10-14 14:50:14 - INFO - WebScraper - [scraper.py:105] - driver - 在設置新WebDriver前關閉舊實例 2025-10-14 14:50:14 - INFO - WebScraper - [scraper.py:249] - close_driver - 線程 138621577471104: 關閉 WebDriver 實例 2025-10-14 14:50:14 - INFO - WebScraper - [scraper.py:277] - close_driver - WebDriver 已成功關閉 2025-10-14 14:50:14 - INFO - WebScraper - [scraper.py:307] - close_driver - 已執行 Python 垃圾回收 2025-10-14 14:50:14 - INFO - WebScraper - [scraper.py:1526] - get_content - WebDriver 實例已成功返回到池中 2025-10-14 14:50:14 - INFO - WebScraper - [scraper.py:1931] - extract_text_from_html - 開始從HTML中提取文本,HTML長度: 118084 字節 2025-10-14 14:50:14 - INFO - WebScraper - [scraper.py:1943] - extract_text_from_html - 使用 trafilatura 成功提取文本,長度: 717 字節 2025-10-14 14:50:14 - INFO - WebScraper - [scraper.py:1968] - extract_text_from_html - 使用 BeautifulSoup 基本提取成功,長度: 639 字節 2025-10-14 14:50:14 - INFO - WebScraper - [scraper.py:2114] - extract_text_from_html - 成功提取結構化數據,長度: 288 字節 2025-10-14 14:50:14 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 trafilatura 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:50:14 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_basic 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:50:14 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 structured_data 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:50:14 - INFO - WebScraper - [scraper.py:2152] - extract_text_from_html - 根據聯絡信息分數 2 選擇 beautifulsoup_basic 作為最佳結果 2025-10-14 14:50:14 - INFO - WebScraper - [scraper.py:2177] - extract_text_from_html - 已成功提取文本,總長度: 939 字節,約 146 個詞,104 行 2025-10-14 14:50:14 - INFO - WebScraper - [scraper.py:2178] - extract_text_from_html - 提取的最終文本內容: 跳至主要內容 登入/註冊 LINE登入 LINE登入 登入 註冊 登入/註冊 搜尋 購物車 NT$ 0 0 選單 購物車 NT$ 0 0 找不到符合您選擇的商品 商品分類 熱門商品 | best seller 5 5 個產品 所有商品 | ALL 46 46 個產品 項鍊 | necklaces 46 46 個產品 最新商品 Nivelle NT$ 590 Lune NT$ 590 Vittra NT$ 590 Quillie NT$ 590 Ethereal NT$ 590 關於我們 品牌故事 購物相關 購物須知 退換貨須知 隱私權政策 聯絡我們 Instagram|wednesday___studio Email | wednesdaystudio2022@gmail.com 溫飾工作室 60076339 Instagram Line Envelope Copyright @2025 ᴡᴇᴅɴᴇsᴅᴀʏ 保留一切權利|本網站由 3C翔合作建置 登入 註冊 body::-webkit-scrollbar { width: 7px; } body::-webkit-scrollbar-track { border-radius: 10px; background: #f0f0f0; } body::-webkit-scrollbar-thumb { border-radius: 50px; background: #dfdbdb } 首頁 全部商品 聯絡我們 額外的結構化內容: • 熱門商品 | best seller55 個產品 • 所有商品 | ALL4646 個產品 • 項鍊 | necklaces4646 個產品 • Nivelle NT$590 • Lune NT$590 • Vittra NT$590 • Quillie NT$590 • Ethereal NT$590 • 購物須知 • 退換貨須知 • 隱私權政策 • Instagram|wednesday___studio • Email | wednesdaystudio2022@gmail.com • 溫飾工作室 60076339 2025-10-14 14:50:14 - INFO - main - [url_processor.py:253] - process_url - 更新 UI 審核進度(URL ID=74):已完成 13/21 個網址 2025-10-14 14:50:14 - INFO - main - [url_processor.py:190] - process_url - 處理子頁面: https://wednesdaystudio22.com/product/quillie/ 2025-10-14 14:50:14 - INFO - main - [url_processor.py:198] - process_url - 嘗試獲取子頁面內容 (嘗試 1/2, force_new_driver=False) 2025-10-14 14:50:14 - INFO - WebScraper - [scraper.py:1004] - get_content - 正在獲取網頁內容: https://wednesdaystudio22.com/product/quillie/, use_selenium=True, proxy=False, force_new_driver=False 2025-10-14 14:50:14 - INFO - WebScraper - [scraper.py:1035] - get_content - 設置頁面加載超時:20 秒 2025-10-14 14:50:14 - INFO - WebScraper - [scraper.py:1053] - get_content - 嘗試獲取 https://wednesdaystudio22.com/product/quillie/ 的第 1/3 次請求 2025-10-14 14:50:14 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e1353744890>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/843c837624708880fd17e45c1ccbfec5 2025-10-14 14:50:14 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e135339d6d0>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/843c837624708880fd17e45c1ccbfec5 2025-10-14 14:50:14 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e135339c750>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/843c837624708880fd17e45c1ccbfec5 2025-10-14 14:50:14 - ERROR - WebScraper - [scraper.py:1082] - get_content - 通過實例池管理器創建WebDriver失敗: cannot create weak reference to 'NoneType' object 2025-10-14 14:50:14 - INFO - WebScraper - [scraper.py:857] - _create_driver_internal - 正在創建 WebDriver 實例... 2025-10-14 14:50:14 - INFO - WebScraper - [scraper.py:861] - _create_driver_internal - 嘗試方法1:使用智能路徑發現機制 2025-10-14 14:50:14 - ERROR - WebScraper - [scraper.py:878] - _create_driver_internal - 智能路徑搜索失敗: 'WebScraper' object has no attribute 'smart_find_chrome_paths' 2025-10-14 14:50:14 - INFO - WebScraper - [scraper.py:882] - _create_driver_internal - 嘗試方法2:使用 webdriver-manager 自動管理 2025-10-14 14:50:14 - INFO - WDM - [logger.py:11] - log - ====== WebDriver manager ====== 2025-10-14 14:50:14 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:50:15 - INFO - WDM - [logger.py:11] - log - About to download new driver from https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip 2025-10-14 14:50:15 - INFO - WDM - [logger.py:11] - log - Driver downloading response is 200 2025-10-14 14:50:15 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:50:15 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:50:15 - INFO - WDM - [logger.py:11] - log - Driver has been saved in cache [/opt/urlanalyze/.wdm/drivers/chromedriver/linux64/114.0.5735.90] 2025-10-14 14:50:15 - ERROR - WebScraper - [scraper.py:893] - _create_driver_internal - webdriver-manager 方法失敗: Message: unknown error: Chrome failed to start: exited abnormally. (unknown error: DevToolsActivePort file doesn't exist) (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.) Stacktrace: #0 0x612ca4eda4e3 <unknown> #1 0x612ca4c09c76 <unknown> #2 0x612ca4c32d78 <unknown> #3 0x612ca4c2f029 <unknown> #4 0x612ca4c6dccc <unknown> #5 0x612ca4c6d47f <unknown> #6 0x612ca4c64de3 <unknown> #7 0x612ca4c3a2dd <unknown> #8 0x612ca4c3b34e <unknown> #9 0x612ca4e9a3e4 <unknown> #10 0x612ca4e9e3d7 <unknown> #11 0x612ca4ea8b20 <unknown> #12 0x612ca4e9f023 <unknown> #13 0x612ca4e6d1aa <unknown> #14 0x612ca4ec36b8 <unknown> #15 0x612ca4ec3847 <unknown> #16 0x612ca4ed3243 <unknown> #17 0x7d0fe1694ac3 <unknown> 2025-10-14 14:50:15 - INFO - WebScraper - [scraper.py:897] - _create_driver_internal - 嘗試方法3:使用系統 PATH 中的 chromedriver 2025-10-14 14:50:15 - INFO - WebScraper - [scraper.py:916] - _create_driver_internal - 找到 chromedriver: /usr/local/bin/chromedriver 2025-10-14 14:50:16 - INFO - WebScraper - [scraper.py:920] - _create_driver_internal - 使用系統 chromedriver 成功創建 WebDriver 2025-10-14 14:50:16 - INFO - WebScraper - [scraper.py:1099] - get_content - 使用 Selenium 訪問 URL: https://wednesdaystudio22.com/product/quillie/ 2025-10-14 14:50:17 - INFO - WebScraper - [scraper.py:1158] - get_content - 等待頁面基本加載完成: https://wednesdaystudio22.com/product/quillie/ 2025-10-14 14:50:17 - INFO - WebScraper - [scraper.py:1165] - get_content - 頁面body元素已加載 2025-10-14 14:50:17 - INFO - WebScraper - [scraper.py:1178] - get_content - 頁面加載狀態: complete 2025-10-14 14:50:17 - INFO - WebScraper - [scraper.py:1195] - get_content - 找到主要內容元素: main 2025-10-14 14:50:17 - INFO - WebScraper - [scraper.py:1206] - get_content - 頁面基本加載完成: https://wednesdaystudio22.com/product/quillie/ 2025-10-14 14:50:19 - INFO - WebScraper - [scraper.py:1610] - _detect_page_type - 檢測到的框架: jquery 2025-10-14 14:50:19 - INFO - WebScraper - [scraper.py:1216] - get_content - 檢測到頁面類型: ajax 2025-10-14 14:50:19 - INFO - WebScraper - [scraper.py:1224] - get_content - 檢測到AJAX內容,等待AJAX請求完成 2025-10-14 14:50:19 - INFO - WebScraper - [scraper.py:1777] - _wait_for_ajax_completion - jQuery AJAX 請求已完成 2025-10-14 14:50:19 - INFO - WebScraper - [scraper.py:1788] - _wait_for_ajax_completion - XHR 請求已完成 2025-10-14 14:50:22 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 13/21 2025-10-14 14:50:23 - INFO - WebScraper - [scraper.py:1238] - get_content - 初始可見元素數量: 121 2025-10-14 14:50:25 - INFO - WebScraper - [scraper.py:1248] - get_content - 元素數量穩定: 121,內容可能已加載完成 2025-10-14 14:50:25 - INFO - WebScraper - [scraper.py:1255] - get_content - 等待可能的動態內容... 2025-10-14 14:50:32 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 13/21 2025-10-14 14:50:42 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 13/21 2025-10-14 14:50:43 - INFO - WebScraper - [scraper.py:1321] - get_content - 成功獲取 URL 內容: https://wednesdaystudio22.com/product/quillie/ (實際 URL: https://wednesdaystudio22.com/product/quillie/) 2025-10-14 14:50:43 - INFO - WebScraper - [scraper.py:1519] - get_content - 清理在 get_content 方法中創建的 WebDriver 實例 2025-10-14 14:50:43 - INFO - WebScraper - [scraper.py:105] - driver - 在設置新WebDriver前關閉舊實例 2025-10-14 14:50:43 - INFO - WebScraper - [scraper.py:249] - close_driver - 線程 138621577471104: 關閉 WebDriver 實例 2025-10-14 14:50:43 - INFO - WebScraper - [scraper.py:277] - close_driver - WebDriver 已成功關閉 2025-10-14 14:50:43 - INFO - WebScraper - [scraper.py:307] - close_driver - 已執行 Python 垃圾回收 2025-10-14 14:50:43 - INFO - WebScraper - [scraper.py:1526] - get_content - WebDriver 實例已成功返回到池中 2025-10-14 14:50:43 - INFO - WebScraper - [scraper.py:1931] - extract_text_from_html - 開始從HTML中提取文本,HTML長度: 139640 字節 2025-10-14 14:50:43 - INFO - WebScraper - [scraper.py:1943] - extract_text_from_html - 使用 trafilatura 成功提取文本,長度: 338 字節 2025-10-14 14:50:43 - INFO - WebScraper - [scraper.py:1968] - extract_text_from_html - 使用 BeautifulSoup 基本提取成功,長度: 880 字節 2025-10-14 14:50:43 - INFO - WebScraper - [scraper.py:2017] - extract_text_from_html - 使用 BeautifulSoup 針對性提取成功,長度: 468 字節 2025-10-14 14:50:43 - INFO - WebScraper - [scraper.py:2114] - extract_text_from_html - 成功提取結構化數據,長度: 181 字節 2025-10-14 14:50:43 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 trafilatura 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:50:43 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_basic 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:50:43 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_targeted 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:50:43 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 structured_data 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:50:43 - INFO - WebScraper - [scraper.py:2152] - extract_text_from_html - 根據聯絡信息分數 2 選擇 beautifulsoup_basic 作為最佳結果 2025-10-14 14:50:43 - INFO - WebScraper - [scraper.py:2177] - extract_text_from_html - 已成功提取文本,總長度: 1073 字節,約 127 個詞,98 行 2025-10-14 14:50:43 - INFO - WebScraper - [scraper.py:2178] - extract_text_from_html - 提取的最終文本內容: 跳至主要內容 登入/註冊 LINE登入 LINE登入 登入 註冊 登入/註冊 搜尋 購物車 NT$ 0 0 選單 購物車 NT$ 0 0 Quillie NT$ 590 10 件庫存 描述 Quillie ₊ ⊹市集熱銷款𓂃 𓈒𓏸 不同大小的金屬珠與小珍珠像是被寫進銀線裡的標點符號,讓整條項鍊看起來像是一段輕盈的詩 Quillie這個字由quill 和 quiet組成,象徵用最細的筆觸寫下屬於自己的節奏 以極細的蛇鏈作為基礎,搭配金屬珠,尾段設計了一段珠鏈和水晶珠點綴,讓項鍊看起來乾淨不刻意 鏈條上的圓珠是可以自由滑動的,可以讓珠珠在同一側也可以平均分布,戴出不一樣的效果 不管是搭配單色上衣或是有條紋造型的衣服都非常適合 簡約又有時髦感 材質與長度 鈦鋼珠、玻璃珠、貝殼珍珠、鈦鋼鏈條、鈦鋼五金配件 項鍊長度(不含延長鏈): 銅鍍材質接觸到汗水後較容易氧化,建議每次佩戴完都擦拭 @wednesday studio 相關商品 Universe NT$ 590 duality NT$ 590 sweetness NT$ 590 Mood. NT$ 590 關於我們 品牌故事 購物相關 購物須知 退換貨須知 隱私權政策 聯絡我們 Instagram|wednesday___studio Email | wednesdaystudio2022@gmail.com 溫飾工作室 60076339 Instagram Line Envelope Copyright @2025 ᴡᴇᴅɴᴇsᴅᴀʏ 保留一切權利|本網站由 3C翔合作建置 登入 註冊 body::-webkit-scrollbar { width: 7px; } body::-webkit-scrollbar-track { border-radius: 10px; background: #f0f0f0; } body::-webkit-scrollbar-thumb { border-radius: 50px; background: #dfdbdb } 首頁 全部商品 聯絡我們 額外的結構化內容: • Universe NT$590 • duality NT$590 • sweetness NT$590 • Mood. NT$590 • 購物須知 • 退換貨須知 • 隱私權政策 • Instagram|wednesday___studio • Email | wednesdaystudio2022@gmail.com • 溫飾工作室 60076339 2025-10-14 14:50:43 - INFO - main - [url_processor.py:253] - process_url - 更新 UI 審核進度(URL ID=74):已完成 14/21 個網址 2025-10-14 14:50:43 - INFO - main - [url_processor.py:190] - process_url - 處理子頁面: https://wednesdaystudio22.com/product-category/%e6%89%80%e6%9c%89%e5%95%86%e5%93%81-%ef%bd%9c-all/ 2025-10-14 14:50:43 - INFO - main - [url_processor.py:198] - process_url - 嘗試獲取子頁面內容 (嘗試 1/2, force_new_driver=False) 2025-10-14 14:50:43 - INFO - WebScraper - [scraper.py:1004] - get_content - 正在獲取網頁內容: https://wednesdaystudio22.com/product-category/%e6%89%80%e6%9c%89%e5%95%86%e5%93%81-%ef%bd%9c-all/, use_selenium=True, proxy=False, force_new_driver=False 2025-10-14 14:50:43 - INFO - WebScraper - [scraper.py:1035] - get_content - 設置頁面加載超時:21 秒 2025-10-14 14:50:43 - INFO - WebScraper - [scraper.py:1053] - get_content - 嘗試獲取 https://wednesdaystudio22.com/product-category/%e6%89%80%e6%9c%89%e5%95%86%e5%93%81-%ef%bd%9c-all/ 的第 1/3 次請求 2025-10-14 14:50:43 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e135339f510>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/517910a913328d1922376ae26f5c8ae2 2025-10-14 14:50:43 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e135366efd0>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/517910a913328d1922376ae26f5c8ae2 2025-10-14 14:50:43 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13535a27d0>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/517910a913328d1922376ae26f5c8ae2 2025-10-14 14:50:43 - ERROR - WebScraper - [scraper.py:1082] - get_content - 通過實例池管理器創建WebDriver失敗: cannot create weak reference to 'NoneType' object 2025-10-14 14:50:43 - INFO - WebScraper - [scraper.py:857] - _create_driver_internal - 正在創建 WebDriver 實例... 2025-10-14 14:50:43 - INFO - WebScraper - [scraper.py:861] - _create_driver_internal - 嘗試方法1:使用智能路徑發現機制 2025-10-14 14:50:43 - ERROR - WebScraper - [scraper.py:878] - _create_driver_internal - 智能路徑搜索失敗: 'WebScraper' object has no attribute 'smart_find_chrome_paths' 2025-10-14 14:50:43 - INFO - WebScraper - [scraper.py:882] - _create_driver_internal - 嘗試方法2:使用 webdriver-manager 自動管理 2025-10-14 14:50:43 - INFO - WDM - [logger.py:11] - log - ====== WebDriver manager ====== 2025-10-14 14:50:44 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:50:44 - INFO - WDM - [logger.py:11] - log - About to download new driver from https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip 2025-10-14 14:50:44 - INFO - WDM - [logger.py:11] - log - Driver downloading response is 200 2025-10-14 14:50:44 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:50:44 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:50:44 - INFO - WDM - [logger.py:11] - log - Driver has been saved in cache [/opt/urlanalyze/.wdm/drivers/chromedriver/linux64/114.0.5735.90] 2025-10-14 14:50:44 - ERROR - WebScraper - [scraper.py:893] - _create_driver_internal - webdriver-manager 方法失敗: Message: unknown error: Chrome failed to start: exited abnormally. (unknown error: DevToolsActivePort file doesn't exist) (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.) Stacktrace: #0 0x61ea3e2d34e3 <unknown> #1 0x61ea3e002c76 <unknown> #2 0x61ea3e02bd78 <unknown> #3 0x61ea3e028029 <unknown> #4 0x61ea3e066ccc <unknown> #5 0x61ea3e06647f <unknown> #6 0x61ea3e05dde3 <unknown> #7 0x61ea3e0332dd <unknown> #8 0x61ea3e03434e <unknown> #9 0x61ea3e2933e4 <unknown> #10 0x61ea3e2973d7 <unknown> #11 0x61ea3e2a1b20 <unknown> #12 0x61ea3e298023 <unknown> #13 0x61ea3e2661aa <unknown> #14 0x61ea3e2bc6b8 <unknown> #15 0x61ea3e2bc847 <unknown> #16 0x61ea3e2cc243 <unknown> #17 0x74f637494ac3 <unknown> 2025-10-14 14:50:44 - INFO - WebScraper - [scraper.py:897] - _create_driver_internal - 嘗試方法3:使用系統 PATH 中的 chromedriver 2025-10-14 14:50:44 - INFO - WebScraper - [scraper.py:916] - _create_driver_internal - 找到 chromedriver: /usr/local/bin/chromedriver 2025-10-14 14:50:45 - INFO - WebScraper - [scraper.py:920] - _create_driver_internal - 使用系統 chromedriver 成功創建 WebDriver 2025-10-14 14:50:45 - INFO - WebScraper - [scraper.py:1099] - get_content - 使用 Selenium 訪問 URL: https://wednesdaystudio22.com/product-category/%e6%89%80%e6%9c%89%e5%95%86%e5%93%81-%ef%bd%9c-all/ 2025-10-14 14:50:46 - INFO - WebScraper - [scraper.py:1158] - get_content - 等待頁面基本加載完成: https://wednesdaystudio22.com/product-category/%e6%89%80%e6%9c%89%e5%95%86%e5%93%81-%ef%bd%9c-all/ 2025-10-14 14:50:46 - INFO - WebScraper - [scraper.py:1165] - get_content - 頁面body元素已加載 2025-10-14 14:50:46 - INFO - WebScraper - [scraper.py:1178] - get_content - 頁面加載狀態: complete 2025-10-14 14:50:46 - INFO - WebScraper - [scraper.py:1195] - get_content - 找到主要內容元素: main 2025-10-14 14:50:46 - INFO - WebScraper - [scraper.py:1206] - get_content - 頁面基本加載完成: https://wednesdaystudio22.com/product-category/%e6%89%80%e6%9c%89%e5%95%86%e5%93%81-%ef%bd%9c-all/ 2025-10-14 14:50:48 - INFO - WebScraper - [scraper.py:1610] - _detect_page_type - 檢測到的框架: jquery 2025-10-14 14:50:48 - INFO - WebScraper - [scraper.py:1216] - get_content - 檢測到頁面類型: ajax 2025-10-14 14:50:48 - INFO - WebScraper - [scraper.py:1224] - get_content - 檢測到AJAX內容,等待AJAX請求完成 2025-10-14 14:50:48 - INFO - WebScraper - [scraper.py:1777] - _wait_for_ajax_completion - jQuery AJAX 請求已完成 2025-10-14 14:50:48 - INFO - WebScraper - [scraper.py:1788] - _wait_for_ajax_completion - XHR 請求已完成 2025-10-14 14:50:52 - INFO - WebScraper - [scraper.py:1238] - get_content - 初始可見元素數量: 216 2025-10-14 14:50:52 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 14/21 2025-10-14 14:50:54 - INFO - WebScraper - [scraper.py:1248] - get_content - 元素數量穩定: 216,內容可能已加載完成 2025-10-14 14:50:54 - INFO - WebScraper - [scraper.py:1255] - get_content - 等待可能的動態內容... 2025-10-14 14:50:57 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:50:57 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:50:59 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:50:59 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:51:02 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 14/21 2025-10-14 14:51:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:51:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:51:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:51:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:51:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:51:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:51:05 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:51:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.10 秒,結果: 0 2025-10-14 14:51:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.11 秒,結果: 0 2025-10-14 14:51:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.09 秒,結果: 0 2025-10-14 14:51:07 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:51:07 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.06 秒,結果: 0 2025-10-14 14:51:12 - INFO - WebScraper - [scraper.py:1321] - get_content - 成功獲取 URL 內容: https://wednesdaystudio22.com/product-category/%e6%89%80%e6%9c%89%e5%95%86%e5%93%81-%ef%bd%9c-all/ (實際 URL: https://wednesdaystudio22.com/product-category/%e6%89%80%e6%9c%89%e5%95%86%e5%93%81-%ef%bd%9c-all/) 2025-10-14 14:51:12 - INFO - WebScraper - [scraper.py:1519] - get_content - 清理在 get_content 方法中創建的 WebDriver 實例 2025-10-14 14:51:12 - INFO - WebScraper - [scraper.py:105] - driver - 在設置新WebDriver前關閉舊實例 2025-10-14 14:51:12 - INFO - WebScraper - [scraper.py:249] - close_driver - 線程 138621577471104: 關閉 WebDriver 實例 2025-10-14 14:51:12 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 14/21 2025-10-14 14:51:12 - INFO - WebScraper - [scraper.py:277] - close_driver - WebDriver 已成功關閉 2025-10-14 14:51:12 - INFO - WebScraper - [scraper.py:307] - close_driver - 已執行 Python 垃圾回收 2025-10-14 14:51:12 - INFO - WebScraper - [scraper.py:1526] - get_content - WebDriver 實例已成功返回到池中 2025-10-14 14:51:12 - INFO - WebScraper - [scraper.py:1931] - extract_text_from_html - 開始從HTML中提取文本,HTML長度: 171770 字節 2025-10-14 14:51:12 - INFO - WebScraper - [scraper.py:1943] - extract_text_from_html - 使用 trafilatura 成功提取文本,長度: 394 字節 2025-10-14 14:51:12 - INFO - WebScraper - [scraper.py:1968] - extract_text_from_html - 使用 BeautifulSoup 基本提取成功,長度: 1078 字節 2025-10-14 14:51:12 - INFO - WebScraper - [scraper.py:2017] - extract_text_from_html - 使用 BeautifulSoup 針對性提取成功,長度: 618 字節 2025-10-14 14:51:13 - INFO - WebScraper - [scraper.py:2114] - extract_text_from_html - 成功提取結構化數據,長度: 685 字節 2025-10-14 14:51:13 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 trafilatura 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:51:13 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_basic 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:51:13 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_targeted 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:51:13 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 structured_data 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:51:13 - INFO - WebScraper - [scraper.py:2152] - extract_text_from_html - 根據聯絡信息分數 2 選擇 beautifulsoup_basic 作為最佳結果 2025-10-14 14:51:13 - INFO - WebScraper - [scraper.py:2177] - extract_text_from_html - 已成功提取文本,總長度: 1775 字節,約 313 個詞,235 行 2025-10-14 14:51:13 - INFO - WebScraper - [scraper.py:2178] - extract_text_from_html - 提取的最終文本內容: 跳至主要內容 登入/註冊 LINE登入 LINE登入 登入 註冊 登入/註冊 搜尋 購物車 NT$ 0 0 選單 購物車 NT$ 0 0 排序 上架時間:由新到舊 上架時間:由舊到新 價格:由低至高 價格:由高至低 銷量:由高至低 每頁 每頁顯示 24 個 每頁顯示 48 個 每頁顯示 72 個 Nivelle NT$ 590 Lune NT$ 590 Vittra NT$ 590 Quillie NT$ 590 Ethereal NT$ 590 Bloom NT$ 790 窗花 NT$ 690 Daisy NT$ 690 Clarus NT$ 690 Star 𖤐 NT$ 690 winter NT$ 690 ⋆. 𐙚˚ ribbon 𝜗𝜚˚⋆ NT$ 690 Polaris NT$ 690 April NT$ 690 Odette NT$ 690 blooming NT$ 690 Glyniya NT$ 690 admiring NT$ 690 meteor NT$ 590 SUMMER NT$ 590 流光夢境 NT$ 590 Eleanor NT$ 590 Orlena NT$ 590 Oceana NT$ 590 商品分類 熱門商品 | best seller 5 5 個產品 所有商品 | ALL 46 46 個產品 項鍊 | necklaces 46 46 個產品 最新商品 Nivelle NT$ 590 Lune NT$ 590 Vittra NT$ 590 Quillie NT$ 590 Ethereal NT$ 590 關於我們 品牌故事 購物相關 購物須知 退換貨須知 隱私權政策 聯絡我們 Instagram|wednesday___studio Email | wednesdaystudio2022@gmail.com 溫飾工作室 60076339 Instagram Line Envelope Copyright @2025 ᴡᴇᴅɴᴇsᴅᴀʏ 保留一切權利|本網站由 3C翔合作建置 登入 註冊 body::-webkit-scrollbar { width: 7px; } body::-webkit-scrollbar-track { border-radius: 10px; background: #f0f0f0; } body::-webkit-scrollbar-thumb { border-radius: 50px; background: #dfdbdb } 首頁 全部商品 聯絡我們 額外的結構化內容: • Nivelle NT$590 • Lune NT$590 • Vittra NT$590 • Quillie NT$590 • Ethereal NT$590 • Bloom NT$790 • 窗花 NT$690 • Daisy NT$690 • Clarus NT$690 • Star 𖤐 NT$690 • winter NT$690 • ⋆. 𐙚˚ ribbon 𝜗𝜚˚⋆ NT$690 • Polaris NT$690 • April NT$690 • Odette NT$690 • blooming NT$690 • Glyniya NT$690 • admiring NT$690 • meteor NT$590 • SUMMER NT$590 • 流光夢境 NT$590 • Eleanor NT$590 • Orlena NT$590 • Oceana NT$590 • 熱門商品 | best seller55 個產品 • 所有商品 | ALL4646 個產品 • 項鍊 | necklaces4646 個產品 • Nivelle NT$590 • Lune NT$590 • Vittra NT$590 • Quillie NT$590 • Ethereal NT$590 • 購物須知 • 退換貨須知 • 隱私權政策 • Instagram|wednesday___studio • Email | wednesdaystudio2022@gmail.com • 溫飾工作室 60076339 2025-10-14 14:51:13 - INFO - main - [url_processor.py:253] - process_url - 更新 UI 審核進度(URL ID=74):已完成 15/21 個網址 2025-10-14 14:51:13 - INFO - main - [url_processor.py:190] - process_url - 處理子頁面: https://wednesdaystudio22.com/product-category/%e6%88%92%e6%8c%87-%ef%bd%9c-rings/ 2025-10-14 14:51:13 - INFO - main - [url_processor.py:198] - process_url - 嘗試獲取子頁面內容 (嘗試 1/2, force_new_driver=False) 2025-10-14 14:51:13 - INFO - WebScraper - [scraper.py:1004] - get_content - 正在獲取網頁內容: https://wednesdaystudio22.com/product-category/%e6%88%92%e6%8c%87-%ef%bd%9c-rings/, use_selenium=True, proxy=False, force_new_driver=False 2025-10-14 14:51:13 - INFO - WebScraper - [scraper.py:1035] - get_content - 設置頁面加載超時:21 秒 2025-10-14 14:51:13 - INFO - WebScraper - [scraper.py:1053] - get_content - 嘗試獲取 https://wednesdaystudio22.com/product-category/%e6%88%92%e6%8c%87-%ef%bd%9c-rings/ 的第 1/3 次請求 2025-10-14 14:51:13 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13535f5f90>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/182e7e6ce9144ac2b702d1aae848668a 2025-10-14 14:51:13 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13535cafd0>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/182e7e6ce9144ac2b702d1aae848668a 2025-10-14 14:51:13 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13535c9e50>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/182e7e6ce9144ac2b702d1aae848668a 2025-10-14 14:51:13 - ERROR - WebScraper - [scraper.py:1082] - get_content - 通過實例池管理器創建WebDriver失敗: cannot create weak reference to 'NoneType' object 2025-10-14 14:51:13 - INFO - WebScraper - [scraper.py:857] - _create_driver_internal - 正在創建 WebDriver 實例... 2025-10-14 14:51:13 - INFO - WebScraper - [scraper.py:861] - _create_driver_internal - 嘗試方法1:使用智能路徑發現機制 2025-10-14 14:51:13 - ERROR - WebScraper - [scraper.py:878] - _create_driver_internal - 智能路徑搜索失敗: 'WebScraper' object has no attribute 'smart_find_chrome_paths' 2025-10-14 14:51:13 - INFO - WebScraper - [scraper.py:882] - _create_driver_internal - 嘗試方法2:使用 webdriver-manager 自動管理 2025-10-14 14:51:13 - INFO - WDM - [logger.py:11] - log - ====== WebDriver manager ====== 2025-10-14 14:51:13 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:51:13 - INFO - WDM - [logger.py:11] - log - About to download new driver from https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip 2025-10-14 14:51:13 - INFO - WDM - [logger.py:11] - log - Driver downloading response is 200 2025-10-14 14:51:13 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:51:13 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:51:13 - INFO - WDM - [logger.py:11] - log - Driver has been saved in cache [/opt/urlanalyze/.wdm/drivers/chromedriver/linux64/114.0.5735.90] 2025-10-14 14:51:14 - ERROR - WebScraper - [scraper.py:893] - _create_driver_internal - webdriver-manager 方法失敗: Message: unknown error: Chrome failed to start: exited abnormally. (unknown error: DevToolsActivePort file doesn't exist) (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.) Stacktrace: #0 0x58e5551e94e3 <unknown> #1 0x58e554f18c76 <unknown> #2 0x58e554f41d78 <unknown> #3 0x58e554f3e029 <unknown> #4 0x58e554f7cccc <unknown> #5 0x58e554f7c47f <unknown> #6 0x58e554f73de3 <unknown> #7 0x58e554f492dd <unknown> #8 0x58e554f4a34e <unknown> #9 0x58e5551a93e4 <unknown> #10 0x58e5551ad3d7 <unknown> #11 0x58e5551b7b20 <unknown> #12 0x58e5551ae023 <unknown> #13 0x58e55517c1aa <unknown> #14 0x58e5551d26b8 <unknown> #15 0x58e5551d2847 <unknown> #16 0x58e5551e2243 <unknown> #17 0x72d852694ac3 <unknown> 2025-10-14 14:51:14 - INFO - WebScraper - [scraper.py:897] - _create_driver_internal - 嘗試方法3:使用系統 PATH 中的 chromedriver 2025-10-14 14:51:14 - INFO - WebScraper - [scraper.py:916] - _create_driver_internal - 找到 chromedriver: /usr/local/bin/chromedriver 2025-10-14 14:51:14 - INFO - WebScraper - [scraper.py:920] - _create_driver_internal - 使用系統 chromedriver 成功創建 WebDriver 2025-10-14 14:51:14 - INFO - WebScraper - [scraper.py:1099] - get_content - 使用 Selenium 訪問 URL: https://wednesdaystudio22.com/product-category/%e6%88%92%e6%8c%87-%ef%bd%9c-rings/ 2025-10-14 14:51:16 - INFO - WebScraper - [scraper.py:1158] - get_content - 等待頁面基本加載完成: https://wednesdaystudio22.com/product-category/%e6%88%92%e6%8c%87-%ef%bd%9c-rings/ 2025-10-14 14:51:17 - INFO - WebScraper - [scraper.py:1165] - get_content - 頁面body元素已加載 2025-10-14 14:51:17 - INFO - WebScraper - [scraper.py:1178] - get_content - 頁面加載狀態: complete 2025-10-14 14:51:17 - INFO - WebScraper - [scraper.py:1195] - get_content - 找到主要內容元素: main 2025-10-14 14:51:17 - INFO - WebScraper - [scraper.py:1206] - get_content - 頁面基本加載完成: https://wednesdaystudio22.com/product-category/%e6%88%92%e6%8c%87-%ef%bd%9c-rings/ 2025-10-14 14:51:19 - INFO - WebScraper - [scraper.py:1610] - _detect_page_type - 檢測到的框架: jquery 2025-10-14 14:51:19 - INFO - WebScraper - [scraper.py:1216] - get_content - 檢測到頁面類型: ajax 2025-10-14 14:51:19 - INFO - WebScraper - [scraper.py:1224] - get_content - 檢測到AJAX內容,等待AJAX請求完成 2025-10-14 14:51:19 - INFO - WebScraper - [scraper.py:1777] - _wait_for_ajax_completion - jQuery AJAX 請求已完成 2025-10-14 14:51:19 - INFO - WebScraper - [scraper.py:1788] - _wait_for_ajax_completion - XHR 請求已完成 2025-10-14 14:51:22 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 15/21 2025-10-14 14:51:23 - INFO - WebScraper - [scraper.py:1238] - get_content - 初始可見元素數量: 98 2025-10-14 14:51:25 - INFO - WebScraper - [scraper.py:1248] - get_content - 元素數量穩定: 98,內容可能已加載完成 2025-10-14 14:51:25 - INFO - WebScraper - [scraper.py:1255] - get_content - 等待可能的動態內容... 2025-10-14 14:51:32 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 15/21 2025-10-14 14:51:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:51:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 128.0MB, CPU 0.0% 2025-10-14 14:51:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:51:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 1/5, 隊列大小 0, 總處理任務 1, 記憶體 200.7MB, CPU 0.0% 2025-10-14 14:51:42 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 15/21 2025-10-14 14:51:43 - INFO - WebScraper - [scraper.py:1321] - get_content - 成功獲取 URL 內容: https://wednesdaystudio22.com/product-category/%e6%88%92%e6%8c%87-%ef%bd%9c-rings/ (實際 URL: https://wednesdaystudio22.com/product-category/%e6%88%92%e6%8c%87-%ef%bd%9c-rings/) 2025-10-14 14:51:43 - INFO - WebScraper - [scraper.py:1519] - get_content - 清理在 get_content 方法中創建的 WebDriver 實例 2025-10-14 14:51:43 - INFO - WebScraper - [scraper.py:105] - driver - 在設置新WebDriver前關閉舊實例 2025-10-14 14:51:43 - INFO - WebScraper - [scraper.py:249] - close_driver - 線程 138621577471104: 關閉 WebDriver 實例 2025-10-14 14:51:43 - INFO - WebScraper - [scraper.py:277] - close_driver - WebDriver 已成功關閉 2025-10-14 14:51:43 - INFO - WebScraper - [scraper.py:307] - close_driver - 已執行 Python 垃圾回收 2025-10-14 14:51:43 - INFO - WebScraper - [scraper.py:1526] - get_content - WebDriver 實例已成功返回到池中 2025-10-14 14:51:43 - INFO - WebScraper - [scraper.py:1931] - extract_text_from_html - 開始從HTML中提取文本,HTML長度: 117930 字節 2025-10-14 14:51:43 - INFO - WebScraper - [scraper.py:1943] - extract_text_from_html - 使用 trafilatura 成功提取文本,長度: 717 字節 2025-10-14 14:51:43 - INFO - WebScraper - [scraper.py:1968] - extract_text_from_html - 使用 BeautifulSoup 基本提取成功,長度: 639 字節 2025-10-14 14:51:43 - INFO - WebScraper - [scraper.py:2114] - extract_text_from_html - 成功提取結構化數據,長度: 288 字節 2025-10-14 14:51:43 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 trafilatura 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:51:43 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_basic 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:51:43 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 structured_data 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:51:43 - INFO - WebScraper - [scraper.py:2152] - extract_text_from_html - 根據聯絡信息分數 2 選擇 beautifulsoup_basic 作為最佳結果 2025-10-14 14:51:43 - INFO - WebScraper - [scraper.py:2177] - extract_text_from_html - 已成功提取文本,總長度: 939 字節,約 146 個詞,104 行 2025-10-14 14:51:43 - INFO - WebScraper - [scraper.py:2178] - extract_text_from_html - 提取的最終文本內容: 跳至主要內容 登入/註冊 LINE登入 LINE登入 登入 註冊 登入/註冊 搜尋 購物車 NT$ 0 0 選單 購物車 NT$ 0 0 找不到符合您選擇的商品 商品分類 熱門商品 | best seller 5 5 個產品 所有商品 | ALL 46 46 個產品 項鍊 | necklaces 46 46 個產品 最新商品 Nivelle NT$ 590 Lune NT$ 590 Vittra NT$ 590 Quillie NT$ 590 Ethereal NT$ 590 關於我們 品牌故事 購物相關 購物須知 退換貨須知 隱私權政策 聯絡我們 Instagram|wednesday___studio Email | wednesdaystudio2022@gmail.com 溫飾工作室 60076339 Instagram Line Envelope Copyright @2025 ᴡᴇᴅɴᴇsᴅᴀʏ 保留一切權利|本網站由 3C翔合作建置 登入 註冊 body::-webkit-scrollbar { width: 7px; } body::-webkit-scrollbar-track { border-radius: 10px; background: #f0f0f0; } body::-webkit-scrollbar-thumb { border-radius: 50px; background: #dfdbdb } 首頁 全部商品 聯絡我們 額外的結構化內容: • 熱門商品 | best seller55 個產品 • 所有商品 | ALL4646 個產品 • 項鍊 | necklaces4646 個產品 • Nivelle NT$590 • Lune NT$590 • Vittra NT$590 • Quillie NT$590 • Ethereal NT$590 • 購物須知 • 退換貨須知 • 隱私權政策 • Instagram|wednesday___studio • Email | wednesdaystudio2022@gmail.com • 溫飾工作室 60076339 2025-10-14 14:51:43 - INFO - main - [url_processor.py:253] - process_url - 更新 UI 審核進度(URL ID=74):已完成 16/21 個網址 2025-10-14 14:51:43 - INFO - main - [url_processor.py:190] - process_url - 處理子頁面: https://wednesdaystudio22.com/product-category/%e7%86%b1%e9%96%80%e5%95%86%e5%93%81-%ef%bd%9c-best-seller/ 2025-10-14 14:51:43 - INFO - main - [url_processor.py:198] - process_url - 嘗試獲取子頁面內容 (嘗試 1/2, force_new_driver=False) 2025-10-14 14:51:43 - INFO - WebScraper - [scraper.py:1004] - get_content - 正在獲取網頁內容: https://wednesdaystudio22.com/product-category/%e7%86%b1%e9%96%80%e5%95%86%e5%93%81-%ef%bd%9c-best-seller/, use_selenium=True, proxy=False, force_new_driver=False 2025-10-14 14:51:43 - INFO - WebScraper - [scraper.py:1035] - get_content - 設置頁面加載超時:22 秒 2025-10-14 14:51:43 - INFO - WebScraper - [scraper.py:1053] - get_content - 嘗試獲取 https://wednesdaystudio22.com/product-category/%e7%86%b1%e9%96%80%e5%95%86%e5%93%81-%ef%bd%9c-best-seller/ 的第 1/3 次請求 2025-10-14 14:51:43 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13534d4990>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/2359b66d50e016b443dab8f9f3b00ace 2025-10-14 14:51:43 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13534d6c10>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/2359b66d50e016b443dab8f9f3b00ace 2025-10-14 14:51:43 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13534d5050>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/2359b66d50e016b443dab8f9f3b00ace 2025-10-14 14:51:43 - ERROR - WebScraper - [scraper.py:1082] - get_content - 通過實例池管理器創建WebDriver失敗: cannot create weak reference to 'NoneType' object 2025-10-14 14:51:43 - INFO - WebScraper - [scraper.py:857] - _create_driver_internal - 正在創建 WebDriver 實例... 2025-10-14 14:51:43 - INFO - WebScraper - [scraper.py:861] - _create_driver_internal - 嘗試方法1:使用智能路徑發現機制 2025-10-14 14:51:43 - ERROR - WebScraper - [scraper.py:878] - _create_driver_internal - 智能路徑搜索失敗: 'WebScraper' object has no attribute 'smart_find_chrome_paths' 2025-10-14 14:51:43 - INFO - WebScraper - [scraper.py:882] - _create_driver_internal - 嘗試方法2:使用 webdriver-manager 自動管理 2025-10-14 14:51:43 - INFO - WDM - [logger.py:11] - log - ====== WebDriver manager ====== 2025-10-14 14:51:43 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:51:43 - INFO - WDM - [logger.py:11] - log - About to download new driver from https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip 2025-10-14 14:51:43 - INFO - WDM - [logger.py:11] - log - Driver downloading response is 200 2025-10-14 14:51:44 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:51:44 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:51:44 - INFO - WDM - [logger.py:11] - log - Driver has been saved in cache [/opt/urlanalyze/.wdm/drivers/chromedriver/linux64/114.0.5735.90] 2025-10-14 14:51:44 - ERROR - WebScraper - [scraper.py:893] - _create_driver_internal - webdriver-manager 方法失敗: Message: unknown error: Chrome failed to start: exited abnormally. (unknown error: DevToolsActivePort file doesn't exist) (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.) Stacktrace: #0 0x5bbf237194e3 <unknown> #1 0x5bbf23448c76 <unknown> #2 0x5bbf23471d78 <unknown> #3 0x5bbf2346e029 <unknown> #4 0x5bbf234acccc <unknown> #5 0x5bbf234ac47f <unknown> #6 0x5bbf234a3de3 <unknown> #7 0x5bbf234792dd <unknown> #8 0x5bbf2347a34e <unknown> #9 0x5bbf236d93e4 <unknown> #10 0x5bbf236dd3d7 <unknown> #11 0x5bbf236e7b20 <unknown> #12 0x5bbf236de023 <unknown> #13 0x5bbf236ac1aa <unknown> #14 0x5bbf237026b8 <unknown> #15 0x5bbf23702847 <unknown> #16 0x5bbf23712243 <unknown> #17 0x703771c94ac3 <unknown> 2025-10-14 14:51:44 - INFO - WebScraper - [scraper.py:897] - _create_driver_internal - 嘗試方法3:使用系統 PATH 中的 chromedriver 2025-10-14 14:51:44 - INFO - WebScraper - [scraper.py:916] - _create_driver_internal - 找到 chromedriver: /usr/local/bin/chromedriver 2025-10-14 14:51:45 - INFO - WebScraper - [scraper.py:920] - _create_driver_internal - 使用系統 chromedriver 成功創建 WebDriver 2025-10-14 14:51:45 - INFO - WebScraper - [scraper.py:1099] - get_content - 使用 Selenium 訪問 URL: https://wednesdaystudio22.com/product-category/%e7%86%b1%e9%96%80%e5%95%86%e5%93%81-%ef%bd%9c-best-seller/ 2025-10-14 14:51:45 - INFO - WebScraper - [scraper.py:1158] - get_content - 等待頁面基本加載完成: https://wednesdaystudio22.com/product-category/%e7%86%b1%e9%96%80%e5%95%86%e5%93%81-%ef%bd%9c-best-seller/ 2025-10-14 14:51:46 - INFO - WebScraper - [scraper.py:1165] - get_content - 頁面body元素已加載 2025-10-14 14:51:46 - INFO - WebScraper - [scraper.py:1178] - get_content - 頁面加載狀態: complete 2025-10-14 14:51:46 - INFO - WebScraper - [scraper.py:1195] - get_content - 找到主要內容元素: main 2025-10-14 14:51:46 - INFO - WebScraper - [scraper.py:1206] - get_content - 頁面基本加載完成: https://wednesdaystudio22.com/product-category/%e7%86%b1%e9%96%80%e5%95%86%e5%93%81-%ef%bd%9c-best-seller/ 2025-10-14 14:51:48 - INFO - WebScraper - [scraper.py:1610] - _detect_page_type - 檢測到的框架: jquery 2025-10-14 14:51:48 - INFO - WebScraper - [scraper.py:1216] - get_content - 檢測到頁面類型: ajax 2025-10-14 14:51:48 - INFO - WebScraper - [scraper.py:1224] - get_content - 檢測到AJAX內容,等待AJAX請求完成 2025-10-14 14:51:48 - INFO - WebScraper - [scraper.py:1777] - _wait_for_ajax_completion - jQuery AJAX 請求已完成 2025-10-14 14:51:48 - INFO - WebScraper - [scraper.py:1788] - _wait_for_ajax_completion - XHR 請求已完成 2025-10-14 14:51:52 - INFO - WebScraper - [scraper.py:1238] - get_content - 初始可見元素數量: 140 2025-10-14 14:51:52 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 16/21 2025-10-14 14:51:54 - INFO - WebScraper - [scraper.py:1248] - get_content - 元素數量穩定: 140,內容可能已加載完成 2025-10-14 14:51:54 - INFO - WebScraper - [scraper.py:1255] - get_content - 等待可能的動態內容... 2025-10-14 14:52:02 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 16/21 2025-10-14 14:52:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:52:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:52:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:52:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:52:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:52:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:52:07 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:52:07 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:52:12 - INFO - WebScraper - [scraper.py:1321] - get_content - 成功獲取 URL 內容: https://wednesdaystudio22.com/product-category/%e7%86%b1%e9%96%80%e5%95%86%e5%93%81-%ef%bd%9c-best-seller/ (實際 URL: https://wednesdaystudio22.com/product-category/%e7%86%b1%e9%96%80%e5%95%86%e5%93%81-%ef%bd%9c-best-seller/) 2025-10-14 14:52:12 - INFO - WebScraper - [scraper.py:1519] - get_content - 清理在 get_content 方法中創建的 WebDriver 實例 2025-10-14 14:52:12 - INFO - WebScraper - [scraper.py:105] - driver - 在設置新WebDriver前關閉舊實例 2025-10-14 14:52:12 - INFO - WebScraper - [scraper.py:249] - close_driver - 線程 138621577471104: 關閉 WebDriver 實例 2025-10-14 14:52:12 - INFO - WebScraper - [scraper.py:277] - close_driver - WebDriver 已成功關閉 2025-10-14 14:52:12 - INFO - WebScraper - [scraper.py:307] - close_driver - 已執行 Python 垃圾回收 2025-10-14 14:52:12 - INFO - WebScraper - [scraper.py:1526] - get_content - WebDriver 實例已成功返回到池中 2025-10-14 14:52:12 - INFO - WebScraper - [scraper.py:1931] - extract_text_from_html - 開始從HTML中提取文本,HTML長度: 156835 字節 2025-10-14 14:52:12 - INFO - WebScraper - [scraper.py:1943] - extract_text_from_html - 使用 trafilatura 成功提取文本,長度: 863 字節 2025-10-14 14:52:12 - INFO - WebScraper - [scraper.py:1968] - extract_text_from_html - 使用 BeautifulSoup 基本提取成功,長度: 785 字節 2025-10-14 14:52:12 - INFO - WebScraper - [scraper.py:2017] - extract_text_from_html - 使用 BeautifulSoup 針對性提取成功,長度: 317 字節 2025-10-14 14:52:12 - INFO - WebScraper - [scraper.py:2114] - extract_text_from_html - 成功提取結構化數據,長度: 372 字節 2025-10-14 14:52:12 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 trafilatura 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:52:12 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_basic 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:52:12 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_targeted 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:52:12 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 structured_data 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:52:12 - INFO - WebScraper - [scraper.py:2152] - extract_text_from_html - 根據聯絡信息分數 2 選擇 beautifulsoup_basic 作為最佳結果 2025-10-14 14:52:12 - INFO - WebScraper - [scraper.py:2177] - extract_text_from_html - 已成功提取文本,總長度: 1169 字節,約 191 個詞,139 行 2025-10-14 14:52:12 - INFO - WebScraper - [scraper.py:2178] - extract_text_from_html - 提取的最終文本內容: 跳至主要內容 登入/註冊 LINE登入 LINE登入 登入 註冊 登入/註冊 搜尋 購物車 NT$ 0 0 選單 購物車 NT$ 0 0 排序 上架時間:由新到舊 上架時間:由舊到新 價格:由低至高 價格:由高至低 銷量:由高至低 每頁 每頁顯示 24 個 每頁顯示 48 個 每頁顯示 72 個 Odette NT$ 690 blooming NT$ 690 lovely NT$ 590 Sparkling NT$ 590 精靈花園 NT$ 490 商品分類 熱門商品 | best seller 5 5 個產品 所有商品 | ALL 46 46 個產品 項鍊 | necklaces 46 46 個產品 最新商品 Nivelle NT$ 590 Lune NT$ 590 Vittra NT$ 590 Quillie NT$ 590 Ethereal NT$ 590 關於我們 品牌故事 購物相關 購物須知 退換貨須知 隱私權政策 聯絡我們 Instagram|wednesday___studio Email | wednesdaystudio2022@gmail.com 溫飾工作室 60076339 Instagram Line Envelope Copyright @2025 ᴡᴇᴅɴᴇsᴅᴀʏ 保留一切權利|本網站由 3C翔合作建置 登入 註冊 body::-webkit-scrollbar { width: 7px; } body::-webkit-scrollbar-track { border-radius: 10px; background: #f0f0f0; } body::-webkit-scrollbar-thumb { border-radius: 50px; background: #dfdbdb } 首頁 全部商品 聯絡我們 額外的結構化內容: • Odette NT$690 • blooming NT$690 • lovely NT$590 • Sparkling NT$590 • 精靈花園 NT$490 • 熱門商品 | best seller55 個產品 • 所有商品 | ALL4646 個產品 • 項鍊 | necklaces4646 個產品 • Nivelle NT$590 • Lune NT$590 • Vittra NT$590 • Quillie NT$590 • Ethereal NT$590 • 購物須知 • 退換貨須知 • 隱私權政策 • Instagram|wednesday___studio • Email | wednesdaystudio2022@gmail.com • 溫飾工作室 60076339 2025-10-14 14:52:12 - INFO - main - [url_processor.py:253] - process_url - 更新 UI 審核進度(URL ID=74):已完成 17/21 個網址 2025-10-14 14:52:12 - INFO - main - [url_processor.py:190] - process_url - 處理子頁面: https://wednesdaystudio22.com/shop/ 2025-10-14 14:52:12 - INFO - main - [url_processor.py:198] - process_url - 嘗試獲取子頁面內容 (嘗試 1/2, force_new_driver=False) 2025-10-14 14:52:12 - INFO - WebScraper - [scraper.py:1004] - get_content - 正在獲取網頁內容: https://wednesdaystudio22.com/shop/, use_selenium=True, proxy=False, force_new_driver=False 2025-10-14 14:52:12 - INFO - WebScraper - [scraper.py:1035] - get_content - 設置頁面加載超時:20 秒 2025-10-14 14:52:12 - INFO - WebScraper - [scraper.py:1053] - get_content - 嘗試獲取 https://wednesdaystudio22.com/shop/ 的第 1/3 次請求 2025-10-14 14:52:12 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13534d7c50>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/220f65bc8066e3759046c0120cd9e767 2025-10-14 14:52:12 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13535b1d90>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/220f65bc8066e3759046c0120cd9e767 2025-10-14 14:52:12 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13535b0610>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/220f65bc8066e3759046c0120cd9e767 2025-10-14 14:52:12 - ERROR - WebScraper - [scraper.py:1082] - get_content - 通過實例池管理器創建WebDriver失敗: cannot create weak reference to 'NoneType' object 2025-10-14 14:52:12 - INFO - WebScraper - [scraper.py:857] - _create_driver_internal - 正在創建 WebDriver 實例... 2025-10-14 14:52:12 - INFO - WebScraper - [scraper.py:861] - _create_driver_internal - 嘗試方法1:使用智能路徑發現機制 2025-10-14 14:52:12 - ERROR - WebScraper - [scraper.py:878] - _create_driver_internal - 智能路徑搜索失敗: 'WebScraper' object has no attribute 'smart_find_chrome_paths' 2025-10-14 14:52:12 - INFO - WebScraper - [scraper.py:882] - _create_driver_internal - 嘗試方法2:使用 webdriver-manager 自動管理 2025-10-14 14:52:12 - INFO - WDM - [logger.py:11] - log - ====== WebDriver manager ====== 2025-10-14 14:52:12 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:52:12 - INFO - WDM - [logger.py:11] - log - About to download new driver from https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip 2025-10-14 14:52:12 - INFO - WDM - [logger.py:11] - log - Driver downloading response is 200 2025-10-14 14:52:13 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:52:13 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 17/21 2025-10-14 14:52:13 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:52:13 - INFO - WDM - [logger.py:11] - log - Driver has been saved in cache [/opt/urlanalyze/.wdm/drivers/chromedriver/linux64/114.0.5735.90] 2025-10-14 14:52:13 - ERROR - WebScraper - [scraper.py:893] - _create_driver_internal - webdriver-manager 方法失敗: Message: unknown error: Chrome failed to start: exited abnormally. (unknown error: DevToolsActivePort file doesn't exist) (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.) Stacktrace: #0 0x557ef8e174e3 <unknown> #1 0x557ef8b46c76 <unknown> #2 0x557ef8b6fd78 <unknown> #3 0x557ef8b6c029 <unknown> #4 0x557ef8baaccc <unknown> #5 0x557ef8baa47f <unknown> #6 0x557ef8ba1de3 <unknown> #7 0x557ef8b772dd <unknown> #8 0x557ef8b7834e <unknown> #9 0x557ef8dd73e4 <unknown> #10 0x557ef8ddb3d7 <unknown> #11 0x557ef8de5b20 <unknown> #12 0x557ef8ddc023 <unknown> #13 0x557ef8daa1aa <unknown> #14 0x557ef8e006b8 <unknown> #15 0x557ef8e00847 <unknown> #16 0x557ef8e10243 <unknown> #17 0x78b9f1494ac3 <unknown> 2025-10-14 14:52:13 - INFO - WebScraper - [scraper.py:897] - _create_driver_internal - 嘗試方法3:使用系統 PATH 中的 chromedriver 2025-10-14 14:52:13 - INFO - WebScraper - [scraper.py:916] - _create_driver_internal - 找到 chromedriver: /usr/local/bin/chromedriver 2025-10-14 14:52:14 - INFO - WebScraper - [scraper.py:920] - _create_driver_internal - 使用系統 chromedriver 成功創建 WebDriver 2025-10-14 14:52:14 - INFO - WebScraper - [scraper.py:1099] - get_content - 使用 Selenium 訪問 URL: https://wednesdaystudio22.com/shop/ 2025-10-14 14:52:16 - INFO - WebScraper - [scraper.py:1158] - get_content - 等待頁面基本加載完成: https://wednesdaystudio22.com/shop/ 2025-10-14 14:52:16 - INFO - WebScraper - [scraper.py:1165] - get_content - 頁面body元素已加載 2025-10-14 14:52:16 - INFO - WebScraper - [scraper.py:1178] - get_content - 頁面加載狀態: complete 2025-10-14 14:52:16 - INFO - WebScraper - [scraper.py:1195] - get_content - 找到主要內容元素: main 2025-10-14 14:52:16 - INFO - WebScraper - [scraper.py:1206] - get_content - 頁面基本加載完成: https://wednesdaystudio22.com/shop/ 2025-10-14 14:52:18 - INFO - WebScraper - [scraper.py:1610] - _detect_page_type - 檢測到的框架: jquery 2025-10-14 14:52:18 - INFO - WebScraper - [scraper.py:1216] - get_content - 檢測到頁面類型: ajax 2025-10-14 14:52:18 - INFO - WebScraper - [scraper.py:1224] - get_content - 檢測到AJAX內容,等待AJAX請求完成 2025-10-14 14:52:18 - INFO - WebScraper - [scraper.py:1777] - _wait_for_ajax_completion - jQuery AJAX 請求已完成 2025-10-14 14:52:18 - INFO - WebScraper - [scraper.py:1788] - _wait_for_ajax_completion - XHR 請求已完成 2025-10-14 14:52:22 - INFO - WebScraper - [scraper.py:1238] - get_content - 初始可見元素數量: 216 2025-10-14 14:52:23 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 17/21 2025-10-14 14:52:24 - INFO - WebScraper - [scraper.py:1248] - get_content - 元素數量穩定: 216,內容可能已加載完成 2025-10-14 14:52:24 - INFO - WebScraper - [scraper.py:1255] - get_content - 等待可能的動態內容... 2025-10-14 14:52:33 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 17/21 2025-10-14 14:52:42 - INFO - WebScraper - [scraper.py:1321] - get_content - 成功獲取 URL 內容: https://wednesdaystudio22.com/shop/ (實際 URL: https://wednesdaystudio22.com/shop/) 2025-10-14 14:52:42 - INFO - WebScraper - [scraper.py:1519] - get_content - 清理在 get_content 方法中創建的 WebDriver 實例 2025-10-14 14:52:42 - INFO - WebScraper - [scraper.py:105] - driver - 在設置新WebDriver前關閉舊實例 2025-10-14 14:52:42 - INFO - WebScraper - [scraper.py:249] - close_driver - 線程 138621577471104: 關閉 WebDriver 實例 2025-10-14 14:52:43 - INFO - WebScraper - [scraper.py:277] - close_driver - WebDriver 已成功關閉 2025-10-14 14:52:43 - INFO - WebScraper - [scraper.py:307] - close_driver - 已執行 Python 垃圾回收 2025-10-14 14:52:43 - INFO - WebScraper - [scraper.py:1526] - get_content - WebDriver 實例已成功返回到池中 2025-10-14 14:52:43 - INFO - WebScraper - [scraper.py:1931] - extract_text_from_html - 開始從HTML中提取文本,HTML長度: 170331 字節 2025-10-14 14:52:43 - INFO - WebScraper - [scraper.py:1943] - extract_text_from_html - 使用 trafilatura 成功提取文本,長度: 394 字節 2025-10-14 14:52:43 - INFO - WebScraper - [scraper.py:1968] - extract_text_from_html - 使用 BeautifulSoup 基本提取成功,長度: 1078 字節 2025-10-14 14:52:43 - INFO - WebScraper - [scraper.py:2017] - extract_text_from_html - 使用 BeautifulSoup 針對性提取成功,長度: 618 字節 2025-10-14 14:52:43 - INFO - WebScraper - [scraper.py:2114] - extract_text_from_html - 成功提取結構化數據,長度: 685 字節 2025-10-14 14:52:43 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 trafilatura 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:52:43 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_basic 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:52:43 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_targeted 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:52:43 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 structured_data 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:52:43 - INFO - WebScraper - [scraper.py:2152] - extract_text_from_html - 根據聯絡信息分數 2 選擇 beautifulsoup_basic 作為最佳結果 2025-10-14 14:52:43 - INFO - WebScraper - [scraper.py:2177] - extract_text_from_html - 已成功提取文本,總長度: 1775 字節,約 313 個詞,235 行 2025-10-14 14:52:43 - INFO - WebScraper - [scraper.py:2178] - extract_text_from_html - 提取的最終文本內容: 跳至主要內容 登入/註冊 LINE登入 LINE登入 登入 註冊 登入/註冊 搜尋 購物車 NT$ 0 0 選單 購物車 NT$ 0 0 排序 上架時間:由新到舊 上架時間:由舊到新 價格:由低至高 價格:由高至低 銷量:由高至低 每頁 每頁顯示 24 個 每頁顯示 48 個 每頁顯示 72 個 Nivelle NT$ 590 Lune NT$ 590 Vittra NT$ 590 Quillie NT$ 590 Ethereal NT$ 590 Bloom NT$ 790 窗花 NT$ 690 Daisy NT$ 690 Clarus NT$ 690 Star 𖤐 NT$ 690 winter NT$ 690 ⋆. 𐙚˚ ribbon 𝜗𝜚˚⋆ NT$ 690 Polaris NT$ 690 April NT$ 690 Odette NT$ 690 blooming NT$ 690 Glyniya NT$ 690 admiring NT$ 690 meteor NT$ 590 SUMMER NT$ 590 流光夢境 NT$ 590 Eleanor NT$ 590 Orlena NT$ 590 Oceana NT$ 590 商品分類 熱門商品 | best seller 5 5 個產品 所有商品 | ALL 46 46 個產品 項鍊 | necklaces 46 46 個產品 最新商品 Nivelle NT$ 590 Lune NT$ 590 Vittra NT$ 590 Quillie NT$ 590 Ethereal NT$ 590 關於我們 品牌故事 購物相關 購物須知 退換貨須知 隱私權政策 聯絡我們 Instagram|wednesday___studio Email | wednesdaystudio2022@gmail.com 溫飾工作室 60076339 Instagram Line Envelope Copyright @2025 ᴡᴇᴅɴᴇsᴅᴀʏ 保留一切權利|本網站由 3C翔合作建置 登入 註冊 body::-webkit-scrollbar { width: 7px; } body::-webkit-scrollbar-track { border-radius: 10px; background: #f0f0f0; } body::-webkit-scrollbar-thumb { border-radius: 50px; background: #dfdbdb } 首頁 全部商品 聯絡我們 額外的結構化內容: • Nivelle NT$590 • Lune NT$590 • Vittra NT$590 • Quillie NT$590 • Ethereal NT$590 • Bloom NT$790 • 窗花 NT$690 • Daisy NT$690 • Clarus NT$690 • Star 𖤐 NT$690 • winter NT$690 • ⋆. 𐙚˚ ribbon 𝜗𝜚˚⋆ NT$690 • Polaris NT$690 • April NT$690 • Odette NT$690 • blooming NT$690 • Glyniya NT$690 • admiring NT$690 • meteor NT$590 • SUMMER NT$590 • 流光夢境 NT$590 • Eleanor NT$590 • Orlena NT$590 • Oceana NT$590 • 熱門商品 | best seller55 個產品 • 所有商品 | ALL4646 個產品 • 項鍊 | necklaces4646 個產品 • Nivelle NT$590 • Lune NT$590 • Vittra NT$590 • Quillie NT$590 • Ethereal NT$590 • 購物須知 • 退換貨須知 • 隱私權政策 • Instagram|wednesday___studio • Email | wednesdaystudio2022@gmail.com • 溫飾工作室 60076339 2025-10-14 14:52:43 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 17/21 2025-10-14 14:52:43 - INFO - main - [url_processor.py:253] - process_url - 更新 UI 審核進度(URL ID=74):已完成 18/21 個網址 2025-10-14 14:52:43 - INFO - main - [url_processor.py:190] - process_url - 處理子頁面: https://wednesdaystudio22.com/product/vittra/ 2025-10-14 14:52:43 - INFO - main - [url_processor.py:198] - process_url - 嘗試獲取子頁面內容 (嘗試 1/2, force_new_driver=False) 2025-10-14 14:52:43 - INFO - WebScraper - [scraper.py:1004] - get_content - 正在獲取網頁內容: https://wednesdaystudio22.com/product/vittra/, use_selenium=True, proxy=False, force_new_driver=False 2025-10-14 14:52:43 - INFO - WebScraper - [scraper.py:1035] - get_content - 設置頁面加載超時:20 秒 2025-10-14 14:52:43 - INFO - WebScraper - [scraper.py:1053] - get_content - 嘗試獲取 https://wednesdaystudio22.com/product/vittra/ 的第 1/3 次請求 2025-10-14 14:52:43 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e1353778e90>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/68caf65011e192984a1148ee1551bea0 2025-10-14 14:52:43 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e135366f110>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/68caf65011e192984a1148ee1551bea0 2025-10-14 14:52:43 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e135366f0d0>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/68caf65011e192984a1148ee1551bea0 2025-10-14 14:52:43 - ERROR - WebScraper - [scraper.py:1082] - get_content - 通過實例池管理器創建WebDriver失敗: cannot create weak reference to 'NoneType' object 2025-10-14 14:52:43 - INFO - WebScraper - [scraper.py:857] - _create_driver_internal - 正在創建 WebDriver 實例... 2025-10-14 14:52:43 - INFO - WebScraper - [scraper.py:861] - _create_driver_internal - 嘗試方法1:使用智能路徑發現機制 2025-10-14 14:52:43 - ERROR - WebScraper - [scraper.py:878] - _create_driver_internal - 智能路徑搜索失敗: 'WebScraper' object has no attribute 'smart_find_chrome_paths' 2025-10-14 14:52:43 - INFO - WebScraper - [scraper.py:882] - _create_driver_internal - 嘗試方法2:使用 webdriver-manager 自動管理 2025-10-14 14:52:43 - INFO - WDM - [logger.py:11] - log - ====== WebDriver manager ====== 2025-10-14 14:52:43 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:52:43 - INFO - WDM - [logger.py:11] - log - About to download new driver from https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip 2025-10-14 14:52:43 - INFO - WDM - [logger.py:11] - log - Driver downloading response is 200 2025-10-14 14:52:43 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:52:44 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:52:44 - INFO - WDM - [logger.py:11] - log - Driver has been saved in cache [/opt/urlanalyze/.wdm/drivers/chromedriver/linux64/114.0.5735.90] 2025-10-14 14:52:44 - ERROR - WebScraper - [scraper.py:893] - _create_driver_internal - webdriver-manager 方法失敗: Message: unknown error: Chrome failed to start: exited abnormally. (unknown error: DevToolsActivePort file doesn't exist) (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.) Stacktrace: #0 0x6498798414e3 <unknown> #1 0x649879570c76 <unknown> #2 0x649879599d78 <unknown> #3 0x649879596029 <unknown> #4 0x6498795d4ccc <unknown> #5 0x6498795d447f <unknown> #6 0x6498795cbde3 <unknown> #7 0x6498795a12dd <unknown> #8 0x6498795a234e <unknown> #9 0x6498798013e4 <unknown> #10 0x6498798053d7 <unknown> #11 0x64987980fb20 <unknown> #12 0x649879806023 <unknown> #13 0x6498797d41aa <unknown> #14 0x64987982a6b8 <unknown> #15 0x64987982a847 <unknown> #16 0x64987983a243 <unknown> #17 0x7ca5a4094ac3 <unknown> 2025-10-14 14:52:44 - INFO - WebScraper - [scraper.py:897] - _create_driver_internal - 嘗試方法3:使用系統 PATH 中的 chromedriver 2025-10-14 14:52:44 - INFO - WebScraper - [scraper.py:916] - _create_driver_internal - 找到 chromedriver: /usr/local/bin/chromedriver 2025-10-14 14:52:44 - INFO - WebScraper - [scraper.py:920] - _create_driver_internal - 使用系統 chromedriver 成功創建 WebDriver 2025-10-14 14:52:44 - INFO - WebScraper - [scraper.py:1099] - get_content - 使用 Selenium 訪問 URL: https://wednesdaystudio22.com/product/vittra/ 2025-10-14 14:52:45 - INFO - WebScraper - [scraper.py:1158] - get_content - 等待頁面基本加載完成: https://wednesdaystudio22.com/product/vittra/ 2025-10-14 14:52:45 - INFO - WebScraper - [scraper.py:1165] - get_content - 頁面body元素已加載 2025-10-14 14:52:45 - INFO - WebScraper - [scraper.py:1178] - get_content - 頁面加載狀態: complete 2025-10-14 14:52:45 - INFO - WebScraper - [scraper.py:1195] - get_content - 找到主要內容元素: main 2025-10-14 14:52:45 - INFO - WebScraper - [scraper.py:1206] - get_content - 頁面基本加載完成: https://wednesdaystudio22.com/product/vittra/ 2025-10-14 14:52:47 - INFO - WebScraper - [scraper.py:1610] - _detect_page_type - 檢測到的框架: jquery 2025-10-14 14:52:47 - INFO - WebScraper - [scraper.py:1216] - get_content - 檢測到頁面類型: ajax 2025-10-14 14:52:47 - INFO - WebScraper - [scraper.py:1224] - get_content - 檢測到AJAX內容,等待AJAX請求完成 2025-10-14 14:52:47 - INFO - WebScraper - [scraper.py:1777] - _wait_for_ajax_completion - jQuery AJAX 請求已完成 2025-10-14 14:52:47 - INFO - WebScraper - [scraper.py:1788] - _wait_for_ajax_completion - XHR 請求已完成 2025-10-14 14:52:51 - INFO - WebScraper - [scraper.py:1238] - get_content - 初始可見元素數量: 120 2025-10-14 14:52:53 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 18/21 2025-10-14 14:52:53 - INFO - WebScraper - [scraper.py:1248] - get_content - 元素數量穩定: 120,內容可能已加載完成 2025-10-14 14:52:53 - INFO - WebScraper - [scraper.py:1255] - get_content - 等待可能的動態內容... 2025-10-14 14:53:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:53:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:53:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:53:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:53:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:53:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:53:02 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:53:02 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:53:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:53:03 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 18/21 2025-10-14 14:53:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 128.0MB, CPU 0.0% 2025-10-14 14:53:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:53:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 1/5, 隊列大小 0, 總處理任務 1, 記憶體 200.7MB, CPU 0.0% 2025-10-14 14:53:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:53:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:53:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:53:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:53:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:53:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:53:07 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:53:07 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:53:12 - INFO - WebScraper - [scraper.py:1321] - get_content - 成功獲取 URL 內容: https://wednesdaystudio22.com/product/vittra/ (實際 URL: https://wednesdaystudio22.com/product/vittra/) 2025-10-14 14:53:12 - INFO - WebScraper - [scraper.py:1519] - get_content - 清理在 get_content 方法中創建的 WebDriver 實例 2025-10-14 14:53:12 - INFO - WebScraper - [scraper.py:105] - driver - 在設置新WebDriver前關閉舊實例 2025-10-14 14:53:12 - INFO - WebScraper - [scraper.py:249] - close_driver - 線程 138621577471104: 關閉 WebDriver 實例 2025-10-14 14:53:12 - INFO - WebScraper - [scraper.py:277] - close_driver - WebDriver 已成功關閉 2025-10-14 14:53:12 - INFO - WebScraper - [scraper.py:307] - close_driver - 已執行 Python 垃圾回收 2025-10-14 14:53:12 - INFO - WebScraper - [scraper.py:1526] - get_content - WebDriver 實例已成功返回到池中 2025-10-14 14:53:12 - INFO - WebScraper - [scraper.py:1931] - extract_text_from_html - 開始從HTML中提取文本,HTML長度: 145565 字節 2025-10-14 14:53:12 - INFO - WebScraper - [scraper.py:1943] - extract_text_from_html - 使用 trafilatura 成功提取文本,長度: 310 字節 2025-10-14 14:53:12 - INFO - WebScraper - [scraper.py:1968] - extract_text_from_html - 使用 BeautifulSoup 基本提取成功,長度: 848 字節 2025-10-14 14:53:12 - INFO - WebScraper - [scraper.py:2017] - extract_text_from_html - 使用 BeautifulSoup 針對性提取成功,長度: 434 字節 2025-10-14 14:53:12 - INFO - WebScraper - [scraper.py:2114] - extract_text_from_html - 成功提取結構化數據,長度: 177 字節 2025-10-14 14:53:12 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 trafilatura 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:53:12 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_basic 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:53:12 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_targeted 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:53:12 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 structured_data 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:53:12 - INFO - WebScraper - [scraper.py:2152] - extract_text_from_html - 根據聯絡信息分數 2 選擇 beautifulsoup_basic 作為最佳結果 2025-10-14 14:53:12 - INFO - WebScraper - [scraper.py:2177] - extract_text_from_html - 已成功提取文本,總長度: 1037 字節,約 123 個詞,95 行 2025-10-14 14:53:12 - INFO - WebScraper - [scraper.py:2178] - extract_text_from_html - 提取的最終文本內容: 跳至主要內容 登入/註冊 LINE登入 LINE登入 登入 註冊 登入/註冊 搜尋 購物車 NT$ 0 0 選單 購物車 NT$ 0 0 Vittra NT$ 590 10 件庫存 描述 Vittra 項鍊由珍珠與透藍色的水晶珠串制而成,如同冰面底層的流動光,帶有一點魔法的夢幻感🪄 藍紫色的星星藏在鏈尾隨著步伐輕輕擺動,就像小精靈從你身邊飛過一樣🧚 柔光珍珠、銀珠與色澤清冷的切面珠的排列就像黎明前未散的光霧,讓項鍊在冷暖之間微微閃動 錘鍊的設計依舊是每一面都可以佩戴,不管是鏈條在前在後都可以戴出不一樣的感覺 適合搭配淺色的上衣,越乾淨的配色越能凸顯項鍊夢幻的藍❄️ 材質與長度 銅鍍珠、玻璃珠、貝殼珍珠、水晶珠、天然石珠、鈦鋼鏈條、鈦鋼五金配件 項鍊長度(不含延長鏈): 銅鍍材質接觸到汗水後較容易氧化,建議每次佩戴完都擦拭 @wednesday studio 相關商品 shining NT$ 590 Milky Way NT$ 590 Leona NT$ 590 奶油杏仁 NT$ 490 關於我們 品牌故事 購物相關 購物須知 退換貨須知 隱私權政策 聯絡我們 Instagram|wednesday___studio Email | wednesdaystudio2022@gmail.com 溫飾工作室 60076339 Instagram Line Envelope Copyright @2025 ᴡᴇᴅɴᴇsᴅᴀʏ 保留一切權利|本網站由 3C翔合作建置 登入 註冊 body::-webkit-scrollbar { width: 7px; } body::-webkit-scrollbar-track { border-radius: 10px; background: #f0f0f0; } body::-webkit-scrollbar-thumb { border-radius: 50px; background: #dfdbdb } 首頁 全部商品 聯絡我們 額外的結構化內容: • shining NT$590 • Milky Way NT$590 • Leona NT$590 • 奶油杏仁 NT$490 • 購物須知 • 退換貨須知 • 隱私權政策 • Instagram|wednesday___studio • Email | wednesdaystudio2022@gmail.com • 溫飾工作室 60076339 2025-10-14 14:53:12 - INFO - main - [url_processor.py:253] - process_url - 更新 UI 審核進度(URL ID=74):已完成 19/21 個網址 2025-10-14 14:53:12 - INFO - main - [url_processor.py:190] - process_url - 處理子頁面: https://wednesdaystudio22.com/abouts 2025-10-14 14:53:12 - INFO - main - [url_processor.py:198] - process_url - 嘗試獲取子頁面內容 (嘗試 1/2, force_new_driver=False) 2025-10-14 14:53:12 - INFO - WebScraper - [scraper.py:1004] - get_content - 正在獲取網頁內容: https://wednesdaystudio22.com/abouts, use_selenium=True, proxy=False, force_new_driver=False 2025-10-14 14:53:12 - INFO - WebScraper - [scraper.py:1035] - get_content - 設置頁面加載超時:20 秒 2025-10-14 14:53:12 - INFO - WebScraper - [scraper.py:1053] - get_content - 嘗試獲取 https://wednesdaystudio22.com/abouts 的第 1/3 次請求 2025-10-14 14:53:12 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e1358683210>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/e123f6005b6105672f31c899432ba18f 2025-10-14 14:53:12 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13534b6b50>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/e123f6005b6105672f31c899432ba18f 2025-10-14 14:53:12 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13534b6fd0>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/e123f6005b6105672f31c899432ba18f 2025-10-14 14:53:12 - ERROR - WebScraper - [scraper.py:1082] - get_content - 通過實例池管理器創建WebDriver失敗: cannot create weak reference to 'NoneType' object 2025-10-14 14:53:12 - INFO - WebScraper - [scraper.py:857] - _create_driver_internal - 正在創建 WebDriver 實例... 2025-10-14 14:53:12 - INFO - WebScraper - [scraper.py:861] - _create_driver_internal - 嘗試方法1:使用智能路徑發現機制 2025-10-14 14:53:12 - ERROR - WebScraper - [scraper.py:878] - _create_driver_internal - 智能路徑搜索失敗: 'WebScraper' object has no attribute 'smart_find_chrome_paths' 2025-10-14 14:53:12 - INFO - WebScraper - [scraper.py:882] - _create_driver_internal - 嘗試方法2:使用 webdriver-manager 自動管理 2025-10-14 14:53:12 - INFO - WDM - [logger.py:11] - log - ====== WebDriver manager ====== 2025-10-14 14:53:12 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:53:12 - INFO - WDM - [logger.py:11] - log - About to download new driver from https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip 2025-10-14 14:53:12 - INFO - WDM - [logger.py:11] - log - Driver downloading response is 200 2025-10-14 14:53:12 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:53:13 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:53:13 - INFO - WDM - [logger.py:11] - log - Driver has been saved in cache [/opt/urlanalyze/.wdm/drivers/chromedriver/linux64/114.0.5735.90] 2025-10-14 14:53:13 - ERROR - WebScraper - [scraper.py:893] - _create_driver_internal - webdriver-manager 方法失敗: Message: unknown error: Chrome failed to start: exited abnormally. (unknown error: DevToolsActivePort file doesn't exist) (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.) Stacktrace: #0 0x5ef39111d4e3 <unknown> #1 0x5ef390e4cc76 <unknown> #2 0x5ef390e75d78 <unknown> #3 0x5ef390e72029 <unknown> #4 0x5ef390eb0ccc <unknown> #5 0x5ef390eb047f <unknown> #6 0x5ef390ea7de3 <unknown> #7 0x5ef390e7d2dd <unknown> #8 0x5ef390e7e34e <unknown> #9 0x5ef3910dd3e4 <unknown> #10 0x5ef3910e13d7 <unknown> #11 0x5ef3910ebb20 <unknown> #12 0x5ef3910e2023 <unknown> #13 0x5ef3910b01aa <unknown> #14 0x5ef3911066b8 <unknown> #15 0x5ef391106847 <unknown> #16 0x5ef391116243 <unknown> #17 0x75a291c94ac3 <unknown> 2025-10-14 14:53:13 - INFO - WebScraper - [scraper.py:897] - _create_driver_internal - 嘗試方法3:使用系統 PATH 中的 chromedriver 2025-10-14 14:53:13 - INFO - WebScraper - [scraper.py:916] - _create_driver_internal - 找到 chromedriver: /usr/local/bin/chromedriver 2025-10-14 14:53:13 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 19/21 2025-10-14 14:53:13 - INFO - WebScraper - [scraper.py:920] - _create_driver_internal - 使用系統 chromedriver 成功創建 WebDriver 2025-10-14 14:53:13 - INFO - WebScraper - [scraper.py:1099] - get_content - 使用 Selenium 訪問 URL: https://wednesdaystudio22.com/abouts 2025-10-14 14:53:17 - INFO - WebScraper - [scraper.py:1158] - get_content - 等待頁面基本加載完成: https://wednesdaystudio22.com/abouts 2025-10-14 14:53:17 - INFO - WebScraper - [scraper.py:1165] - get_content - 頁面body元素已加載 2025-10-14 14:53:17 - INFO - WebScraper - [scraper.py:1178] - get_content - 頁面加載狀態: complete 2025-10-14 14:53:17 - INFO - WebScraper - [scraper.py:1195] - get_content - 找到主要內容元素: main 2025-10-14 14:53:17 - INFO - WebScraper - [scraper.py:1206] - get_content - 頁面基本加載完成: https://wednesdaystudio22.com/abouts 2025-10-14 14:53:19 - INFO - WebScraper - [scraper.py:1610] - _detect_page_type - 檢測到的框架: jquery 2025-10-14 14:53:19 - INFO - WebScraper - [scraper.py:1216] - get_content - 檢測到頁面類型: ajax 2025-10-14 14:53:19 - INFO - WebScraper - [scraper.py:1224] - get_content - 檢測到AJAX內容,等待AJAX請求完成 2025-10-14 14:53:19 - INFO - WebScraper - [scraper.py:1777] - _wait_for_ajax_completion - jQuery AJAX 請求已完成 2025-10-14 14:53:19 - INFO - WebScraper - [scraper.py:1788] - _wait_for_ajax_completion - XHR 請求已完成 2025-10-14 14:53:23 - INFO - WebScraper - [scraper.py:1238] - get_content - 初始可見元素數量: 78 2025-10-14 14:53:23 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 19/21 2025-10-14 14:53:25 - INFO - WebScraper - [scraper.py:1248] - get_content - 元素數量穩定: 78,內容可能已加載完成 2025-10-14 14:53:25 - INFO - WebScraper - [scraper.py:1255] - get_content - 等待可能的動態內容... 2025-10-14 14:53:33 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 19/21 2025-10-14 14:53:43 - INFO - WebScraper - [scraper.py:1321] - get_content - 成功獲取 URL 內容: https://wednesdaystudio22.com/abouts (實際 URL: https://wednesdaystudio22.com/abouts/) 2025-10-14 14:53:43 - INFO - WebScraper - [scraper.py:1519] - get_content - 清理在 get_content 方法中創建的 WebDriver 實例 2025-10-14 14:53:43 - INFO - WebScraper - [scraper.py:105] - driver - 在設置新WebDriver前關閉舊實例 2025-10-14 14:53:43 - INFO - WebScraper - [scraper.py:249] - close_driver - 線程 138621577471104: 關閉 WebDriver 實例 2025-10-14 14:53:43 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 19/21 2025-10-14 14:53:43 - INFO - WebScraper - [scraper.py:277] - close_driver - WebDriver 已成功關閉 2025-10-14 14:53:44 - INFO - WebScraper - [scraper.py:307] - close_driver - 已執行 Python 垃圾回收 2025-10-14 14:53:44 - INFO - WebScraper - [scraper.py:1526] - get_content - WebDriver 實例已成功返回到池中 2025-10-14 14:53:44 - INFO - WebScraper - [scraper.py:1931] - extract_text_from_html - 開始從HTML中提取文本,HTML長度: 126431 字節 2025-10-14 14:53:44 - INFO - WebScraper - [scraper.py:1943] - extract_text_from_html - 使用 trafilatura 成功提取文本,長度: 705 字節 2025-10-14 14:53:44 - INFO - WebScraper - [scraper.py:1968] - extract_text_from_html - 使用 BeautifulSoup 基本提取成功,長度: 467 字節 2025-10-14 14:53:44 - INFO - WebScraper - [scraper.py:2114] - extract_text_from_html - 成功提取結構化數據,長度: 111 字節 2025-10-14 14:53:44 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 trafilatura 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:53:44 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_basic 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:53:44 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 structured_data 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:53:44 - INFO - WebScraper - [scraper.py:2152] - extract_text_from_html - 根據聯絡信息分數 2 選擇 beautifulsoup_basic 作為最佳結果 2025-10-14 14:53:44 - INFO - WebScraper - [scraper.py:2177] - extract_text_from_html - 已成功提取文本,總長度: 590 字節,約 78 個詞,57 行 2025-10-14 14:53:44 - INFO - WebScraper - [scraper.py:2178] - extract_text_from_html - 提取的最終文本內容: 跳至主要內容 登入/註冊 LINE登入 LINE登入 登入 註冊 登入/註冊 搜尋 購物車 NT$ 0 0 選單 購物車 NT$ 0 0 關於我們 品牌故事 購物相關 購物須知 退換貨須知 隱私權政策 聯絡我們 Instagram|wednesday___studio Email | wednesdaystudio2022@gmail.com 溫飾工作室 60076339 Instagram Line Envelope Copyright @2025 ᴡᴇᴅɴᴇsᴅᴀʏ 保留一切權利|本網站由 3C翔合作建置 登入 註冊 body::-webkit-scrollbar { width: 7px; } body::-webkit-scrollbar-track { border-radius: 10px; background: #f0f0f0; } body::-webkit-scrollbar-thumb { border-radius: 50px; background: #dfdbdb } 首頁 全部商品 聯絡我們 額外的結構化內容: • 購物須知 • 退換貨須知 • 隱私權政策 • Instagram|wednesday___studio • Email | wednesdaystudio2022@gmail.com • 溫飾工作室 60076339 2025-10-14 14:53:44 - INFO - main - [url_processor.py:253] - process_url - 更新 UI 審核進度(URL ID=74):已完成 20/21 個網址 2025-10-14 14:53:44 - INFO - main - [url_processor.py:190] - process_url - 處理子頁面: https://wednesdaystudio22.com/product-category/%e5%90%8a%e9%a3%be-%ef%bd%9c-hanging-ornament/ 2025-10-14 14:53:44 - INFO - main - [url_processor.py:198] - process_url - 嘗試獲取子頁面內容 (嘗試 1/2, force_new_driver=False) 2025-10-14 14:53:44 - INFO - WebScraper - [scraper.py:1004] - get_content - 正在獲取網頁內容: https://wednesdaystudio22.com/product-category/%e5%90%8a%e9%a3%be-%ef%bd%9c-hanging-ornament/, use_selenium=True, proxy=False, force_new_driver=False 2025-10-14 14:53:44 - INFO - WebScraper - [scraper.py:1035] - get_content - 設置頁面加載超時:21 秒 2025-10-14 14:53:44 - INFO - WebScraper - [scraper.py:1053] - get_content - 嘗試獲取 https://wednesdaystudio22.com/product-category/%e5%90%8a%e9%a3%be-%ef%bd%9c-hanging-ornament/ 的第 1/3 次請求 2025-10-14 14:53:44 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13534e0a50>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/dfea6aecd5798ddca4b590f6dc9b9d3a 2025-10-14 14:53:44 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13534e2fd0>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/dfea6aecd5798ddca4b590f6dc9b9d3a 2025-10-14 14:53:44 - WARNING - urllib3.connectionpool - [connectionpool.py:868] - urlopen - Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7e13534e1b90>: Failed to establish a new connection: [Errno 111] Connection refused')': /session/dfea6aecd5798ddca4b590f6dc9b9d3a 2025-10-14 14:53:44 - ERROR - WebScraper - [scraper.py:1082] - get_content - 通過實例池管理器創建WebDriver失敗: cannot create weak reference to 'NoneType' object 2025-10-14 14:53:44 - INFO - WebScraper - [scraper.py:857] - _create_driver_internal - 正在創建 WebDriver 實例... 2025-10-14 14:53:44 - INFO - WebScraper - [scraper.py:861] - _create_driver_internal - 嘗試方法1:使用智能路徑發現機制 2025-10-14 14:53:44 - ERROR - WebScraper - [scraper.py:878] - _create_driver_internal - 智能路徑搜索失敗: 'WebScraper' object has no attribute 'smart_find_chrome_paths' 2025-10-14 14:53:44 - INFO - WebScraper - [scraper.py:882] - _create_driver_internal - 嘗試方法2:使用 webdriver-manager 自動管理 2025-10-14 14:53:44 - INFO - WDM - [logger.py:11] - log - ====== WebDriver manager ====== 2025-10-14 14:53:44 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:53:44 - INFO - WDM - [logger.py:11] - log - About to download new driver from https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip 2025-10-14 14:53:44 - INFO - WDM - [logger.py:11] - log - Driver downloading response is 200 2025-10-14 14:53:44 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:53:44 - INFO - WDM - [logger.py:11] - log - Get LATEST chromedriver version for google-chrome 2025-10-14 14:53:45 - INFO - WDM - [logger.py:11] - log - Driver has been saved in cache [/opt/urlanalyze/.wdm/drivers/chromedriver/linux64/114.0.5735.90] 2025-10-14 14:53:45 - ERROR - WebScraper - [scraper.py:893] - _create_driver_internal - webdriver-manager 方法失敗: Message: unknown error: Chrome failed to start: exited abnormally. (unknown error: DevToolsActivePort file doesn't exist) (The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.) Stacktrace: #0 0x6247509904e3 <unknown> #1 0x6247506bfc76 <unknown> #2 0x6247506e8d78 <unknown> #3 0x6247506e5029 <unknown> #4 0x624750723ccc <unknown> #5 0x62475072347f <unknown> #6 0x62475071ade3 <unknown> #7 0x6247506f02dd <unknown> #8 0x6247506f134e <unknown> #9 0x6247509503e4 <unknown> #10 0x6247509543d7 <unknown> #11 0x62475095eb20 <unknown> #12 0x624750955023 <unknown> #13 0x6247509231aa <unknown> #14 0x6247509796b8 <unknown> #15 0x624750979847 <unknown> #16 0x624750989243 <unknown> #17 0x704bfc494ac3 <unknown> 2025-10-14 14:53:45 - INFO - WebScraper - [scraper.py:897] - _create_driver_internal - 嘗試方法3:使用系統 PATH 中的 chromedriver 2025-10-14 14:53:45 - INFO - WebScraper - [scraper.py:916] - _create_driver_internal - 找到 chromedriver: /usr/local/bin/chromedriver 2025-10-14 14:53:45 - INFO - WebScraper - [scraper.py:920] - _create_driver_internal - 使用系統 chromedriver 成功創建 WebDriver 2025-10-14 14:53:45 - INFO - WebScraper - [scraper.py:1099] - get_content - 使用 Selenium 訪問 URL: https://wednesdaystudio22.com/product-category/%e5%90%8a%e9%a3%be-%ef%bd%9c-hanging-ornament/ 2025-10-14 14:53:48 - INFO - WebScraper - [scraper.py:1158] - get_content - 等待頁面基本加載完成: https://wednesdaystudio22.com/product-category/%e5%90%8a%e9%a3%be-%ef%bd%9c-hanging-ornament/ 2025-10-14 14:53:48 - INFO - WebScraper - [scraper.py:1165] - get_content - 頁面body元素已加載 2025-10-14 14:53:48 - INFO - WebScraper - [scraper.py:1178] - get_content - 頁面加載狀態: complete 2025-10-14 14:53:48 - INFO - WebScraper - [scraper.py:1195] - get_content - 找到主要內容元素: main 2025-10-14 14:53:48 - INFO - WebScraper - [scraper.py:1206] - get_content - 頁面基本加載完成: https://wednesdaystudio22.com/product-category/%e5%90%8a%e9%a3%be-%ef%bd%9c-hanging-ornament/ 2025-10-14 14:53:50 - INFO - WebScraper - [scraper.py:1610] - _detect_page_type - 檢測到的框架: jquery 2025-10-14 14:53:50 - INFO - WebScraper - [scraper.py:1216] - get_content - 檢測到頁面類型: ajax 2025-10-14 14:53:50 - INFO - WebScraper - [scraper.py:1224] - get_content - 檢測到AJAX內容,等待AJAX請求完成 2025-10-14 14:53:50 - INFO - WebScraper - [scraper.py:1777] - _wait_for_ajax_completion - jQuery AJAX 請求已完成 2025-10-14 14:53:50 - INFO - WebScraper - [scraper.py:1788] - _wait_for_ajax_completion - XHR 請求已完成 2025-10-14 14:53:53 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 20/21 2025-10-14 14:53:54 - INFO - WebScraper - [scraper.py:1238] - get_content - 初始可見元素數量: 98 2025-10-14 14:53:56 - INFO - WebScraper - [scraper.py:1248] - get_content - 元素數量穩定: 98,內容可能已加載完成 2025-10-14 14:53:56 - INFO - WebScraper - [scraper.py:1255] - get_content - 等待可能的動態內容... 2025-10-14 14:54:03 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 20/21 2025-10-14 14:54:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:54:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:54:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:54:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:54:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:54:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:54:07 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:54:07 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:54:14 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 20/21 2025-10-14 14:54:14 - INFO - WebScraper - [scraper.py:1321] - get_content - 成功獲取 URL 內容: https://wednesdaystudio22.com/product-category/%e5%90%8a%e9%a3%be-%ef%bd%9c-hanging-ornament/ (實際 URL: https://wednesdaystudio22.com/product-category/%e5%90%8a%e9%a3%be-%ef%bd%9c-hanging-ornament/) 2025-10-14 14:54:14 - INFO - WebScraper - [scraper.py:1519] - get_content - 清理在 get_content 方法中創建的 WebDriver 實例 2025-10-14 14:54:14 - INFO - WebScraper - [scraper.py:105] - driver - 在設置新WebDriver前關閉舊實例 2025-10-14 14:54:14 - INFO - WebScraper - [scraper.py:249] - close_driver - 線程 138621577471104: 關閉 WebDriver 實例 2025-10-14 14:54:14 - INFO - WebScraper - [scraper.py:277] - close_driver - WebDriver 已成功關閉 2025-10-14 14:54:14 - INFO - WebScraper - [scraper.py:307] - close_driver - 已執行 Python 垃圾回收 2025-10-14 14:54:14 - INFO - WebScraper - [scraper.py:1526] - get_content - WebDriver 實例已成功返回到池中 2025-10-14 14:54:14 - INFO - WebScraper - [scraper.py:1931] - extract_text_from_html - 開始從HTML中提取文本,HTML長度: 117811 字節 2025-10-14 14:54:14 - INFO - WebScraper - [scraper.py:1943] - extract_text_from_html - 使用 trafilatura 成功提取文本,長度: 717 字節 2025-10-14 14:54:14 - INFO - WebScraper - [scraper.py:1968] - extract_text_from_html - 使用 BeautifulSoup 基本提取成功,長度: 639 字節 2025-10-14 14:54:14 - INFO - WebScraper - [scraper.py:2114] - extract_text_from_html - 成功提取結構化數據,長度: 288 字節 2025-10-14 14:54:14 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 trafilatura 聯絡信息檢查: 電子郵件=False, 電話=False, 分數=0 2025-10-14 14:54:14 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 beautifulsoup_basic 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:54:14 - INFO - WebScraper - [scraper.py:2141] - extract_text_from_html - 提取源 structured_data 聯絡信息檢查: 電子郵件=True, 電話=True, 分數=2 2025-10-14 14:54:14 - INFO - WebScraper - [scraper.py:2152] - extract_text_from_html - 根據聯絡信息分數 2 選擇 beautifulsoup_basic 作為最佳結果 2025-10-14 14:54:14 - INFO - WebScraper - [scraper.py:2177] - extract_text_from_html - 已成功提取文本,總長度: 939 字節,約 146 個詞,104 行 2025-10-14 14:54:14 - INFO - WebScraper - [scraper.py:2178] - extract_text_from_html - 提取的最終文本內容: 跳至主要內容 登入/註冊 LINE登入 LINE登入 登入 註冊 登入/註冊 搜尋 購物車 NT$ 0 0 選單 購物車 NT$ 0 0 找不到符合您選擇的商品 商品分類 熱門商品 | best seller 5 5 個產品 所有商品 | ALL 46 46 個產品 項鍊 | necklaces 46 46 個產品 最新商品 Nivelle NT$ 590 Lune NT$ 590 Vittra NT$ 590 Quillie NT$ 590 Ethereal NT$ 590 關於我們 品牌故事 購物相關 購物須知 退換貨須知 隱私權政策 聯絡我們 Instagram|wednesday___studio Email | wednesdaystudio2022@gmail.com 溫飾工作室 60076339 Instagram Line Envelope Copyright @2025 ᴡᴇᴅɴᴇsᴅᴀʏ 保留一切權利|本網站由 3C翔合作建置 登入 註冊 body::-webkit-scrollbar { width: 7px; } body::-webkit-scrollbar-track { border-radius: 10px; background: #f0f0f0; } body::-webkit-scrollbar-thumb { border-radius: 50px; background: #dfdbdb } 首頁 全部商品 聯絡我們 額外的結構化內容: • 熱門商品 | best seller55 個產品 • 所有商品 | ALL4646 個產品 • 項鍊 | necklaces4646 個產品 • Nivelle NT$590 • Lune NT$590 • Vittra NT$590 • Quillie NT$590 • Ethereal NT$590 • 購物須知 • 退換貨須知 • 隱私權政策 • Instagram|wednesday___studio • Email | wednesdaystudio2022@gmail.com • 溫飾工作室 60076339 2025-10-14 14:54:14 - INFO - main - [url_processor.py:253] - process_url - 更新 UI 審核進度(URL ID=74):已完成 21/21 個網址 2025-10-14 14:54:14 - INFO - main - [url_processor.py:266] - process_url - UI審核: 開始審核主頁面: https://wednesdaystudio22.com/ 2025-10-14 14:54:14 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 938 字符 2025-10-14 14:54:14 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:54:24 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:54:25 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:54:25 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 10.316秒 2025-10-14 14:54:25 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 10.367秒 2025-10-14 14:54:25 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:54:25 - INFO - main - [url_processor.py:305] - process_url - UI審核: 主頁面審核通過: https://wednesdaystudio22.com/ 2025-10-14 14:54:25 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 1/20: https://wednesdaystudio22.com 2025-10-14 14:54:25 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 938 字符 2025-10-14 14:54:25 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:54:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:54:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 128.0MB, CPU 0.0% 2025-10-14 14:54:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:54:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 1/5, 隊列大小 0, 總處理任務 1, 記憶體 200.7MB, CPU 0.0% 2025-10-14 14:54:34 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:54:34 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:54:34 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 8.986秒 2025-10-14 14:54:34 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 9.038秒 2025-10-14 14:54:34 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:54:34 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://wednesdaystudio22.com 2025-10-14 14:54:34 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 2/20: https://wednesdaystudio22.com/ 2025-10-14 14:54:34 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 938 字符 2025-10-14 14:54:34 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:54:44 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:54:47 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:54:47 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 13.209秒 2025-10-14 14:54:47 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 13.260秒 2025-10-14 14:54:47 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:54:47 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://wednesdaystudio22.com/ 2025-10-14 14:54:47 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 3/20: https://wednesdaystudio22.com/product/nivelle/ 2025-10-14 14:54:47 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 964 字符 2025-10-14 14:54:47 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:54:54 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:55:04 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:55:05 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:55:05 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 17.591秒 2025-10-14 14:55:05 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 17.643秒 2025-10-14 14:55:05 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:55:05 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://wednesdaystudio22.com/product/nivelle/ 2025-10-14 14:55:05 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 4/20: https://wednesdaystudio22.com/return 2025-10-14 14:55:05 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 991 字符 2025-10-14 14:55:05 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:55:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:55:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:55:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:55:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:55:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:55:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:55:07 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:55:07 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.03 秒,結果: 0 2025-10-14 14:55:14 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:55:24 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:55:28 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:55:28 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 22.927秒 2025-10-14 14:55:28 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 43 字符, 總耗時: 22.978秒 2025-10-14 14:55:28 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:55:28 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://wednesdaystudio22.com/return 2025-10-14 14:55:28 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 5/20: https://wednesdaystudio22.com/cart/ 2025-10-14 14:55:28 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 595 字符 2025-10-14 14:55:28 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:55:34 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:55:41 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:55:41 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 13.652秒 2025-10-14 14:55:41 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 13.704秒 2025-10-14 14:55:41 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:55:41 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://wednesdaystudio22.com/cart/ 2025-10-14 14:55:41 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 6/20: https://wednesdaystudio22.com/product-category/%e6%9c%80%e6%96%b0%e5%95%86%e5%93%81-%ef%bd%9c-new-arrivals/ 2025-10-14 14:55:41 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 915 字符 2025-10-14 14:55:41 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:55:44 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:55:54 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:55:54 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 12.640秒 2025-10-14 14:55:54 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 45 字符, 總耗時: 12.691秒 2025-10-14 14:55:54 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論: 審核通過... 2025-10-14 14:55:54 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://wednesdaystudio22.com/product-category/%e6%9c%80%e6%96%b0%e5%95%86%e5%93%81-%ef%bd%9c-new-arrivals/ 2025-10-14 14:55:54 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 7/20: https://wednesdaystudio22.com/product-category/%e8%85%b0%e9%8f%88-chain-belts/ 2025-10-14 14:55:54 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 13 字符 2025-10-14 14:55:54 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:55:54 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:55:58 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:55:58 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:56:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:56:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:56:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:56:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:56:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:56:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:56:00 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:56:01 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 6.489秒 2025-10-14 14:56:01 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 43 字符, 總耗時: 6.540秒 2025-10-14 14:56:01 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:56:01 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://wednesdaystudio22.com/product-category/%e8%85%b0%e9%8f%88-chain-belts/ 2025-10-14 14:56:01 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 8/20: https://wednesdaystudio22.com/product-category/%E9%A0%85%E9%8D%8A-%EF%BD%9C-necklaces/ 2025-10-14 14:56:01 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 1749 字符 2025-10-14 14:56:01 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:56:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:56:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:56:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:56:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:56:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:56:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 128.0MB, CPU 0.0% 2025-10-14 14:56:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:56:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 1/5, 隊列大小 0, 總處理任務 1, 記憶體 200.7MB, CPU 0.0% 2025-10-14 14:56:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:56:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:56:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 14:56:04 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'update_hourly_log_file' 執行完成,耗時 0.00 秒,結果: False 2025-10-14 14:56:04 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:56:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:56:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:56:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:56:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.09 秒,結果: 0 2025-10-14 14:56:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.09 秒,結果: 0 2025-10-14 14:56:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.08 秒,結果: 0 2025-10-14 14:56:08 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:56:08 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.07 秒,結果: 0 2025-10-14 14:56:14 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:56:20 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:56:20 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 18.992秒 2025-10-14 14:56:20 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 19.044秒 2025-10-14 14:56:20 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:56:20 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://wednesdaystudio22.com/product-category/%E9%A0%85%E9%8D%8A-%EF%BD%9C-necklaces/ 2025-10-14 14:56:20 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 9/20: https://wednesdaystudio22.com/product/lune/ 2025-10-14 14:56:20 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 980 字符 2025-10-14 14:56:20 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:56:24 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:56:33 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:56:33 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 13.391秒 2025-10-14 14:56:33 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 13.443秒 2025-10-14 14:56:33 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:56:33 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://wednesdaystudio22.com/product/lune/ 2025-10-14 14:56:33 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 10/20: https://wednesdaystudio22.com/product-category/%e6%89%8b%e9%8d%8a-%ef%bd%9c-bracelets/ 2025-10-14 14:56:33 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 915 字符 2025-10-14 14:56:33 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:56:35 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:56:43 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:56:43 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 10.009秒 2025-10-14 14:56:43 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 43 字符, 總耗時: 10.060秒 2025-10-14 14:56:43 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:56:43 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://wednesdaystudio22.com/product-category/%e6%89%8b%e9%8d%8a-%ef%bd%9c-bracelets/ 2025-10-14 14:56:43 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 11/20: https://wednesdaystudio22.com/type-2 2025-10-14 14:56:43 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 13 字符 2025-10-14 14:56:43 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:56:45 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:56:50 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:56:50 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 6.600秒 2025-10-14 14:56:50 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 43 字符, 總耗時: 6.650秒 2025-10-14 14:56:50 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:56:50 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://wednesdaystudio22.com/type-2 2025-10-14 14:56:50 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 12/20: https://wednesdaystudio22.com/product-category/%e8%85%b0%e9%8f%88-%ef%bd%9c-waist-chains/ 2025-10-14 14:56:50 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 915 字符 2025-10-14 14:56:50 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:56:55 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:57:02 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:57:02 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 12.344秒 2025-10-14 14:57:02 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 45 字符, 總耗時: 12.394秒 2025-10-14 14:57:02 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論: 審核通過... 2025-10-14 14:57:02 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://wednesdaystudio22.com/product-category/%e8%85%b0%e9%8f%88-%ef%bd%9c-waist-chains/ 2025-10-14 14:57:02 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 13/20: https://wednesdaystudio22.com/product/quillie/ 2025-10-14 14:57:02 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 1070 字符 2025-10-14 14:57:02 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:57:05 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:57:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:57:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:57:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:57:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:57:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:57:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:57:08 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:57:08 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:57:15 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:57:17 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:57:17 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 15.141秒 2025-10-14 14:57:17 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 15.191秒 2025-10-14 14:57:17 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:57:17 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://wednesdaystudio22.com/product/quillie/ 2025-10-14 14:57:17 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 14/20: https://wednesdaystudio22.com/product-category/%e6%89%80%e6%9c%89%e5%95%86%e5%93%81-%ef%bd%9c-all/ 2025-10-14 14:57:17 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 1749 字符 2025-10-14 14:57:17 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:57:25 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:57:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:57:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 128.0MB, CPU 0.0% 2025-10-14 14:57:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:57:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 1/5, 隊列大小 0, 總處理任務 1, 記憶體 200.7MB, CPU 0.0% 2025-10-14 14:57:35 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:57:36 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:57:36 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 18.539秒 2025-10-14 14:57:36 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 18.589秒 2025-10-14 14:57:36 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:57:36 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://wednesdaystudio22.com/product-category/%e6%89%80%e6%9c%89%e5%95%86%e5%93%81-%ef%bd%9c-all/ 2025-10-14 14:57:36 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 15/20: https://wednesdaystudio22.com/product-category/%e6%88%92%e6%8c%87-%ef%bd%9c-rings/ 2025-10-14 14:57:36 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 915 字符 2025-10-14 14:57:36 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:57:45 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:57:50 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:57:50 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 14.035秒 2025-10-14 14:57:50 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 14.085秒 2025-10-14 14:57:50 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:57:50 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://wednesdaystudio22.com/product-category/%e6%88%92%e6%8c%87-%ef%bd%9c-rings/ 2025-10-14 14:57:50 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 16/20: https://wednesdaystudio22.com/product-category/%e7%86%b1%e9%96%80%e5%95%86%e5%93%81-%ef%bd%9c-best-seller/ 2025-10-14 14:57:50 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 1144 字符 2025-10-14 14:57:50 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:57:55 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:58:03 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:58:03 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 12.762秒 2025-10-14 14:58:03 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 12.813秒 2025-10-14 14:58:03 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:58:03 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://wednesdaystudio22.com/product-category/%e7%86%b1%e9%96%80%e5%95%86%e5%93%81-%ef%bd%9c-best-seller/ 2025-10-14 14:58:03 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 17/20: https://wednesdaystudio22.com/shop/ 2025-10-14 14:58:03 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 1749 字符 2025-10-14 14:58:03 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:58:05 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:58:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:58:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:58:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:58:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:58:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:58:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:58:08 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:58:08 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:58:15 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:58:15 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:58:15 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 12.503秒 2025-10-14 14:58:15 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 12.553秒 2025-10-14 14:58:15 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:58:15 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://wednesdaystudio22.com/shop/ 2025-10-14 14:58:15 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 18/20: https://wednesdaystudio22.com/product/vittra/ 2025-10-14 14:58:15 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 1034 字符 2025-10-14 14:58:15 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:58:25 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:58:35 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:58:37 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:58:37 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 21.529秒 2025-10-14 14:58:37 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 43 字符, 總耗時: 21.580秒 2025-10-14 14:58:37 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:58:37 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://wednesdaystudio22.com/product/vittra/ 2025-10-14 14:58:37 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 19/20: https://wednesdaystudio22.com/abouts 2025-10-14 14:58:37 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 588 字符 2025-10-14 14:58:37 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:58:46 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:58:52 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:58:52 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 14.546秒 2025-10-14 14:58:52 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 14.596秒 2025-10-14 14:58:52 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:58:52 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://wednesdaystudio22.com/abouts 2025-10-14 14:58:52 - INFO - main - [url_processor.py:315] - process_url - UI審核: 開始審核子頁面 20/20: https://wednesdaystudio22.com/product-category/%e5%90%8a%e9%a3%be-%ef%bd%9c-hanging-ornament/ 2025-10-14 14:58:52 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 915 字符 2025-10-14 14:58:52 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:58:56 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:59:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:59:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:59:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:59:00 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:59:01 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:59:01 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:59:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 14:59:03 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: reset_stalled_requests 2025-10-14 14:59:03 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'reset_stalled_requests' 執行完成,耗時 0.01 秒,結果: 0 2025-10-14 14:59:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 128.0MB, CPU 0.0% 2025-10-14 14:59:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 14:59:03 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 1/5, 隊列大小 0, 總處理任務 1, 記憶體 200.7MB, CPU 0.0% 2025-10-14 14:59:06 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:59:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:59:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:59:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:59:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:59:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:59:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:59:07 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:59:07 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 15.210秒 2025-10-14 14:59:07 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 44 字符, 總耗時: 15.261秒 2025-10-14 14:59:07 - INFO - ContentAnalyzer - [analyzer.py:875] - check_rules - Rules check summary: 規則1:無違規內容 規則2:無違規內容 規則3:無違規內容 網頁內容審查結論:審核通過... 2025-10-14 14:59:07 - INFO - main - [url_processor.py:356] - process_url - UI審核: 子頁面審核通過: https://wednesdaystudio22.com/product-category/%e5%90%8a%e9%a3%be-%ef%bd%9c-hanging-ornament/ 2025-10-14 14:59:07 - INFO - main - [url_processor.py:376] - process_url - 開始判斷主頁面購物車功能 2025-10-14 14:59:07 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:59:07 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 938 字符 2025-10-14 14:59:07 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:59:08 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 14:59:08 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 14:59:14 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:59:14 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 7.557秒 2025-10-14 14:59:14 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 7.607秒 2025-10-14 14:59:14 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 有購物車功能 2025-10-14 14:59:14 - INFO - main - [url_processor.py:379] - process_url - 主頁面購物車判斷: 有購物車功能 2025-10-14 14:59:14 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 1/20 購物車功能 2025-10-14 14:59:14 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:59:14 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 938 字符 2025-10-14 14:59:14 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:59:16 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:59:20 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:59:20 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 5.648秒 2025-10-14 14:59:20 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 5.699秒 2025-10-14 14:59:20 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 有購物車功能 2025-10-14 14:59:20 - INFO - main - [url_processor.py:390] - process_url - 子頁面 1 購物車判斷: 有購物車功能 2025-10-14 14:59:20 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 2/20 購物車功能 2025-10-14 14:59:20 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:59:20 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 938 字符 2025-10-14 14:59:20 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:59:25 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:59:25 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 4.711秒 2025-10-14 14:59:25 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 4.762秒 2025-10-14 14:59:25 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 有購物車功能 2025-10-14 14:59:25 - INFO - main - [url_processor.py:390] - process_url - 子頁面 2 購物車判斷: 有購物車功能 2025-10-14 14:59:25 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 3/20 購物車功能 2025-10-14 14:59:25 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:59:25 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 964 字符 2025-10-14 14:59:25 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:59:26 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:59:30 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:59:30 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 4.780秒 2025-10-14 14:59:30 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 4.831秒 2025-10-14 14:59:30 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 有購物車功能 2025-10-14 14:59:30 - INFO - main - [url_processor.py:390] - process_url - 子頁面 3 購物車判斷: 有購物車功能 2025-10-14 14:59:30 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 4/20 購物車功能 2025-10-14 14:59:30 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:59:30 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 991 字符 2025-10-14 14:59:30 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:59:34 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:59:34 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 4.575秒 2025-10-14 14:59:34 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 4.625秒 2025-10-14 14:59:34 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 有購物車功能 2025-10-14 14:59:34 - INFO - main - [url_processor.py:390] - process_url - 子頁面 4 購物車判斷: 有購物車功能 2025-10-14 14:59:34 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 5/20 購物車功能 2025-10-14 14:59:34 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:59:34 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 595 字符 2025-10-14 14:59:34 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:59:36 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:59:37 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:59:37 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 2.917秒 2025-10-14 14:59:37 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 2.968秒 2025-10-14 14:59:37 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 有購物車功能 2025-10-14 14:59:37 - INFO - main - [url_processor.py:390] - process_url - 子頁面 5 購物車判斷: 有購物車功能 2025-10-14 14:59:37 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 6/20 購物車功能 2025-10-14 14:59:37 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:59:37 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 915 字符 2025-10-14 14:59:37 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:59:44 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:59:44 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 6.387秒 2025-10-14 14:59:44 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 6.437秒 2025-10-14 14:59:44 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 有購物車功能 2025-10-14 14:59:44 - INFO - main - [url_processor.py:390] - process_url - 子頁面 6 購物車判斷: 有購物車功能 2025-10-14 14:59:44 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 7/20 購物車功能 2025-10-14 14:59:44 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:59:44 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 13 字符 2025-10-14 14:59:44 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:59:46 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:59:46 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:59:46 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 2.749秒 2025-10-14 14:59:46 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 2.798秒 2025-10-14 14:59:46 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 無購物車功能 2025-10-14 14:59:46 - INFO - main - [url_processor.py:390] - process_url - 子頁面 7 購物車判斷: 無購物車功能 2025-10-14 14:59:46 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 8/20 購物車功能 2025-10-14 14:59:46 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:59:46 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 1749 字符 2025-10-14 14:59:47 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:59:52 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:59:52 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 5.119秒 2025-10-14 14:59:52 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 5.170秒 2025-10-14 14:59:52 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 有購物車功能 2025-10-14 14:59:52 - INFO - main - [url_processor.py:390] - process_url - 子頁面 8 購物車判斷: 有購物車功能 2025-10-14 14:59:52 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 9/20 購物車功能 2025-10-14 14:59:52 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:59:52 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 980 字符 2025-10-14 14:59:52 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 14:59:56 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 14:59:59 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 14:59:59 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 6.956秒 2025-10-14 14:59:59 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 7.007秒 2025-10-14 14:59:59 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 有購物車功能 2025-10-14 14:59:59 - INFO - main - [url_processor.py:390] - process_url - 子頁面 9 購物車判斷: 有購物車功能 2025-10-14 14:59:59 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 10/20 購物車功能 2025-10-14 14:59:59 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 14:59:59 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 915 字符 2025-10-14 14:59:59 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 15:00:04 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 15:00:04 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 5.387秒 2025-10-14 15:00:04 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 5.437秒 2025-10-14 15:00:04 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 有購物車功能 2025-10-14 15:00:04 - INFO - main - [url_processor.py:390] - process_url - 子頁面 10 購物車判斷: 有購物車功能 2025-10-14 15:00:04 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 11/20 購物車功能 2025-10-14 15:00:04 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 15:00:04 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 13 字符 2025-10-14 15:00:04 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 15:00:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 15:00:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 15:00:06 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 15:00:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 15:00:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 15:00:06 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 15:00:07 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 15:00:08 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: process_api_requests 2025-10-14 15:00:08 - INFO - scheduler - [scheduler.py:134] - _execute_task_thread - 任務 'process_api_requests' 執行完成,耗時 0.02 秒,結果: 0 2025-10-14 15:00:09 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 15:00:09 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 4.557秒 2025-10-14 15:00:09 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 4.608秒 2025-10-14 15:00:09 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 無購物車功能 2025-10-14 15:00:09 - INFO - main - [url_processor.py:390] - process_url - 子頁面 11 購物車判斷: 無購物車功能 2025-10-14 15:00:09 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 12/20 購物車功能 2025-10-14 15:00:09 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 15:00:09 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 915 字符 2025-10-14 15:00:09 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 15:00:18 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 15:00:20 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 15:00:20 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 11.084秒 2025-10-14 15:00:20 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 11.134秒 2025-10-14 15:00:20 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 有購物車功能 2025-10-14 15:00:20 - INFO - main - [url_processor.py:390] - process_url - 子頁面 12 購物車判斷: 有購物車功能 2025-10-14 15:00:20 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 13/20 購物車功能 2025-10-14 15:00:20 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 15:00:20 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 1070 字符 2025-10-14 15:00:20 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 15:00:24 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 15:00:24 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 4.367秒 2025-10-14 15:00:24 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 4.418秒 2025-10-14 15:00:24 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 有購物車功能 2025-10-14 15:00:24 - INFO - main - [url_processor.py:390] - process_url - 子頁面 13 購物車判斷: 有購物車功能 2025-10-14 15:00:24 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 14/20 購物車功能 2025-10-14 15:00:24 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 15:00:24 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 1749 字符 2025-10-14 15:00:24 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 15:00:29 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 15:00:31 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 15:00:31 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 7.143秒 2025-10-14 15:00:31 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 7.194秒 2025-10-14 15:00:31 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 有購物車功能 2025-10-14 15:00:31 - INFO - main - [url_processor.py:390] - process_url - 子頁面 14 購物車判斷: 有購物車功能 2025-10-14 15:00:31 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 15/20 購物車功能 2025-10-14 15:00:31 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 15:00:31 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 915 字符 2025-10-14 15:00:32 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 15:00:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.6MB, CPU 0.0% 2025-10-14 15:00:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 128.0MB, CPU 0.0% 2025-10-14 15:00:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 1/5, 隊列大小 0, 總處理任務 1, 記憶體 200.7MB, CPU 0.0% 2025-10-14 15:00:33 - INFO - ThreadPoolManager - [thread_pool.py:313] - _perform_health_check - 線程池健康檢查: 活躍線程 0/5, 隊列大小 0, 總處理任務 0, 記憶體 127.9MB, CPU 0.0% 2025-10-14 15:00:37 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 15:00:37 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 5.972秒 2025-10-14 15:00:37 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 6.022秒 2025-10-14 15:00:37 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 有購物車功能 2025-10-14 15:00:37 - INFO - main - [url_processor.py:390] - process_url - 子頁面 15 購物車判斷: 有購物車功能 2025-10-14 15:00:37 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 16/20 購物車功能 2025-10-14 15:00:37 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 15:00:37 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 1144 字符 2025-10-14 15:00:38 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 15:00:40 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 15:00:44 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 15:00:44 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 6.715秒 2025-10-14 15:00:44 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 6.766秒 2025-10-14 15:00:44 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 有購物車功能 2025-10-14 15:00:44 - INFO - main - [url_processor.py:390] - process_url - 子頁面 16 購物車判斷: 有購物車功能 2025-10-14 15:00:44 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 17/20 購物車功能 2025-10-14 15:00:44 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 15:00:44 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 1749 字符 2025-10-14 15:00:44 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 15:00:49 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 15:00:49 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 4.864秒 2025-10-14 15:00:49 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 4.915秒 2025-10-14 15:00:49 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 有購物車功能 2025-10-14 15:00:49 - INFO - main - [url_processor.py:390] - process_url - 子頁面 17 購物車判斷: 有購物車功能 2025-10-14 15:00:49 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 18/20 購物車功能 2025-10-14 15:00:49 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 15:00:49 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 1034 字符 2025-10-14 15:00:49 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 15:00:51 - INFO - main - [web_routes.py:186] - result - UI 提交 - URL ID 74, UID: 1k9oglnji7, 進度: 21/21 2025-10-14 15:00:54 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 15:00:54 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 4.830秒 2025-10-14 15:00:54 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 4.880秒 2025-10-14 15:00:54 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 有購物車功能 2025-10-14 15:00:54 - INFO - main - [url_processor.py:390] - process_url - 子頁面 18 購物車判斷: 有購物車功能 2025-10-14 15:00:54 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 19/20 購物車功能 2025-10-14 15:00:54 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 15:00:54 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 588 字符 2025-10-14 15:00:54 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 15:00:58 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 15:00:58 - INFO - main - [app_initializer.py:347] - update_hourly_log_file - 檢測到小時變更,當前:20251014_14.log,新:20251014_15.log 2025-10-14 15:00:59 - INFO - httpx - [_client.py:1025] - _send_single_request - HTTP Request: POST https://ecpayopenaieus2.openai.azure.com/openai/deployments/gpt-5/chat/completions?api-version=2024-12-01-preview "HTTP/1.1 200 OK" 2025-10-14 15:00:59 - INFO - ContentAnalyzer - [analyzer.py:1023] - get_result_from_AI - 收到 Azure OpenAI 響應, 耗時: 5.085秒 2025-10-14 15:00:59 - INFO - ContentAnalyzer - [analyzer.py:1031] - get_result_from_AI - 成功獲取 AI 分析結果, 響應長度: 6 字符, 總耗時: 5.136秒 2025-10-14 15:00:59 - INFO - ContentAnalyzer - [analyzer.py:932] - check_shopping_cart - 購物車判斷結果: 有購物車功能 2025-10-14 15:00:59 - INFO - main - [url_processor.py:390] - process_url - 子頁面 19 購物車判斷: 有購物車功能 2025-10-14 15:00:59 - INFO - main - [url_processor.py:387] - process_url - 開始判斷子頁面 20/20 購物車功能 2025-10-14 15:00:59 - INFO - ContentAnalyzer - [analyzer.py:930] - check_shopping_cart - 開始購物車功能判斷 2025-10-14 15:00:59 - INFO - ContentAnalyzer - [analyzer.py:949] - get_result_from_AI - 準備使用 AI 分析文本, 文本長度: 915 字符 2025-10-14 15:00:59 - INFO - ContentAnalyzer - [analyzer.py:999] - get_result_from_AI - 發送請求到 Azure OpenAI, 模型: gpt-5, 溫度: 0.2, 最大標記數: 16384 2025-10-14 15:01:00 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 15:01:00 - INFO - main - [app_initializer.py:347] - update_hourly_log_file - 檢測到小時變更,當前:20251014_14.log,新:20251014_15.log 2025-10-14 15:01:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 15:01:04 - INFO - main - [app_initializer.py:347] - update_hourly_log_file - 檢測到小時變更,當前:20251014_14.log,新:20251014_15.log 2025-10-14 15:01:04 - INFO - scheduler - [scheduler.py:116] - _execute_task_thread - 執行任務: update_hourly_log_file 2025-10-14 15:01:04 - INFO - main - [app_initializer.py:347] - update_hourly_log_file - 檢測到小時變更,當前:20251014_14.log,新:20251014_15.log