From 9eccace3bc87aee3fcebd47e33dd8ef2795e9441 Mon Sep 17 00:00:00 2001 From: hotyue <52734432+hotyue@users.noreply.github.com> Date: Sun, 12 Apr 2026 03:44:10 +0000 Subject: [PATCH] =?UTF-8?q?fix(core/google):=20=E4=BF=AE=E5=A4=8D=E5=A4=9A?= =?UTF-8?q?=E5=8C=BA=E5=9F=9F=E5=88=A4=E5=AE=9A=E9=80=BB=E8=BE=91=EF=BC=8C?= =?UTF-8?q?=E5=85=BC=E5=AE=B9=20Google=20=E6=AC=A7=E6=B4=B2=E5=8C=BA?= =?UTF-8?q?=E6=97=A0=E8=B7=B3=E8=BD=AC=E6=96=B0=E8=A7=84=EF=BC=8C=E5=B9=B6?= =?UTF-8?q?=E8=A7=A3=E9=99=A4=E9=A6=99=E6=B8=AF=E8=8A=82=E7=82=B9=E8=AF=AF?= =?UTF-8?q?=E5=88=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- core/mod_google.sh | 33 +++++++++++++++++++++++++-------- 1 file changed, 25 insertions(+), 8 deletions(-) diff --git a/core/mod_google.sh b/core/mod_google.sh index d25f7b5..124225f 100755 --- a/core/mod_google.sh +++ b/core/mod_google.sh @@ -88,7 +88,7 @@ for ((i=1; i<=TOTAL_ACTIONS; i++)); do ;; 3) # 地图坐标查询 CODE=$(curl -${IP_PREF:-4} -m 15 -s -o /dev/null -w "%{http_code}" -A "$SESSION_UA" \ - "https://www.google.com/maps/search/${ENCODED_KEY}/@${ACTION_LAT},${ACTION_LON},17z?${LANG_PARAMS}") + "https://www.google.com/maps/search/$${ENCODED_KEY}/@${ACTION_LAT},${ACTION_LON},17z?${LANG_PARAMS}") ;; 4) # 触发移动端系统底层位置检测像素 CODE=$(curl -${IP_PREF:-4} -m 10 -s -o /dev/null -w "%{http_code}" -A "$SESSION_UA" \ @@ -107,16 +107,33 @@ for ((i=1; i<=TOTAL_ACTIONS; i++)); do fi done -# --- [结果纠偏自检] --- -# 去掉所有语言参数,进行一次最干净的直连测试 (强制遵循锚点协议) +# --- [结果纠偏自检 (V3.1.4 绝对精准提取版)] --- FINAL_URL=$(curl -${IP_PREF:-4} -m 15 -s -L -o /dev/null -w "%{url_effective}" https://www.google.com) -if [[ "$FINAL_URL" == *"$VALID_URL_SUFFIX"* ]]; then - STATUS="✅ 目标区域达成 ($VALID_URL_SUFFIX)" -elif [[ "$FINAL_URL" == *"google.com.hk"* ]]; then - STATUS="❌ 判定为送中区 (CN/HK)" +# 核心战术:利用 awk 精准提取最终 URL 的域名部分,再剔除 "www.google." 前缀,得到纯粹的后缀 +# 例如: https://www.google.com.hk/?... -> 提取为 "com.hk" +ACTUAL_DOMAIN=$(echo "$FINAL_URL" | awk -F/ '{print $3}') +ACTUAL_SUFFIX=${ACTUAL_DOMAIN#www.google.} + +# 1. 优先验证:绝对匹配目标后缀 (彻底杜绝 com 包含于 com.hk 的陷阱) +if [ "$ACTUAL_SUFFIX" == "$VALID_URL_SUFFIX" ]; then + STATUS="✅ 目标区域达成 ($ACTUAL_SUFFIX)" + +# 2. 核心拦截:精准捕捉送中特征 (com.hk) +elif [ "$ACTUAL_SUFFIX" == "com.hk" ]; then + if [ "$REGION_CODE" == "HK" ]; then + STATUS="✅ 目标区域达成 (HK 专属 com.hk)" + else + STATUS="❌ 严重漂移!判定为送中区 (实际跳往 $ACTUAL_SUFFIX)" + fi + +# 3. 宽容处理:遵守 Google 无跳转新规 (严格限定必须是纯粹的 com,绝不能是 com.xx) +elif [ "$ACTUAL_SUFFIX" == "com" ]; then + STATUS="🌐 保持通用主站 (留在 .com,受 Google 无跳转新规影响)" + +# 4. 跨区漂移:所有预判之外的后缀,全部视为异常 else - STATUS="⚠️ 其他分站跳板 ($FINAL_URL)" + STATUS="⚠️ 跨区跳板漂移 (当前实际归属: $ACTUAL_SUFFIX)" fi log "$MODULE_NAME" "SCORE" "自检结论: $STATUS"