Puppeteer

การพัฒนา

เขียน รัน และดีบัก script อัตโนมัติ Puppeteer ผ่านการสนทนา — Neotask ใช้ OpenClaw ทำให้ headless Chrome อัตโนมัติเข้าถึงได้สำหรับทุกคน

สิ่งที่คุณทำได้

สร้าง Script Puppeteer

อธิบายสิ่งที่คุณต้องการทำอัตโนมัติแล้ว Neotask เขียน script Puppeteer ครบถ้วน — navigation, การเลือก element, การกรอก form, ลำดับการคลิก, จับภาพหน้าจอ และการดึงข้อมูล ได้โค้ด Node.js พร้อมใช้งานจริงพร้อม error handling และกลยุทธ์การรอ

ดีบัก Automation Failure

วาง script Puppeteer ที่ล้มเหลวหรือข้อความ error แล้ว Neotask วินิจฉัยปัญหา: stale element reference, race condition, selector เปลี่ยน, navigation timeout ไม่ตรง หรือขาด await keyword ได้ script ที่แก้ไขแล้วพร้อมคำอธิบายสิ่งที่ผิด

สร้าง Scraping Pipeline

ขอให้ Neotask เขียน Puppeteer scraper ที่จัดการ pagination, lazy-loaded content, infinite scroll หรือหน้า JavaScript ที่ render แบบ dynamic script ที่ได้จัดการ waitForSelector, networkidle condition และ structured data extraction อย่างเรียบร้อย

อัตโนมัติ Form Submission

อธิบาย multi-step form workflow — login, กรอกฟิลด์, อัปโหลดไฟล์, ส่ง และยืนยัน — แล้ว Neotask สร้าง Puppeteer script ที่ทำทั้งลำดับอัตโนมัติ รวมถึงจัดการ modal dialog และ file chooser prompt

จับภาพ Visual Snapshot

สร้าง script Puppeteer ที่จับภาพหน้าจอเต็มหน้า จับ region เฉพาะ element หรือ render หน้าเป็น PDF มีประโยชน์สำหรับ visual regression testing, archiving หรือสร้าง document export ที่สม่ำเสมอจากเนื้อหาที่ render บนเว็บ

ลองถาม

  • "เขียน script Puppeteer ที่ login เข้า GitHub นำทางไป repository แล้วดึงรายชื่อ repo ทั้งหมดและจำนวน star"
  • "selector Puppeteer .product-price หยุดทำงาน — นี่คือ error: [วาง error] อะไรเปลี่ยนและแก้ยังไง?"
  • "สร้าง script Puppeteer ที่ scrape บทความทั้งหมดจาก 5 หน้าแรกของบล็อกนี้พร้อมชื่อ วันที่ และ URL"
  • "เขียน script Puppeteer ที่กรอก checkout form นี้ด้วยข้อมูลทดสอบแล้วจับภาพหน้าจอแต่ละขั้นตอน"
  • "สร้าง script Puppeteer ที่ตรวจสอบหน้าสินค้าทุก 10 นาทีแล้วส่งแจ้งเตือนเมื่อราคาลดต่ำกว่า $50"
  • "จัดการ file upload dialog ใน Puppeteer ยังไง? เขียนตัวอย่างให้"
  • "แปลง Selenium script นี้เป็น Puppeteer แล้วทำให้เสถียรขึ้นด้วยเงื่อนไขการรอที่เหมาะสม"
  • "เขียน script Puppeteer ที่สร้าง PDF จากแต่ละ URL ในรายการนี้"
  • เคล็ดลับ

  • ใช้ waitForSelector แทน delay คงที่เสมอ — ขอให้ Neotask แทนที่ page.waitForTimeout() ด้วย page.waitForSelector() หรือ page.waitForNetworkIdle(); การรอตามเวลาคือสาเหตุที่พบบ่อยที่สุดของ automation ที่ไม่เสถียร
  • Request interception เพื่อความเร็ว — สำหรับ scraping ขอให้ Neotask เพิ่ม request interception ที่บล็อกรูปภาพ ฟอนต์ และ analytics script; หน้าโหลดเร็วขึ้น 3-5 เท่า
  • Headless new mode — Puppeteer headless: 'new' ทำงานต่างจาก legacy headless; ขอให้ Neotask ระบุโหมดที่ script เป้าหมาย
  • Error recovery pattern — ขอ script ที่ retry เมื่อ navigation ล้มเหลวแล้ว fallback เป็น timeout สั้นลงแทนการ crash
  • Element handle กับ evaluate — สำหรับการดึงข้อมูลซับซ้อน ขอให้ Neotask ใช้ page.evaluate() สำหรับ bulk DOM access แทน element handle ทีละตัว
  • Screenshot เมื่อล้มเหลว — ขอให้ Neotask เพิ่ม screenshot-on-exception block ในทุก script; ช่วยดีบัก 10 เท่าเพราะเห็นสถานะหน้าจอเมื่อ script ล้มเหลว
  • Works Well With