ไม่ต้อง KYC — ไม่ต้องใช้บัตรประชาชน ไม่ต้องเซลฟี่ ไม่ต้องใช้เอกสาร จ่ายด้วยคริปโต: BTC, USDT, USDC, ETH, SOL, LTC
ภาษา: ไทย
รับ API key

Docs · curl · jq · PowerShell

SERP API ด้วย curl และ jq: สูตรสำเร็จบรรทัดเดียว

วิธีที่เร็วที่สุดในการดูว่า API ส่งคืนอะไรคือผ่าน terminal สูตรสำเร็จเหล่านี้พิมพ์สิ่งเดียวต่อหนึ่งรายการเท่านั้น: ลิงก์ คำถาม แหล่งที่มา หรือธุรกิจในพื้นที่ ใช้ได้ใน bash และ zsh โดยมีเวอร์ชัน PowerShell ปิดท้ายหน้า

อัปเดตล่าสุด: · 3 นาทีในการอ่าน

คำตอบสั้น

ฉันจะเรียกใช้ SERP API ด้วย curl ได้อย่างไร

รัน curl -sG "https://serpcrypto.com/api/v1/search" -H "Authorization: Bearer $KEY" --data-urlencode "q=your query" แล้ว pipe JSON ไปยัง jq ด้วย SerpCrypto การค้นหาที่สำเร็จแต่ละครั้งมีค่าใช้จ่าย 1 เครดิต เริ่มต้นที่ US$0.30/1K การค้นหา และกรณีผิดพลาดไม่มีค่าใช้จ่าย -G แปลง data flags เป็น query string เครดิตชำระด้วยคริปโต ไม่ต้อง KYC

curl flags ตัวไหนสำคัญในที่นี้

ตั้งค่า key ครั้งเดียวต่อ shell ด้วย export SERPCRYPTO_API_KEY=… ติดตั้ง jq จาก package manager ของคุณหากยังไม่มี

Flagเหตุผล
-sSilent: ไม่มี progress bar ปนกับ JSON
-Gส่งค่า -d และ --data-urlencode เป็น query string ในคำขอ GET
--data-urlencodeเข้ารหัสช่องว่าง เครื่องหมายคำพูด และตัวอักษรเน้นเสียงใน q และ location
-H "Authorization: Bearer …"API key ของคุณ เก็บไว้ใน environment variable
-w '%{http_code}'พิมพ์ HTTP status ซึ่งมีประโยชน์เมื่อการเรียกล้มเหลว

ฉันจะพิมพ์ 10 ลิงก์อันดับต้นสำหรับคำค้นหาได้อย่างไร

ขอผลลัพธ์แบบ organic แล้วให้ jq พิมพ์ตำแหน่งและลิงก์ของแต่ละรายการ คั่นด้วย tab รูปแบบ []? จะไม่พิมพ์อะไรเลยแทนที่จะล้มเหลวเมื่อไม่มีบล็อกนั้น ซึ่งทำให้สคริปต์เงียบเมื่อเจอหน้าที่ผิดปกติ

10 ลิงก์อันดับต้น
# Top 10 organic links, one per line
curl -sG "https://serpcrypto.com/api/v1/search" \
  -H "Authorization: Bearer $SERPCRYPTO_API_KEY" \
  --data-urlencode "q=kubernetes cost monitoring" -d gl=us -d hl=en \
  | jq -r '.organic_results[]? | "\(.position)\t\(.link)"'

ฉันจะแสดงรายการคำถาม People Also Ask ได้อย่างไร

อ่าน people_also_ask[].question คำถามจะเป็นไปตามภาษาที่ตั้งใน hl และเปลี่ยนตามประเทศใน gl ดังนั้นให้รันคำค้นหาเดียวกันในแต่ละตลาดที่คุณเขียนถึง ทีมคอนเทนต์วางรายการนี้ลงใน brief ได้เลย

People Also Ask
# People Also Ask questions, ready for a content brief
curl -sG "https://serpcrypto.com/api/v1/search" \
  -H "Authorization: Bearer $SERPCRYPTO_API_KEY" \
  --data-urlencode "q=how to brew cold brew" -d gl=gb -d hl=en \
  | jq -r '.people_also_ask[]?.question'

ฉันจะดูได้อย่างไรว่า AI Overview อ้างอิงแหล่งใดบ้าง

อ่าน ai_overview.references บล็อกนี้จะมีก็ต่อเมื่อ Google แสดง AI Overview สำหรับคำค้นหาและพื้นที่นั้น มิฉะนั้น recipe จะพิมพ์ข้อความที่ชัดเจน การติดตามแหล่งเหล่านี้อย่างต่อเนื่องจะแสดงว่าหน้าของคุณถูกอ้างอิงในคำตอบที่ Google สร้างขึ้นหรือไม่

แหล่งที่มาของ AI Overview
# Sources cited by the AI Overview, if the page shows one
curl -sG "https://serpcrypto.com/api/v1/search" \
  -H "Authorization: Bearer $SERPCRYPTO_API_KEY" \
  --data-urlencode "q=what is a heat pump" -d gl=us -d hl=en \
  | jq -r 'if .ai_overview then .ai_overview.references[] | "\(.index)\t\(.source)\t\(.link)" else "no AI Overview for this query" end'

ฉันจะดึง local pack และรายการ Maps ได้อย่างไร

การค้นหาเว็บด้วย location จะคืนค่า local pack ที่แสดงบนหน้าผลลัพธ์ ซึ่งมักเป็นธุรกิจไม่กี่ราย engine=google_maps จะคืนค่ารายการ Maps ที่ยาวกว่าพร้อมที่อยู่ คะแนน และจำนวนรีวิว ซึ่ง @tsv แปลงเป็นแถวสำหรับ spreadsheet ทั้งสองใช้ 1 เครดิตต่อครั้ง

Local pack แล้วตามด้วย Google Maps
# Local pack in a city, then the full Maps list for the same query
curl -sG "https://serpcrypto.com/api/v1/search" \
  -H "Authorization: Bearer $SERPCRYPTO_API_KEY" \
  --data-urlencode "q=vegan restaurant" \
  --data-urlencode "location=Toronto, Ontario, Canada" -d gl=ca -d hl=en \
  | jq -r '.local_results[]? | "\(.position)\t\(.title)\t\(.rating // "-")"'

curl -sG "https://serpcrypto.com/api/v1/search" \
  -H "Authorization: Bearer $SERPCRYPTO_API_KEY" \
  -d engine=google_maps --data-urlencode "q=vegan restaurant Toronto" -d gl=ca -d hl=en \
  | jq -r '.local_results[]? | [.title, .address, .rating, .reviews] | @tsv'

ฉันจะดู error เมื่อการเรียกล้มเหลวได้อย่างไร

เพิ่ม -w '\nHTTP %{http_code}\n' เพื่อพิมพ์ status หลัง body body ของ error เป็น JSON ขนาดเล็กที่มี code และ message หน้า errors แสดงรหัสทั้งหก คำสั่งที่สองอ่านเครดิตของคุณ ซึ่งไม่มีค่าใช้จ่าย

Status code และเครดิต
# Print the body, then the HTTP status on its own line
curl -sG "https://serpcrypto.com/api/v1/search" \
  -H "Authorization: Bearer $SERPCRYPTO_API_KEY" \
  --data-urlencode "q=test" -w '\nHTTP %{http_code}\n'

# Credits left (free call)
curl -s "https://serpcrypto.com/api/v1/credits" -H "Authorization: Bearer $SERPCRYPTO_API_KEY" | jq .

แล้ว PowerShell บน Windows ล่ะ

Invoke-RestMethod ส่งคำขอและแปลง JSON เป็น object คุณจึงไม่ต้องใช้ jq ส่งพารามิเตอร์เป็น hashtable ใน -Body สำหรับ GET request PowerShell จะ encode พารามิเตอร์เหล่านั้นลงใน query string จากนั้น Format-Table จะพิมพ์ตำแหน่ง ชื่อเรื่อง และลิงก์

PowerShell
# Windows PowerShell 5.1 or PowerShell 7
$headers = @{ Authorization = "Bearer $env:SERPCRYPTO_API_KEY" }
$query = @{ q = "kubernetes cost monitoring"; gl = "us"; hl = "en" }
$data = Invoke-RestMethod -Uri "https://serpcrypto.com/api/v1/search" -Headers $headers -Body $query -Method Get
$data.organic_results | Select-Object position, title, link | Format-Table -AutoSize

เมื่อไรควรเปลี่ยนจาก curl ไปเขียนโค้ด

ทันทีที่คุณต้องรันคำสั่งซ้ำกับรายการคำค้นหา loop ใน shell ใช้ได้กับการค้นหาสองสามสิบครั้ง แต่ retry การทำงานแบบขนาน และการจัดเก็บ ทำได้ง่ายกว่าใน Python หรือ Node.js คำขอเหมือนกัน ดังนั้น recipe ที่ทดสอบที่นี่จึงนำไปใช้ต่อได้โดยไม่ต้องแก้ไข การค้นหาแต่ละครั้งยังคงใช้ 1 เครดิต หรือ US$0.75/1K การค้นหา ในแพ็ก 10,000 การค้นหา

คำถามเกี่ยวกับ curl

ทำไมคำค้นหาของฉันจึงได้ error 400 ใน curl

มักเป็นเพราะ q ถูกส่งด้วย -d และมีอักขระที่ต้อง encode ใช้ --data-urlencode "q=…" สำหรับ query และสำหรับ location รหัสธรรมดาเช่น gl=us ใช้ -d ได้

ฉันบันทึก JSON ทั้งหมดลงไฟล์ได้ไหม

ได้: เพิ่ม -o result.json แทนการ pipe ไปยัง jq การบันทึกคำตอบดิบช่วยให้คุณ parse ซ้ำภายหลังได้โดยไม่ต้องจ่ายค่าค้นหาอีก

curl บน Windows ทำงานเหมือนกันไหม

Windows 10 และ 11 มี curl.exe มาด้วย และ flag ต่าง ๆ เหมือนกัน การใส่เครื่องหมายคำพูดแตกต่างกันใน cmd.exe ดังนั้นใช้ PowerShell กับ Invoke-RestMethod มักง่ายกว่า

เริ่มต้นที่ US$0.30/1K การค้นหา · ไม่ต้อง KYC

รับ API key