API से Kasada हेडर प्राप्त करें
www.ticketmaster.com पर सटीक HTTPS URL के लिए KasadaTask का अनुरोध करें, फिर लौटाए गए हेडर अपने लक्ष्य अनुरोध में इस्तेमाल करें। स्टैंडअलोन Kasada फ़िलहाल इसी होस्ट को सपोर्ट करता है।
इस पेज पर
हेडर का अनुरोध करें
आधिकारिक SDK के साथ Python 3.10+ या Node.js 22+ इस्तेमाल करें। SDK को आधिकारिक डाउनलोड से इंस्टॉल करें।
SOLVETHREE_API_KEY को अपनी वर्कस्पेस API कुंजी और SOLVETHREE_PROXY को अपने प्रॉक्सी URL पर सेट करें। इसे सर्वर पर चलाएँ ताकि API कुंजी निजी रहे। url को समर्थित होस्ट पर इच्छित HTTPS URL में बदलें।
import os
from uuid import uuid4
from solvethree import Solvethree
client = Solvethree(os.environ["SOLVETHREE_API_KEY"])
request = {
'type': 'KasadaTask',
'url': 'https://www.ticketmaster.com/',
"proxy": os.environ["SOLVETHREE_PROXY"],
"requestId": str(uuid4()),
}
result = client.solve(request, timeout=180)
headers = result["solution"]["headers"]
print("Ready task:", result["id"])import { randomUUID } from 'node:crypto';
import { Solvethree } from '@solvethree/sdk';
const client = new Solvethree({ apiKey: process.env.SOLVETHREE_API_KEY });
const request = {
type: 'KasadaTask',
url: 'https://www.ticketmaster.com/',
proxy: process.env.SOLVETHREE_PROXY,
requestId: randomUUID(),
};
const result = await client.solve(request, { timeoutMs: 180_000 });
const headers = result.solution.headers;
console.log('Ready task:', result.id);दोनों उदाहरण solve को कॉल करते हैं, जो एक टास्क बनाता है और उसके तैयार होने तक पोल करता है या त्रुटि उठाता है। अगला सेक्शन लौटाए गए हेडर लक्ष्य पर भेजता है।
टास्क में type, url, एक proxy, और वैकल्पिक requestId दिया जाता है। कस्टम ब्राउज़र पहचान फ़ील्ड न जोड़ें: समाधान में लौटाई गई पहचान इस्तेमाल करें।
लौटाए गए हेडर लक्ष्य पर भेजें
{
"id": "example-kasada",
"status": "ready",
"solution": {
"headers": {
"x-kpsdk-ct": "EXAMPLE_HEADER_VALUE",
"x-kpsdk-cd": "EXAMPLE_HEADER_VALUE"
},
"userAgent": "EXAMPLE_USER_AGENT",
"secChUa": "EXAMPLE_CLIENT_HINTS"
}
}पूरा solution.headers ऑब्जेक्ट कॉपी करें। परिणाम से User-Agent और sec-ch-ua सेट करें, और सॉल्व में इस्तेमाल हुई उसी प्रॉक्सी का इस्तेमाल करें:
# Continue after the Kasada solve. Install requests separately: pip install requests.
import requests
solution = result["solution"]
headers = {name: value for name, value in solution["headers"].items()
if name.lower() not in {"user-agent", "sec-ch-ua"}}
headers.update({"User-Agent": solution["userAgent"], "sec-ch-ua": solution["secChUa"]})
response = requests.get(
request["url"], headers=headers,
proxies={"http": request["proxy"], "https": request["proxy"]},
timeout=30, allow_redirects=False,
)
print("Target HTTP status:", response.status_code)// Continue after the Kasada solve. Install undici separately: npm install undici@7.
import { fetch, ProxyAgent } from 'undici';
const targetHeaders = new Headers(result.solution.headers);
targetHeaders.set('user-agent', result.solution.userAgent);
targetHeaders.set('sec-ch-ua', result.solution.secChUa);
const dispatcher = new ProxyAgent(request.proxy);
try {
const response = await fetch(request.url, {
dispatcher, headers: targetHeaders, redirect: 'manual',
signal: AbortSignal.timeout(30_000),
});
console.log('Target HTTP status:', response.status);
await response.arrayBuffer();
} finally {
await dispatcher.close();
}आगे के इन कोड उदाहरणों के लिए Python में requests या Node.js में undici चाहिए। ये टास्क वाला सटीक URL भेजते हैं और टकराव पैदा करने वाले ब्राउज़र हेडर बदल देते हैं। लक्ष्य के लिए आवश्यक अन्य एप्लिकेशन हेडर या सेशन डेटा बनाए रखें।
यदि आप proxyCandidates इस्तेमाल करते हैं, तो लक्ष्य अनुरोध भेजने से पहले successful_proxy या successfulProxy से सफल प्रॉक्सी चुनें। एकल-प्रॉक्सी वाले उदाहरण Python में request["proxy"] या Node.js में request.proxy दोबारा इस्तेमाल करते हैं।
सबमिशन के बाद लक्ष्य का रिस्पॉन्स जाँचें। 403 आने पर, कौन-सा अनुरोध अस्वीकार हो रहा है यह जाँचने के लिए Ticketmaster समस्या निवारण गाइड इस्तेमाल करें।
प्रतीक्षा और त्रुटियाँ
solve() आपके लिए पोलिंग संभालता है। टास्क ID तुरंत पाने के लिए शून्य प्रतीक्षा के साथ create_task या createTask इस्तेमाल करें, फिर उस ID को तब तक प्राप्त करते रहें जब तक उसकी स्थिति ready या failed न हो जाए।
सीधे API इस्तेमाल करने पर, Kasada टास्क बनाते समय डिफ़ॉल्ट रूप से 75 सेकंड तक प्रतीक्षा होती है। अपना HTTP टाइमआउट इस प्रतीक्षा से अधिक रखें, या ?waitMs=0 इस्तेमाल करके पोल करें। अनुरोधों के क्रम के लिए टास्क पोलिंग और टाइमआउट देखें।
टास्क विफल होने पर पोलिंग रोकें और errorCode तथा error जाँचें। विफल सॉल्व की राशि वापस कर दी जाती है। यदि टास्क बनाते समय टाइमआउट हो जाए, तो उसे पुनः प्राप्त करते समय वही requestId और इनपुट रखें; नई ID एक और शुल्क-योग्य सॉल्व बना सकती है।
स्रोत और API संदर्भ
अपना पहला टास्क चलाएँ।
$5 वर्कस्पेस क्रेडिट के साथ शुरुआत करें।