ข้ามไปยังเนื้อหา
สถานะแดชบอร์ด

ประเภทงาน

reCAPTCHA v2

หน้านี้แปลด้วยเครื่องจากเวอร์ชันภาษาจีน อาจมีข้อผิดพลาด โปรดยึดเวอร์ชันภาษาจีนเป็นหลัก

ภาพประกอบreCAPTCHA v2: ช่องทำเครื่องหมาย "ฉันไม่ใช่โปรแกรมอัตโนมัติ" เมื่อคลิกแล้วอาจติ๊กถูกทันทีหรือแสดงโจทย์ภาพ

งาน reCAPTCHA v2 จะคืนค่า token (gRecaptchaResponse) ซึ่งคุณนำไปส่งให้เว็บไซต์ปลายทางเพื่อผ่านการตรวจสอบได้เลยโดยไม่ต้องคลิกรูปภาพ ประเภท NoCaptchaTaskProxyless ที่ใช้บ่อยที่สุดมีราคา 15 พอยต์ (≈ $2.25 / 1k) ต่องาน และทำงานแบบอะซิงโครนัส: เรียก createTask เพื่อสร้างงานก่อน แล้วเรียก getTaskResult ทุก 5 วินาทีเพื่อรับผลลัพธ์ งานที่แก้ไม่สำเร็จหรือหมดเวลาจะคืนพอยต์โดยอัตโนมัติ

POSThttps://api.yescaptcha.com/createTaskendpoint ทั่วโลก
POSThttps://cn.yescaptcha.com/createTaskendpoint จีน

เนื้อหาคำขอเป็น JSON และใช้ clientKey (ClientKey ของบัญชี คัดลอกได้จากแดชบอร์ดที่ yescaptcha.com) ในการยืนยันตัวตน สร้างงานที่ endpoint ใด ให้ตรวจสอบผลลัพธ์ที่ endpoint เดียวกัน

  • หน้าเว็บมีช่องทำเครื่องหมาย “ฉันไม่ใช่โปรแกรมอัตโนมัติ” (I’m not a robot): แบบมีช่องทำเครื่องหมาย
  • ไม่มีช่องทำเครื่องหมาย และมีโจทย์รูปภาพปรากฏขึ้นหลังจากคลิกปุ่มส่งเท่านั้น: แบบ invisible ให้เพิ่ม "isInvisible": true
  • หน้าเว็บโหลด recaptcha/enterprise.js หรือ URL ของคำขอมีคำว่า enterprise: แบบ Enterprise ให้ใช้ประเภทที่มีคำว่า Enterprise ในชื่อ

หากไม่แน่ใจว่าเป็นแบบใด ดู การระบุประเภท CAPTCHA หาก token ผ่านได้ไม่ดีนัก ลองใช้ การจดจำภาพ reCAPTCHA v2 แทน: API จะบอกว่าต้องคลิกรูปใด แล้วคุณคลิกเองในเบราว์เซอร์

ประเภทงานราคารูปแบบการคืนผลลัพธ์หมายเหตุ
NoCaptchaTaskProxyless$2.25 / 1k; 15 พอยต์/งาน · ¥15 / 1kแบบอะซิงโครนัส
RecaptchaV2TaskProxyless$3.00 / 1k; 20 พอยต์/งาน · ¥20 / 1kแบบอะซิงโครนัสพารามิเตอร์เหมือนกับ NoCaptchaTaskProxyless แต่ใช้เส้นทางต่างกัน สามารถใช้สลับเป็นตัวสำรองของกันและกันได้
NoCaptchaTask$2.25 / 1k; 15 พอยต์/งาน · ¥15 / 1kแบบอะซิงโครนัสใช้พร็อกซีของคุณเอง
RecaptchaV2EnterpriseTaskProxyless$3.00 / 1k; 20 พอยต์/งาน · ¥20 / 1kแบบอะซิงโครนัส
RecaptchaV2EnterpriseTask$3.00 / 1k; 20 พอยต์/งาน · ¥20 / 1kแบบอะซิงโครนัสใช้พร็อกซีของคุณเอง

ราคาเป็นดอลลาร์สหรัฐเป็นเพียงค่าประมาณที่ US$1 ≈ ¥6.67 งานจะถูกหักเป็นพอยต์

  • NoCaptchaTaskProxyless และ RecaptchaV2TaskProxyless ใช้พารามิเตอร์เหมือนกันแต่ใช้คนละเส้นทาง หากประเภทหนึ่งผ่านได้ไม่ดีนัก ลองสลับไปใช้อีกประเภทหนึ่ง
  • ประเภทที่ไม่มีคำว่า Proxyless ในชื่อ (NoCaptchaTask, RecaptchaV2EnterpriseTask) จะโหลด CAPTCHA ผ่านพร็อกซีของคุณเอง และต้องส่งฟิลด์ proxyType, proxyAddress, proxyPort และฟิลด์ที่เกี่ยวข้อง ใช้เมื่อเว็บไซต์ปลายทางตรวจสอบ IP ของผู้เข้าชม

ฟิลด์ของออบเจ็กต์ task ใน createTask:

ฟิลด์ประเภทจำเป็นคำอธิบาย
typestringใช่ประเภทงาน ดูค่าที่ใช้ได้ในหัวข้อ "ประเภทงานและราคา" ของหน้านี้
websiteURLstringใช่URL แบบเต็มของหน้าเว็บที่แสดง CAPTCHA ให้ระบุเว็บไซต์ที่คุณเห็น CAPTCHA ไม่ใช่โดเมนของผู้ให้บริการ CAPTCHA
websiteKeystringใช่คีย์ของเว็บไซต์ (sitekey) หาได้จากซอร์สโค้ดของหน้าเว็บหรือจากคำขอเครือข่าย โดยทั่วไปจะไม่เปลี่ยนแปลง
isInvisiblebooleanไม่ส่ง true เมื่อเป็นเวอร์ชัน invisible หากไม่ใช่ไม่ต้องส่ง
proxyTypestringบางประเภทโปรโตคอลของพร็อกซี: http, https, socks4 หรือ socks5 (จำเป็นสำหรับ NoCaptchaTask, RecaptchaV2EnterpriseTask)
proxyAddressstringบางประเภทIP แอดเดรสหรือชื่อโฮสต์ของพร็อกซี ไม่สามารถใช้แอดเดรสภายในเครื่องหรือภายในเครือข่าย เช่น 127.0.0.1 หรือ 192.168.x.x ได้ เพราะเซิร์ฟเวอร์ของเราเข้าถึงไม่ได้ (จำเป็นสำหรับ NoCaptchaTask, RecaptchaV2EnterpriseTask)
proxyPortintegerบางประเภทพอร์ตของพร็อกซี (จำเป็นสำหรับ NoCaptchaTask, RecaptchaV2EnterpriseTask)
proxyLoginstringไม่ชื่อผู้ใช้ของพร็อกซี (เมื่อพร็อกซีต้องมีการยืนยันตัวตน) (เฉพาะ NoCaptchaTask, RecaptchaV2EnterpriseTask)
proxyPasswordstringไม่รหัสผ่านของพร็อกซี (เมื่อพร็อกซีต้องมีการยืนยันตัวตน) (เฉพาะ NoCaptchaTask, RecaptchaV2EnterpriseTask)
userAgentstringไม่User-Agent ของเบราว์เซอร์ หากผลลัพธ์มี userAgent ให้ใช้ค่านั้นเมื่อส่ง token (เฉพาะ NoCaptchaTask, RecaptchaV2EnterpriseTask)
enterprisePayloadobjectไม่พารามิเตอร์เพิ่มเติมของเวอร์ชัน Enterprise เช่นค่า s ของ reCAPTCHA Enterprise: {"s": "..."} หากหน้าเว็บไม่ได้ใช้ไม่ต้องส่ง (เฉพาะ RecaptchaV2EnterpriseTaskProxyless, RecaptchaV2EnterpriseTask)

วิธีค้นหา websiteURL และ websiteKey ดู การค้นหาพารามิเตอร์ของ reCAPTCHA

ใช้หน้าเดโมอย่างเป็นทางการของ Google เป็นตัวอย่าง:

POST https://api.yescaptcha.com/createTask
{
"clientKey": "YOUR_CLIENT_KEY",
"task": {
"type": "NoCaptchaTaskProxyless",
"websiteURL": "https://www.google.com/recaptcha/api2/demo",
"websiteKey": "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-"
}
}

โค้ดฉบับสมบูรณ์ (สร้างงาน เรียกตรวจซ้ำทุก 5 วินาที และพิมพ์ token) ก่อนรัน ให้ใส่ ClientKey ไว้ในตัวแปรสภาพแวดล้อม YESCAPTCHA_CLIENT_KEY:

curl -s https://api.yescaptcha.com/createTask \
-H 'Content-Type: application/json' \
-d '{
"clientKey": "YOUR_CLIENT_KEY",
"task": {
"type": "NoCaptchaTaskProxyless",
"websiteURL": "https://www.google.com/recaptcha/api2/demo",
"websiteKey": "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-"
}
}'
# Returns {"errorId":0,"taskId":"..."}; then poll every 5 seconds:
curl -s https://api.yescaptcha.com/getTaskResult \
-H 'Content-Type: application/json' \
-d '{"clientKey": "YOUR_CLIENT_KEY", "taskId": "TASK_ID"}'

กรณีแบบ Enterprise ที่หน้าเว็บส่งค่า s ให้ reCAPTCHA ให้ใส่ค่านั้นใน enterprisePayload:

POST https://api.yescaptcha.com/createTask
{
"clientKey": "YOUR_CLIENT_KEY",
"task": {
"type": "RecaptchaV2EnterpriseTaskProxyless",
"websiteURL": "https://example.com/login",
"websiteKey": "SITE_KEY_OF_THE_PAGE",
"enterprisePayload": {
"s": "S_VALUE_FROM_THE_PAGE"
}
}
}

ใช้พร็อกซีของคุณเอง:

POST https://api.yescaptcha.com/createTask
{
"clientKey": "YOUR_CLIENT_KEY",
"task": {
"type": "NoCaptchaTask",
"websiteURL": "https://www.google.com/recaptcha/api2/demo",
"websiteKey": "6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ-",
"proxyType": "http",
"proxyAddress": "proxy.example.com",
"proxyPort": 8080,
"proxyLogin": "user",
"proxyPassword": "pass"
}
}

createTask จะคืน ID งาน:

{
"errorId": 0,
"taskId": "61138bb6-19fb-11ec-a9c8-0242ac110006"
}

นำ ID นี้ไปเรียก getTaskResult ระหว่างที่งานยังประมวลผลอยู่จะได้ {"errorId": 0, "status": "processing"} ให้ตรวจสอบอีกครั้งหลังจาก 5 วินาที เมื่อเสร็จสมบูรณ์จะได้:

{
"errorId": 0,
"status": "ready",
"solution": {
"gRecaptchaResponse": "03AGdBq25SxXT-pmSeBXjzScW-EiocHwwpwqtk1QXlJnGnU..."
}
}
ฟิลด์ประเภทคำอธิบาย
gRecaptchaResponsestringtoken ที่ได้ ใช้ส่งให้เว็บไซต์เป้าหมาย ใช้ได้ครั้งเดียว มีผลประมาณ 120 วินาที แนะนำให้ใช้ภายใน 60 วินาที

งานประมวลผลนานสุดประมาณ 110 วินาที หากเกินเวลาจะคืน ERROR_TASK_TIMEOUT และคืนพอยต์ เมื่อเกิดข้อผิดพลาด errorId จะเป็น 1 ให้จัดการตาม errorCode ดู รหัสข้อผิดพลาด วิธีส่ง token หลังจากได้รับแล้ว ดู การใช้ token เพื่อผ่าน reCAPTCHA

ทำไม token ของเว็บไซต์เดียวกันจึงผ่านบ้างไม่ผ่านบ้าง?

หัวข้อที่มีชื่อว่า “ทำไม token ของเว็บไซต์เดียวกันจึงผ่านบ้างไม่ผ่านบ้าง?”

เว็บไซต์ปลายทางเป็นผู้ตัดสิน เว็บไซต์จะให้คะแนนการตรวจสอบแต่ละครั้งและกำหนดเกณฑ์ ซึ่งอาจเปลี่ยนแปลงได้ตลอดเวลา อัตราการผ่านจึงต่างกันไปตามเว็บไซต์ และไม่ใช่ทุก token ที่จะผ่าน คุณสามารถลองเปรียบเทียบอัตราการผ่านกับประเภทงานอื่นของ CAPTCHA แบบเดียวกัน หรือเปลี่ยนไปใช้ การจดจำภาพ

ใช้ได้ครั้งเดียวและมีอายุประมาณ 120 วินาที แนะนำให้ส่งภายใน 60 วินาทีหลังจากได้รับ อายุของ token กำหนดโดย Google

ไม่ถูกหัก งานที่คืน ERROR_CAPTCHA_UNSOLVABLE หรือหมดเวลาจะคืนพอยต์โดยอัตโนมัติ ดู การคิดราคาและการคืนพอยต์