google-trends-ath-detector

專注於 Google Trends 數據擷取與分析,使用 Selenium 模擬真人瀏覽器行為抓取數據,自動判定搜尋趨勢是否創下歷史新高(ATH)或出現異常飆升,並提供訊號分型(季節性/事件驅動/結構性轉變)。

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "google-trends-ath-detector" with this command: npx skills add fatfingererr/macro-skills/fatfingererr-macro-skills-google-trends-ath-detector

<essential_principles> Google Trends ATH Detector 核心原則

1. 模擬真人瀏覽器行為抓取 Google Trends

本技能使用 Selenium 模擬真人瀏覽器:

  • 移除 navigator.webdriver 自動化標記
  • 隨機輪換 User-Agent(Chrome/Firefox/Safari)
  • 請求間隨機延遲(0.5-2 秒)
  • 先訪問首頁建立 session,再抓取數據

2. 訊號分型(Signal Typing)

搜尋趨勢飆升分為三種類型:

類型特徵解讀
Seasonal spike每年固定月份重複制度性週期(投保季、報稅季)
Event-driven shock短期尖峰、z-score 高新聞/政策/突發事件
Regime shift趨勢線上移、持續高位結構性關注上升

3. 分析公式

ATH 判定:latest_value >= max(history) * 0.98
異常判定:zscore >= threshold (default: 2.5)
訊號分型:based on (is_ath, is_anomaly, trend_direction)

4. 描述性分析優先

本技能提供客觀的數學分析結果

  • 輸出訊號類型、異常分數等量化指標
  • 提取 related queries 作為驅動因素參考
  • 由用戶根據專業知識自行解讀 </essential_principles>
<intake> **您想要執行什麼操作?**
  1. Detect - 快速偵測是否創下 ATH 或出現異常
  2. Analyze - 深度分析訊號類型與驅動因素
  3. Compare - 比較多個主題的趨勢共振

等待回應後再繼續。 </intake>

<routing> | Response | Workflow | Description | |-------------------------------------------|----------------------|---------------------| | 1, "detect", "ath", "check", "是否創新高" | workflows/detect.md | 快速偵測 ATH 與異常 | | 2, "analyze", "deep", "分析", "訊號" | workflows/analyze.md | 深度分析與訊號分型 | | 3, "compare", "對照", "共振" | workflows/compare.md | 多主題趨勢比較 |

讀取工作流程後,請完全遵循其步驟。 </routing>

<reference_index> 參考文件 (references/)

文件內容
input-schema.md完整輸入參數定義與預設值
data-sources.mdGoogle Trends 數據來源與 Selenium 爬取指南
signal-types.md訊號分型定義與判定邏輯
seasonality-guide.md季節性分解方法與解讀
</reference_index>

<workflows_index>

WorkflowPurpose
detect.md快速偵測 ATH 與異常分數
analyze.md深度分析、訊號分型、驅動詞彙
compare.md多主題趨勢共振分析
</workflows_index>

<templates_index>

TemplatePurpose
output-schema.yaml標準輸出 JSON schema
</templates_index>

<scripts_index>

ScriptPurpose
trend_fetcher.py核心爬蟲與分析邏輯(Selenium 版)
</scripts_index>

<examples_index> 範例輸出 (examples/)

文件內容
health_insurance_ath.jsonHealth Insurance ATH 偵測範例
seasonal_vs_anomaly.json季節性 vs 異常判定範例
multi_topic_comparison.json多主題比較範例
</examples_index>

<quick_start> 快速開始:安裝依賴

pip install selenium webdriver-manager beautifulsoup4 lxml loguru

Python API:

from scripts.trend_fetcher import fetch_trends, analyze_ath

# 抓取數據(使用 Selenium 模擬瀏覽器)
data = fetch_trends(
    topic="Health Insurance",
    geo="US",
    timeframe="2004-01-01 2025-12-31"
)

# ATH 分析
result = analyze_ath(data, threshold=2.5)

print(f"Is ATH: {result['analysis']['is_all_time_high']}")
print(f"Signal Type: {result['analysis']['signal_type']}")
print(f"Z-Score: {result['analysis']['zscore']}")

CLI 快速開始:

# 基本分析
python scripts/trend_fetcher.py \
  --topic "Health Insurance" \
  --geo US \
  --output ./output/health_insurance.json

# 比較多個主題
python scripts/trend_fetcher.py \
  --topic "Health Insurance" \
  --compare "Unemployment,Inflation" \
  --geo US \
  --output ./output/comparison.json

# 跳過 related queries(更快、更少請求)
python scripts/trend_fetcher.py \
  --topic "Health Insurance" \
  --no-related \
  --output ./output/health_insurance.json

# Debug 模式(顯示瀏覽器、保存 HTML)
python scripts/trend_fetcher.py \
  --topic "Health Insurance" \
  --debug \
  --no-headless

# 登入模式(預設等待 120 秒供 2FA 驗證)
python scripts/trend_fetcher.py \
  --topic "Health Insurance" \
  --output ./output/health_insurance.json

# 跳過登入等待(不需要登入時)
python scripts/trend_fetcher.py \
  --topic "Health Insurance" \
  --login-wait 0 \
  --output ./output/health_insurance.json

# 從已下載的 CSV 檔案分析(跳過瀏覽器抓取)
python scripts/trend_fetcher.py \
  --topic "Health Insurance" \
  --csv ./downloads/multiTimeline.csv \
  --output ./output/health_insurance.json

# 自動從 Downloads 目錄找最新 CSV
python scripts/trend_fetcher.py \
  --topic "Health Insurance" \
  --csv auto \
  --output ./output/health_insurance.json

CLI 參數說明:

參數說明預設值
--topic搜尋主題(必要)-
--geo地區代碼US
--timeframe時間範圍2004-01-01 2025-12-31
--threshold異常 z-score 門檻2.5
--compare比較主題(逗號分隔)-
--no-related跳過 related queriesfalse
--no-headless顯示瀏覽器視窗false
--login強制啟用登入模式false
--login-wait登入等待秒數(0=互動式 Enter)120
--csvCSV 檔案路徑或 'auto' 自動尋找-
--debug啟用調試模式false
--output輸出 JSON 檔案路徑-
</quick_start>

<success_criteria> Skill 成功執行時:

  • Selenium 成功啟動並模擬瀏覽器
  • 正確抓取 Google Trends 時間序列
  • 判定 ATH 狀態與異常分數
  • 識別訊號類型(seasonal/event/regime)
  • 提取 related queries 驅動詞彙(若啟用)
  • 輸出結構化 JSON 結果 </success_criteria>

<anti_detection_strategy> 防偵測策略摘要

本技能實現以下防偵測措施(基於 design-human-like-crawler.md):

策略效果優先級
移除 navigator.webdriver核心,防止 JS 偵測🔴 必要
隨機 User-Agent避免固定 UA 被識別🔴 必要
請求前隨機延遲模擬人類行為🔴 必要
禁用自動化擴展移除 Chrome 痕跡🟡 建議
先訪問首頁再 API建立正常 session🟡 建議

Chrome 選項配置:

chrome_options.add_argument('--disable-blink-features=AutomationControlled')
chrome_options.add_experimental_option('excludeSwitches', ['enable-automation'])
chrome_options.add_experimental_option('useAutomationExtension', False)

</anti_detection_strategy>

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

list-china-today-macro-news

No summary provided by upstream source.

Repository SourceNeeds Review
General

monitor-etf-holdings-drawdown-risk

No summary provided by upstream source.

Repository SourceNeeds Review
General

usd-reserve-loss-gold-revaluation

No summary provided by upstream source.

Repository SourceNeeds Review
General

compute-precious-miner-gross-margin

No summary provided by upstream source.

Repository SourceNeeds Review