insane-search - ทำให้ Claude Code ที่ยอมแพ้เมื่อเจอ 403 ลองต่อจนสุด
(github.com/fivetaku)ผมไม่ชอบ Claude Code ที่พอเจอ 403 ก็ยอมแพ้
"ช่วยอ่านโพสต์นี้ใน Naver Blog ให้หน่อย" → 403. "ช่วยเลือกคีย์บอร์ดราคาไม่เกิน 100,000 วอนจาก Coupang ให้หน่อย" → 403. "เธรดนี้ใน Reddit พูดว่าอะไร?" → ถูกบล็อก สุดท้ายก็ต้องเป็นผมที่เข้าเบราว์เซอร์เองแล้วคัดลอกวางให้ซ้ำๆ อยู่ดี ทั้งที่เป็นการให้ AI ทำงานแท้ๆ แต่กลับกลายเป็นว่าผมต้องมาทำงานเอง
ผมลองใช้ MCP ที่มีอยู่แล้ว แต่ก็มีปัญหา ส่วนใหญ่ผูกติดกับแพลตฟอร์มเดียวโดยเฉพาะ (เฉพาะ Twitter, เฉพาะ YouTube) หรือไม่ก็ต้องสมัคร API key/OAuth หรือไม่ก็เรียนรู้อคติแบบ "เว็บนี้ถูกบล็อก" จนไม่แม้แต่จะลองเลย ทั้งที่เว็บเปลี่ยนทุกวัน วิธีที่ใช้ได้ก็อาจยังใช้ได้ในตอนนี้ การยอมแพ้เพียงเพราะเคยโดนบล็อกครั้งเดียวมันไม่สมเหตุสมผลเลย
เพราะงั้นผมเลยสร้าง เลเยอร์เลือกวิธีการ ขึ้นมา มันไม่ใช่สแครปเปอร์ แต่เป็นทักษะที่ลองใช้ public endpoint และเทคนิคมาตรฐานตามลำดับไปเรื่อยๆ จนกว่าจะทะลุได้
ทำงานอย่างไร
เมื่อ Claude Code เข้าถึง URL จะมีตัวจัดตารางแบบปรับตัวได้ 4 ขั้นคอยช่วย โดยจะขยับไปยัง Phase ถัดไปก็ต่อเมื่อ Phase ก่อนหน้าล้มเหลวหรือพบสัญญาณว่าถูกบล็อกเท่านั้น
- Phase 0: ทำดัชนีเฉพาะ special endpoint ที่ generic chain ค้นหาไม่เจอ (15 กลุ่ม) — X Syndication, Reddit
.json, HN Firebase, yt-dlp 1,858 เว็บไซต์ - Phase 1: lightweight probe แบบขนาน — WebFetch, Jina Reader, curl Chrome/Mobile/Googlebot UA, การแปลง URL แบบ
m.{domain}/.json//rss - Phase 2: TLS impersonation —
curl_cffiตามลำดับ safari → chrome → firefox (ถ้ายังไม่ได้ติดตั้งจะpip installให้อัตโนมัติ) - Phase 3: เบราว์เซอร์จริง — เรนเดอร์ด้วย Playwright MCP + ค้นหา API ที่ซ่อนอยู่ (
network_requests) - หากตรวจพบ login/paywall จะจบด้วยสถานะ "ต้องยืนยันตัวตน" โดยไม่พยายามต่อแบบเสียเปล่า
จาก HTML response ทั้งหมด จะดึง OGP tag และข้อมูลโครงสร้างแบบ JSON-LD ออกมาด้วย แม้จะดึงเนื้อหาทั้งหมดไม่ได้ ก็ยังได้ชื่อเรื่อง/ราคา/โปรไฟล์มา
ใช้กับเว็บไซต์เกาหลีได้ดีเป็นพิเศษ
- Naver Blog → ส่วนใหญ่แก้ได้ด้วยการแปลงเป็น mobile URL
- Coupang → ดึง JSON-LD ItemList ได้ด้วย
curl_cffi safariใน Phase 2 - DC Inside/FMkorea/Clien/Karrot/YoZM IT/Wishket → อ่านได้ทั้งหมดด้วย Jina Reader หรือ curl
- Naver Finance → ใช้ unofficial JSON API แบบไม่ต้องยืนยันตัวตนที่
api.finance.naver.com/siseJson.naver - สื่อเกาหลี 9 แห่ง → ใช้ RSS index + Google News RSS เป็น fallback
หลักการสำคัญ
อย่าสร้างอคติ ผมไม่ได้ทำลิสต์ว่า "เว็บนี้ยาก" และจะไม่ข้ามเพียงเพราะไม่มี dependency — แต่จะติดตั้งแล้วลองเลย เพราะทั้งตัวเว็บและวิธีก็อาจใช้ได้ในตอนนี้
การติดตั้ง
/plugin marketplace add https://github.com/fivetaku/gptaku_plugins.git
/plugin install insane-search
รีสตาร์ตแล้วก็จบ ไม่มี API key/การสมัคร/ตัวแปรสภาพแวดล้อมใดๆ แค่สั่งตามปกติ มันจะ trigger อัตโนมัติเมื่อเจอ URL ที่ถูกบล็อก
2 ความคิดเห็น
agent browser ของ vercel-labs เจ๋งมาก
น่าจะให้ใช้ browser-use ได้เลยไม่ใช่เหรอ?