เป็นระบบเก็บข้อมูลแบบ self-hosted ที่เก็บข้อมูลผ่าน เซสชันเบราว์เซอร์จริงของผู้ใช้ โดย สิ่งที่จะเก็บและวิธีการเก็บนั้นเซิร์ฟเวอร์จะเผยแพร่แบบไดนามิกขณะรันไทม์ ใช้แพตเทิร์น Command-Execute-Report ที่เซิร์ฟเวอร์ควบคุมไคลเอนต์ (เบราว์เซอร์) จากระยะไกล

มันแก้ปัญหา 3 อย่างที่ต้องเจอทุกครั้งเมื่อเขียนครอว์เลอร์ใหม่ — ภาระ/การบล็อกของแบ็กเอนด์เป้าหมาย, กำแพงล็อกอิน, และการต้องกระจายไคลเอนต์ใหม่ทุกครั้งที่ลอจิกการเก็บข้อมูลเปลี่ยน — ด้วยการออกแบบตั้งแต่ต้น

  • Zero-Footprint: ไม่ยิงคำขอไปยังเซิร์ฟเวอร์เป้าหมายโดยตรง แต่ให้ เบราว์เซอร์ของผู้ใช้ที่ล็อกอินอยู่แล้ว เป็นผู้เก็บข้อมูลแทน → เข้าถึงด้านในกำแพงล็อกอินได้เหมือนมนุษย์จริง และหลีกเลี่ยงภาระ/การบล็อกจากแบ็กเอนด์
  • การควบคุมแบบไดนามิกจากเซิร์ฟเวอร์: ลงทะเบียน bookmarklet ครั้งเดียวแล้วคงเดิมตลอดไป กฎการเก็บข้อมูล (selector·action·extract) จะถูกเซิร์ฟเวอร์เผยแพร่เป็น type command → เปลี่ยนลอจิกเมื่อไรไม่ต้องกระจายไคลเอนต์ใหม่เลย สร้าง TS type อัตโนมัติจาก Pydantic แหล่งเดียว
  • สร้าง recipe ได้ด้วยการคลิก: ใน WebUI เมื่อคลิกองค์ประกอบจะสร้าง selector อัตโนมัติ และบันทึก recipe สำหรับ extract จากลำดับ action (click·drag·scroll·swipe) ห้าม eval script (ใช้ allowlist)
  • บันทึกข้อมูลแบบไม่สูญหาย: write-ahead (commit แบบ synchronous แล้วค่อยตอบ 202) + idempotent + กู้คืนอัตโนมัติเมื่อรีสตาร์ต
  • ควบคุมผ่าน MCP agent: เปิดเผย live pipe เป็นเครื่องมือ MCP (มี host allowlist·rate-limit·op TTL guard) แต่ ไม่ได้มีเป้าหมายเพื่อหลบเลี่ยงบอตหรือทำ mass scraping
  • secure-by-default: เปิดใช้การยืนยันตัวตนผู้ดูแลระบบเป็นค่าเริ่มต้น (โทเคนอัตโนมัติแบบ Jupyter), มีขอบเขตการรัน eval(script) จากการตอบสนองของเซิร์ฟเวอร์และ external beacon(beacon), และไม่ใช้ fingerprinting
  • ไม่มีค่าใช้จ่ายและพกพาได้: SQLite + คิวในหน่วยความจำ + FastAPI เดียว ไม่พึ่งบริการเสียเงินภายนอกเลย uv ทำให้ทำซ้ำได้โดยไม่ขึ้นกับ OS MIT

การเก็บข้อมูลจากเว็บไซต์สาธารณะจำเป็นต้องมี URL สาธารณะเพราะข้อจำกัดของ Browser Private Network Access โดยสามารถข้ามได้ด้วยการเปิด temporary tunnel ของ cloudflared ผ่าน ENABLE_TUNNEL=1 (จากการทดสอบจริง: เก็บข้อมูลจากเว็บข่าวจริงสำเร็จ)

ยังไม่มีความคิดเห็น

ยังไม่มีความคิดเห็น