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

เอกสาร · curl 7.x และ 8.x · Linux, macOS, Windows

curl กับพร็อกซี HTTP และ SOCKS5: ตัวอย่างคัดลอกและวาง

curl เป็นวิธีทดสอบข้อมูลรับรอง เป้าหมาย และเวลาได้เร็วที่สุดก่อนที่คุณจะใช้สแครบเบอร์ ทุกคำสั่งด้านล่างทำงานได้ทันทีเมื่อคุณแทนที่ USERNAME และ PASSWORD

อัปเดตล่าสุด:

คำตอบด่วน

ฉันจะใช้พร็อกซีกับ curl อย่างไร?

ใช้ curl -x http://USERNAME:[email protected]:7777 https://api.ipify.org สำหรับพร็อกซี HTTP หรือใช้ --socks5-hostname gw.crawlrelay.com:7778 กับ -U USERNAME:PASSWORD สำหรับ SOCKS5 พร็อกซีเรซิเดนเชียล CrawlRelay ต้องระบุประเทศและเชื่อมต่อแบบติดหนึบในชื่อผู้ใช้งาน เช่น USERNAME-country-de-session-t1-ttl-10 เริ่มต้นจาก US$0.50/GB จ่ายด้วยคริปโต ไม่ต้อง KYC

ฟลัก curl ที่คุณต้องใช้

-x / --proxyProxy URL: http://host:port ใส่ข้อมูลรับรองเพื่อใช้งานได้ตามต้องการ
-U / --proxy-userข้อมูลรับรองพร็อกซีในรูปแบบ USERNAME:PASSWORD ไม่รวมอยู่ใน URL
--socks5-hostnameพร็อกซี SOCKS5 ที่แก้ไข DNS ที่ทางออก
-vแสดงการแลกเปลี่ยน CONNECT และบรรทัดสถานะของพร็อกซี
-wพิมพ์เวลาที่ใช้ ขนาดและ %{http_connect} สถานะ CONNECT ของพร็อกซี
--max-time, --connect-timeoutเวลาเต็มและเวลาจำกัดของการเชื่อมต่อ เป็นวินาที

คำสั่งพร็อกซีพื้นฐานมีอะไรบ้าง?

แต่ละคำสั่งจะแสดง IP ทางออกที่เว็บไซต์เห็น

พร็อกซี HTTP แบบหมุน แล้วตามด้วยแบบเจาะจงและแบบคงที่
# Rotating exit, any country
curl -x http://gw.crawlrelay.com:7777 -U USERNAME:PASSWORD https://api.ipify.org

# Country and city (city availability varies)
curl -x http://gw.crawlrelay.com:7777 -U USERNAME-country-us-city-chicago:PASSWORD https://api.ipify.org

# Sticky: run it twice, the IP stays the same for up to 10 minutes (it can change earlier)
curl -x http://gw.crawlrelay.com:7777 -U USERNAME-country-de-session-t1-ttl-10:PASSWORD https://api.ipify.org

# SOCKS5, DNS resolved at the exit
curl --socks5-hostname gw.crawlrelay.com:7778 -U USERNAME-country-gb:PASSWORD https://api.ipify.org

จะดีบักการเชื่อมต่อพร็อกซีด้วย curl อย่างไร?

รันด้วย -v และอ่านบรรทัดรอบ ๆ CONNECT ช่องทางที่ใช้งานได้จะแสดง HTTP/1.1 200 Connection established แล้วจึงเป็นการจับมือ TLS กับเว็บไซต์ สถานะอื่นในบรรทัดนั้นมาจากพร็อกซี เช่น 407 หมายถึงข้อมูลรับรอง 502 หรือ 504 หมายถึงทางออกหรือเป้าหมาย รูปแบบ -w ด้านล่างพิมพ์ข้อมูลเดียวกันในบรรทัดเดียว เหมาะสำหรับการวนลูปและตรวจสอบ CI

CONNECT อย่างละเอียดและรายงานเวลาบรรทัดเดียว
# Full exchange, including the proxy's answer to CONNECT
curl -v -x http://gw.crawlrelay.com:7777 -U USERNAME:PASSWORD https://example.com/ -o /dev/null

# One line: proxy CONNECT status, HTTP status, compressed bytes and timings
curl -s --compressed -o /dev/null -x http://gw.crawlrelay.com:7777 -U USERNAME-country-us:PASSWORD \
  -w 'connect=%{http_connect} http=%{http_code} bytes=%{size_download} tcp=%{time_connect}s tls=%{time_appconnect}s ttfb=%{time_starttransfer}s total=%{time_total}s\n' \
  https://example.com/

จะตรวจสอบว่าการหมุนและเซสชันทำงานได้อย่างไร?

ร้องขอ IP หลายครั้ง หากไม่มี session ID ทุกครั้งจะเป็นการเชื่อมต่อใหม่และมักแสดง IP ที่ต่างกัน หากมี session ID IP ควรคงที่จนกว่า TTL จะหมด แม้อาจเปลี่ยนก่อนหน้านั้นได้

การหมุน vs คงที่ในลูป shell
echo "rotating:"
for i in 1 2 3 4 5; do
  curl -s -x http://gw.crawlrelay.com:7777 -U USERNAME-country-us:PASSWORD https://api.ipify.org; echo
done

echo "sticky:"
for i in 1 2 3 4 5; do
  curl -s -x http://gw.crawlrelay.com:7777 -U USERNAME-country-us-session-loop1-ttl-5:PASSWORD https://api.ipify.org; echo
done

จะใช้ curl กับพร็อกซีบน Windows ยังไง?

เรียก curl.exe ไม่ใช่ curl ใน Windows PowerShell 5.1 curl เป็นนามแฝงของ Invoke-WebRequest ซึ่งไม่รองรับ -x หรือ -U Windows 10 และ 11 ติดตั้ง curl ของแท้เป็น curl.exe ใน PowerShell ให้ใส่เครื่องหมายคำพูดกับอาร์กิวเมนต์ที่มีตัวอักษรพิเศษ และเขียน $ เป็นตัวอักษรในรหัสผ่านภายในเครื่องหมายคำพูดเดี่ยว

PowerShell
curl.exe -x http://gw.crawlrelay.com:7777 -U 'USERNAME-country-fr:PASSWORD' https://api.ipify.org

จะตั้งพร็อกซีเพียงครั้งเดียวสำหรับทุกคำสั่งอย่างไร?

curl อ่านตัวแปรสภาพแวดล้อม https_proxy และ http_proxy และเครื่องมืออื่น ๆ ก็อ่านด้วย ตั้งค่าพวกนี้สำหรับเซสชัน shell และใช้ NO_PROXY สำหรับโฮสต์ที่ไม่ต้องผ่านพร็อกซี เช่น API ของคุณเอง หลีกเลี่ยงการใส่รหัสผ่านในตัวแปรที่ส่งต่อไปยังทุกโปรเซสลูกบนเครื่องที่ใช้ร่วมกัน

ตัวแปรสภาพแวดล้อม (bash, zsh)
export https_proxy="http://USERNAME-country-us:[email protected]:7777"
export http_proxy="$https_proxy"
export NO_PROXY="localhost,127.0.0.1,.internal.example"

curl https://api.ipify.org   # now uses the proxy
unset https_proxy http_proxy # back to direct

คำถามเกี่ยวกับ curl และพร็อกซี

ต่างกันอย่างไรระหว่าง --socks5 กับ --socks5-hostname?

ด้วย --socks5 curl จะแก้ไขชื่อโฮสต์บนเครื่องของคุณเองและส่ง IP ไปยังพร็อกซี ด้วย --socks5-hostname curl ส่งชื่อโฮสต์และพร็อกซีจะเป็นฝ่ายแก้ไขชื่อ ใช้ --socks5-hostname สำหรับการสแครปเพื่อให้คำตอบ DNS ตรงกับประเทศทางออก และตัวแก้ไขชื่อเครื่องคุณจะไม่เห็นโดเมนที่คุณดึงข้อมูล

ทำไม curl ถึงบอกว่า 'CONNECT tunnel failed, response 407'?

พร็อกซีปฏิเสธข้อมูลรับรอง หรือไม่ได้รับเลย ตรวจสอบชื่อผู้ใช้และรหัสผ่าน และเข้ารหัส URL ตัวอักษรพิเศษถ้าอยู่ใน URL -x หรือส่งผ่าน -U แทน หน้า 407 อธิบายสาเหตุอื่น ๆ

จะดูจำนวนไบต์ที่หน้าเว็บใช้ผ่านพร็อกซีอย่างไร?

เพิ่ม --compressed -o /dev/null -w '%{size_download}\n' --compressed ทำให้ curl ขอ gzip หรือ brotli เหมือนกับที่สแครปเปอร์ของคุณใช้ และ %{size_download} จากนั้นนับจำนวนไบต์ที่บีบอัดที่ส่งผ่านเครือข่าย ถ้าไม่ใส่เซิร์ฟเวอร์จะส่งหน้าเว็บแบบไม่บีบอัดและตัวเลขจะสูงกว่าหลายเท่า ทดสอบกับหน้าจริงหลายหน้าเพื่อประมาณการปริมาณข้อมูลต่อ 1,000 หน้า

curl ใช้ HTTP/2 หรือ HTTP/3 ผ่านพร็อกซีได้ไหม?

HTTP/2 ใช้งานได้ในช่องทาง CONNECT เมื่อเว็บไซต์รองรับ เพราะช่องทางนี้ส่ง TLS แบบ end-to-end HTTP/3 ใช้ UDP ซึ่งช่องทาง CONNECT ผ่านพร็อกซี HTTP ไม่รองรับ ดังนั้นควรใช้ HTTP/2 หรือ HTTP/1.1 ผ่านเกตเวย์แทน

ทดสอบเป้าหมายของคุณจากบรรทัดคำสั่ง

US$1.50 สำหรับ 1 GB เพียงพอสำหรับทดสอบ curl เป็นพันครั้ง

จาก US$0.50/GB · ไม่ต้อง KYC

เริ่มต้นเลย