Menu
프록시를 사용하여 Amazon WAF 우회하기
대상 페이지에서 이 캡차가 사용되는 방식에는 두 가지 옵션이 있습니다:
1. 방화벽 뒤에 있는 웹사이트를 방문할 때 Amazon이 자동으로 표시하는 봇 필터링 페이지입니다. 이 페이지 소스 코드에서 window.gokuProps 매개 변수를 찾을 수 있으므로 "gokuProps"이라고 부릅니다.
2. 사용자의 동작으로 실행되는 독립형 캡차 위젯입니다. 우리는 이것을 "Widget"라고 부릅니다.
캡차 유형을 직접 확인하고 아래의 스위처를 사용하여 다른 버전의 문서와 예시를 표시하세요.
gokuProps
Widget
이 유형의 작업을 사용하여 Amazon WAF 쿠키 토큰을 획득하세요. 임시 iv 및 context 토큰과 영구 key 사이트 키를 가져와서 API로 전송하기만 하면 됩니다. 작업의 결과는 amazon-waf-token라는 이름의 쿠키 값으로 HTTP 요청에 사용할 수 있는 토큰입니다.
이 유형의 작업에는 프록시가 필요합니다. 프록시를 사용하면 작업 속도가 느려지므로 프록시를 사용하지 않는 작업(AmazonTaskProxyless)이 실패하는 경우에만 사용해 주세요. 프록시로 캡차를 해결하려면 프록시의 품질이 매우 높아야 하므로 자체 VPS 서버에 직접 설치해야 하며 구매한 프록시 서비스는 절대 사용하지 마세요.

CAPTCHA 예제
gokuProps
Widget
Python
Node.js
Go
PHP
Java
Kotlin
C#
C++
Rust
Ruby
bash
Python에서 Amazon proxy-on WAF gokuProps을(를) 해결하는 방법
#pip3 install anticaptchaofficial
from anticaptchaofficial.amazonproxyon import *
solver = amazonProxon()
solver.set_verbose(1)
solver.set_key("YOUR_API_KEY")
solver.set_website_url("https://website.com")
solver.set_website_key("key_value_from_window.gokuProps_object")
solver.set_iv("iv_value_from_window.gokuProps_object")
solver.set_context("context_value_from_window.gokuProps_object")
solver.set_proxy_address("PROXY_ADDRESS")
solver.set_proxy_port(1234)
solver.set_proxy_login("proxylogin")
solver.set_proxy_password("proxypassword")
# Optional script URLs
solver.set_captcha_script("https://e9b10f157f38.9a96e8b4.us-gov-west-1.captcha.awswaf.com/e9b10f157f38/76cbcde1c834/2a564e323e7b/captcha.js")
solver.set_challenge_script("https://e9b10f157f38.9a96e8b4.us-gov-west-1.token.awswaf.com/e9b10f157f38/76cbcde1c834/2a564e323e7b/challenge.js")
# Specify softId to earn 10% commission with your app.
# Get your softId here: https://anti-captcha.com/clients/tools/devcenter
solver.set_soft_id(0)
token = solver.solve_and_return_solution()
if token != 0:
print("token: "+token)
# user-agent in case you need it:
print("user-agent: "+solver.get_user_agent())
else:
print("task finished with error "+solver.error_code)Node.js에서 Amazon proxy-on WAF gokuProps을(를) 해결하는 방법
//npm install @antiadmin/anticaptchaofficial
//https://github.com/anti-captcha/anticaptcha-npm
const ac = require("@antiadmin/anticaptchaofficial");
ac.setAPIKey('YOUR_API_KEY_HERE');
//Specify softId to earn 10% commission with your app.
//Get your softId here: https://anti-captcha.com/clients/tools/devcenter
ac.setSoftId(0);
ac.solveAmazonProxyOn('http://DOMAIN.COM',
'key_value_from_window.gokuProps_object',
'http', //http, socks4, socks5
'PROXY_ADDRESS',
'PROXY_PORT',
'PROXY_LOGIN',
'PROXY_PASSWORD',
'iv_value_from_window.gokuProps_object',
'context_value_from_window.gokuProps_object',
'https://e9b10f157f38.9a96e8b4.us-gov-west-1.captcha.awswaf.com/e9b10f157f38/76cbcde1c834/2a564e323e7b/captcha.js', //optional
'https://e9b10f157f38.9a96e8b4.us-gov-west-1.token.awswaf.com/e9b10f157f38/76cbcde1c834/2a564e323e7b/challenge.js' //optional
).then(token => {
console.log('token: '+token);
})
.catch(error => console.log('test received error '+error));
// in case you need it
console.log("worker's user-agent:");
console.log(ac.getUserAgent());`;
Go에서 Amazon proxy-on WAF gokuProps을(를) 해결하는 방법
// Install with:
// go get github.com/anti-captcha/anticaptcha-go
package main
import (
"fmt"
"github.com/anti-captcha/anticaptcha-go"
"log"
)
func main() {
// Create API client and set the API Key
ac := anticaptcha.NewClient("API_KEY_HERE")
// set to 'false' to turn off debug output
ac.IsVerbose = true
// Specify softId to earn 10% commission with your app.
// Get your softId here: https://anti-captcha.com/clients/tools/devcenter
//ac.SoftId = 1187
// Make sure the API key funds balance is positive
balance, err := ac.GetBalance()
if err != nil {
log.Fatal(err)
// Exit program to make sure you don't DDoS API with requests, while having empty balance
return
}
fmt.Println("Balance:", balance)
// Get Amazon WAF token without proxy
solution, err := ac.SolveAmazonProxyOn(anticaptcha.AmazonCaptcha{
WebsiteURL: "https://www.website.com/",
WebsiteKey: "key_value_from_window.gokuProps_object",
Iv: "iv_value_from_window.gokuProps_object",
Context: "context_value_from_window.gokuProps_object",
//optional scripts:
//CaptchaScript: "https://e9b10f157f38.9a96e8b4.us-gov-west-1.captcha.awswaf.com/e9b10f157f38/76cbcde1c834/2a564e323e7b/captcha.js",
//ChallengeScript: "https://e9b10f157f38.9a96e8b4.us-gov-west-1.token.awswaf.com/e9b10f157f38/76cbcde1c834/2a564e323e7b/challenge.js",
Proxy: &anticaptcha.Proxy{
Type: "http",
IPAddress: "1.2.3.4",
Port: 1234,
Login: "login-optional",
Password: "pass-optional",
},
})
if err != nil {
log.Fatal(err)
}
fmt.Println("amazon-waf-token:", solution)
// In case you need the worker's user-agent
fmt.Println("User-Agent:", ac.WorkersUserAgent)
}PHP에서 Amazon proxy-on WAF gokuProps을(를) 해결하는 방법
//git clone https://github.com/anti-captcha/anticaptcha-php.git
include("anticaptcha.php");
include("amazon.php");
$api = new Amazon();
$api->setVerboseMode(true);
//your anti-captcha.com account key
$api->setKey("YOUR_API_KEY_HERE");
//target website address
$api->setWebsiteURL("http://website.com/");
//key value from window.gokuProps object (see html source)
$api->setWebsiteKey("key_value_from_window.gokuProps_object");
//iv and context values from window.gokuProps object (see html source)
$api->setIv("iv_value_from_window.gokuProps_object")
$api->setContext("context_value_from_window.gokuProps_object");
//optional scripts
$api->setCaptchaScript("https://e9b10f157f38.9a96e8b4.us-gov-west-1.captcha.awswaf.com/e9b10f157f38/76cbcde1c834/2a564e323e7b/captcha.js");
$api->setChallengeScript("https://e9b10f157f38.9a96e8b4.us-gov-west-1.token.awswaf.com/e9b10f157f38/76cbcde1c834/2a564e323e7b/challenge.js");
// proxy access parameters
// DO NOT USE PURCHASED/RENTED PROXIES ON PROXY SERVICES!!!
// THEY WILL NOT WORK!
// USE ONLY PROXIES YOU INSTALL YOURSELF ON YOUR OWN SERVER OR FAST VPS
// USE PROPER PROXY SOFTWARE LIKE SQUID !
// INSTALLATION INSTRUCTIONS:
// https://anti-captcha.com/apidoc/articles/how-to-install-squid
$api->setProxyType("http");
$api->setProxyAddress("8.8.8.8");
$api->setProxyPort(1234);
//optional login and password
$api->setProxyLogin("login");
$api->setProxyPassword("password");
//Specify softId to earn 10% commission with your app.
//Get your softId here: https://anti-captcha.com/clients/tools/devcenter
$api->setSoftId(0);
//create task in API
if (!$api->createTask()) {
$api->debout("API v2 send failed - ".$api->getErrorMessage(), "red");
return false;
}
$taskId = $api->getTaskId();
//wait in a loop for max 300 seconds till task is solved
if (!$api->waitForResult(300)) {
echo "could not solve captcha\n";
echo $api->getErrorMessage()."\n";
} else {
$token = $api->getTaskSolution();
echo "\n";
echo "your aws-waf-token: $token\n\n";
echo "worker's user-agent in case you need it:\n";
echo $api->getWorkersUserAgent()."\n";
}Java에서 Amazon proxy-on WAF gokuProps을(를) 해결하는 방법
// GitHub: https://github.com/anti-captcha/anticaptcha-java
//
// Maven, add to pom.xml:
// <dependency>
// <groupId>com.anti-captcha</groupId>
// <artifactId>anticaptcha</artifactId>
// <version>1.0.0</version>
// </dependency>
//
// Gradle, add to build.gradle:
// implementation "com.anti-captcha:anticaptcha:1.0.0"
import com.anti_captcha.AnticaptchaBase;
import com.anti_captcha.Api.Amazon;
import com.anti_captcha.Helper.DebugHelper;
public class Main {
public static void main(String[] args) throws InterruptedException {
// Set to false to turn the debug output off
DebugHelper.setVerboseMode(true);
Amazon api = new Amazon();
api.setClientKey("YOUR_API_KEY_HERE");
// Specify softId to earn 10% commission with your app.
// Get your softId here: https://anti-captcha.com/clients/tools/devcenter
api.setSoftId(0);
api.setWebsiteUrl("http://website.com/");
api.setWebsiteKey("key_value_from_window.gokuProps_object");
api.setIv("iv_value_from_window.gokuProps_object");
api.setContext("context_value_from_window.gokuProps_object");
// Optional scripts
api.setCaptchaScript("https://e9b10f157f38.9a96e8b4.us-gov-west-1.captcha.awswaf.com/e9b10f157f38/76cbcde1c834/2a564e323e7b/captcha.js");
api.setChallengeScript("https://e9b10f157f38.9a96e8b4.us-gov-west-1.token.awswaf.com/e9b10f157f38/76cbcde1c834/2a564e323e7b/challenge.js");
// Do not use purchased/rented proxies from proxy services,
// use proper proxy software like Squid
api.setProxyType(AnticaptchaBase.ProxyTypeOption.HTTP);
api.setProxyAddress("xxx.xx.xx.xx");
api.setProxyPort(1234);
api.setProxyLogin("login");
api.setProxyPassword("password");
// Make sure the API key funds balance is positive
Double balance = api.getBalance();
if (balance == null || balance <= 0) {
// Stop here to make sure you don't DDoS the API while having empty balance
DebugHelper.out("Balance error: " + api.getErrorMessage(), DebugHelper.Type.ERROR);
return;
}
DebugHelper.out("Balance: " + balance, DebugHelper.Type.SUCCESS);
if (!api.createTask()) {
DebugHelper.out("API v2 send failed. " + api.getErrorMessage(), DebugHelper.Type.ERROR);
} else if (!api.waitForResult()) {
DebugHelper.out("Could not solve the captcha.", DebugHelper.Type.ERROR);
} else {
DebugHelper.out("Captcha token: " + api.getTaskSolution().getToken(), DebugHelper.Type.SUCCESS);
}
}
}Kotlin에서 Amazon proxy-on WAF gokuProps을(를) 해결하는 방법
// GitHub: https://github.com/anti-captcha/anticaptcha-kotlin
//
// Gradle, add to build.gradle.kts:
// implementation("com.anti-captcha:anticaptcha-kotlin:1.0.0")
import com.anticaptcha.Amazon
import com.anticaptcha.AnticaptchaClient
import com.anticaptcha.AnticaptchaException
import com.anticaptcha.ApiException
import com.anticaptcha.Proxy
import com.anticaptcha.ProxyType
import kotlinx.coroutines.runBlocking
fun main(): Unit = runBlocking {
// Create the API client and set the API key
val ac = AnticaptchaClient(
apiKey = "YOUR_API_KEY_HERE",
// Specify softId to earn 10% commission with your app.
// Get your softId here: https://anti-captcha.com/clients/tools/devcenter
softId = 0,
// Set to false to turn the debug output off
verbose = true,
)
try {
// Make sure the API key funds balance is positive
val balance = ac.getBalance()
if (balance <= 0) {
// Stop here to make sure you don't DDoS the API while having empty balance
System.err.println("Empty balance")
return@runBlocking
}
println("Balance: $balance")
val solution = ac.solveAmazonProxyOn(
Amazon(
websiteUrl = "http://website.com/",
websiteKey = "key_value_from_window.gokuProps_object",
iv = "iv_value_from_window.gokuProps_object",
context = "context_value_from_window.gokuProps_object",
// Optional scripts
captchaScript = "https://e9b10f157f38.9a96e8b4.us-gov-west-1.captcha.awswaf.com/e9b10f157f38/76cbcde1c834/2a564e323e7b/captcha.js",
challengeScript = "https://e9b10f157f38.9a96e8b4.us-gov-west-1.token.awswaf.com/e9b10f157f38/76cbcde1c834/2a564e323e7b/challenge.js",
),
// Do not use purchased/rented proxies from proxy services,
// use proper proxy software like Squid
Proxy(
address = "xxx.xx.xx.xx",
port = 1234,
type = ProxyType.HTTP,
login = "login",
password = "password",
),
)
println("Captcha token: ${solution.token}")
} catch (error: ApiException) {
// https://anti-captcha.com/apidoc/errors
System.err.println("API error: ${error.errorCode} ${error.description}")
} catch (error: AnticaptchaException) {
System.err.println("Failed: ${error.message}")
}
}C#에서 Amazon proxy-on WAF gokuProps을(를) 해결하는 방법
// GitHub: https://github.com/anti-captcha/anticaptcha-csharp.git
// install: dotnet add package AntiCaptchaOfficial
// or, in the Package Manager Console:
// Install-Package AntiCaptchaOfficial
using System;
using AntiCaptcha.Api;
using AntiCaptcha.Helper;
class Program
{
static void Main()
{
// Set to 'false' to turn off debug output
DebugHelper.VerboseMode = true;
var api = new Amazon
{
ClientKey = "YOUR_API_KEY_HERE",
WebsiteUrl = new Uri("http://website.com/"),
WebsiteKey = "key_value_from_window.gokuProps_object",
Iv = "iv_value_from_window.gokuProps_object",
Context = "context_value_from_window.gokuProps_object",
// Optional scripts
CaptchaScript = "https://e9b10f157f38.9a96e8b4.us-gov-west-1.captcha.awswaf.com/e9b10f157f38/76cbcde1c834/2a564e323e7b/captcha.js",
ChallengeScript = "https://e9b10f157f38.9a96e8b4.us-gov-west-1.token.awswaf.com/e9b10f157f38/76cbcde1c834/2a564e323e7b/challenge.js",
// Proxy type is Http by default, set ProxyType for socks4/socks5
ProxyAddress = "xxx.xx.xx.xx",
ProxyPort = 1234,
ProxyLogin = "login",
ProxyPassword = "password",
// Specify softId to earn 10% commission with your app.
// Get your softId here:
// https://anti-captcha.com/clients/tools/devcenter
SoftId = 0
};
// Make sure the API key funds balance is positive
var balance = api.GetBalance();
if (balance == null || balance <= 0)
{
// Exit the program to make sure you don't DDoS the API with requests while having empty balance
Console.WriteLine("Balance error: " + api.ErrorMessage);
return;
}
Console.WriteLine("Balance: " + balance);
var solution = api.Solve();
Console.WriteLine("Captcha token: " + solution?.Token);
}
}C++에서 Amazon proxy-on WAF gokuProps을(를) 해결하는 방법
// GitHub: https://github.com/anti-captcha/anticaptcha-cplus.git
// Add it to your CMake project:
// include(FetchContent)
// FetchContent_Declare(anticaptcha
// GIT_REPOSITORY https://github.com/anti-captcha/anticaptcha-cplus.git
// GIT_TAG v1.0.0)
// FetchContent_MakeAvailable(anticaptcha)
// target_link_libraries(your_app PRIVATE anticaptcha::anticaptcha)
#include <iostream>
#include <anticaptcha/anticaptcha.hpp>
int main() {
// Create the API client and set the API key
anticaptcha::Client ac("YOUR_API_KEY_HERE");
// Debug output is on by default, turn it off with:
// ac.shut_up();
// Specify softId to earn 10% commission with your app.
// Get your softId here: https://anti-captcha.com/clients/tools/devcenter
ac.set_soft_id(0);
try {
// Make sure the API key funds balance is positive
const double balance = ac.get_balance();
if (balance <= 0) {
// Stop here to make sure you don't DDoS the API while having empty balance
std::cerr << "Empty balance" << std::endl;
return 1;
}
std::cout << "Balance: " << balance << std::endl;
anticaptcha::Amazon params;
params.website_url = "http://website.com/";
params.website_key = "key_value_from_window.gokuProps_object";
params.iv = "iv_value_from_window.gokuProps_object";
params.context = "context_value_from_window.gokuProps_object";
// Optional scripts
params.captcha_script = "https://e9b10f157f38.9a96e8b4.us-gov-west-1.captcha.awswaf.com/e9b10f157f38/76cbcde1c834/2a564e323e7b/captcha.js";
params.challenge_script = "https://e9b10f157f38.9a96e8b4.us-gov-west-1.token.awswaf.com/e9b10f157f38/76cbcde1c834/2a564e323e7b/challenge.js";
// Do not use purchased/rented proxies from proxy services,
// use proper proxy software like Squid
params.proxy.type = "http"; // "http", "socks4" or "socks5"
params.proxy.address = "xxx.xx.xx.xx";
params.proxy.port = 1234;
params.proxy.login = "login";
params.proxy.password = "password";
const anticaptcha::Solution solution = ac.solve_amazon_proxy_on(params);
std::cout << "Captcha token: " << solution.token() << std::endl;
} catch (const anticaptcha::ApiError& error) {
// https://anti-captcha.com/apidoc/errors
std::cerr << "API error: " << error.error_code() << " " << error.description() << std::endl;
return 1;
} catch (const anticaptcha::Error& error) {
std::cerr << "Failed: " << error.what() << std::endl;
return 1;
}
return 0;
}Rust에서 Amazon proxy-on WAF gokuProps을(를) 해결하는 방법
// GitHub: https://github.com/anti-captcha/anticaptcha-rust
// Install with:
// cargo add anticaptchaofficial
// or add it to Cargo.toml:
// [dependencies]
// anticaptchaofficial = "1"
use anticaptcha::{Amazon, Client, Proxy, ProxyType};
#[tokio::main]
async fn main() -> anticaptcha::Result<()> {
// Create the API client and set the API key
let ac = Client::new("YOUR_API_KEY_HERE")
// Specify softId to earn 10% commission with your app.
// Get your softId here: https://anti-captcha.com/clients/tools/devcenter
.with_soft_id(0);
// .quiet() turns the debug output off
// Make sure the API key funds balance is positive
let balance = ac.get_balance().await?;
if balance <= 0.0 {
// Stop here to make sure you don't DDoS the API while having empty balance
eprintln!("Empty balance");
return Ok(());
}
println!("Balance: {balance}");
let solution = ac
.solve_amazon_proxy_on(&Amazon {
website_url: "http://website.com/".into(),
website_key: "key_value_from_window.gokuProps_object".into(),
iv: "iv_value_from_window.gokuProps_object".into(),
context: "context_value_from_window.gokuProps_object".into(),
// Optional scripts
captcha_script: "https://e9b10f157f38.9a96e8b4.us-gov-west-1.captcha.awswaf.com/e9b10f157f38/76cbcde1c834/2a564e323e7b/captcha.js"
.into(),
challenge_script: "https://e9b10f157f38.9a96e8b4.us-gov-west-1.token.awswaf.com/e9b10f157f38/76cbcde1c834/2a564e323e7b/challenge.js"
.into(),
// Do not use purchased/rented proxies from proxy services,
// use proper proxy software like Squid
proxy: Proxy::new(ProxyType::Http, "xxx.xx.xx.xx", 1234)
.with_auth("login", "password"),
..Default::default()
})
.await?;
println!("Captcha token: {}", solution.token());
Ok(())
}Ruby에서 Amazon proxy-on WAF gokuProps을(를) 해결하는 방법
# GitHub: https://github.com/anti-captcha/anticaptcha-ruby
# Install with:
# gem install anticaptchaofficial
# or add it to your Gemfile:
# gem "anticaptchaofficial"
require "anticaptcha"
# Create the API client and set the API key
ac = Anticaptcha.new("YOUR_API_KEY_HERE")
# Specify softId to earn 10% commission with your app.
# Get your softId here: https://anti-captcha.com/clients/tools/devcenter
ac.soft_id = 0
# Set to false to turn the debug output off
ac.verbose = true
begin
# Make sure the API key funds balance is positive
balance = ac.balance
# Stop here to make sure you don't DDoS the API while having empty balance
abort "Empty balance" if balance <= 0
puts "Balance: #{balance}"
solution = ac.solve_amazon_proxy_on(
website_url: "http://website.com/",
website_key: "key_value_from_window.gokuProps_object",
iv: "iv_value_from_window.gokuProps_object",
context: "context_value_from_window.gokuProps_object",
captcha_script: "https://e9b10f157f38.9a96e8b4.us-gov-west-1.captcha.awswaf.com/e9b10f157f38/76cbcde1c834/2a564e323e7b/captcha.js",
challenge_script: "https://e9b10f157f38.9a96e8b4.us-gov-west-1.token.awswaf.com/e9b10f157f38/76cbcde1c834/2a564e323e7b/challenge.js",
# Do not use purchased/rented proxies from proxy services,
# use proper proxy software like Squid
proxy: { type: "http", address: "xxx.xx.xx.xx", port: 1234,
login: "login", password: "password" }
)
puts "Captcha token: #{solution.token}"
rescue Anticaptcha::ApiError => e
# https://anti-captcha.com/apidoc/errors
warn "API error: #{e.error_code} #{e.description}"
rescue Anticaptcha::Error => e
warn "Failed: #{e.message}"
endbash에서 Amazon proxy-on WAF gokuProps을(를) 해결하는 방법
curl -i -H "Accept: application/json" \
-H "Content-Type: application/json" \
-X POST -d '{
"clientKey":"YOUR_API_KEY_HERE",
"task":
{
"type":"AmazonTask",
"websiteURL":"https://website.com/",
"websiteKey":"key_value_from_window.gokuProps_object",
"iv":"iv_value_from_window.gokuProps_object",
"context":"context_value_from_window.gokuProps_object",
"captchaScript": "https://e9b10f157f38.9a96e8b4.us-gov-west-1.captcha.awswaf.com/e9b10f157f38/76cbcde1c834/2a564e323e7b/captcha.js",
"challengeScript": "https://e9b10f157f38.9a96e8b4.us-gov-west-1.token.awswaf.com/e9b10f157f38/76cbcde1c834/2a564e323e7b/challenge.js",
"proxyType":"http",
"proxyAddress":"8.8.8.8",
"proxyPort":8080,
"proxyLogin":"proxyLoginHere",
"proxyPassword":"proxyPasswordHere"
},
"softId": 0
}' https://api.anti-captcha.com/createTaskgokuProps
Widget
작업 객체
| 속성 | 유형 | 필수 | 목적 |
|---|---|---|---|
| type | 문자열 | 예 | AmazonTask |
| websiteURL | 문자열 | 예 | 대상 웹페이지 주소. 회원 영역을 포함하여 웹사이트의 어느 곳에나 위치할 수 있습니다. 당사의 작업자는 해당 페이지를 탐색하지는 않으나, 대신에 해당 페이지의 방문 시뮬레이션합니다. |
| websiteKey | 문자열 | 예 | WAF 페이지 소스 코드의 window.gokuProps 개체에서 key의 값입니다. |
| iv | 문자열 | 예 | WAF 페이지 소스 코드의 window.gokuProps 개체에서 iv의 값입니다. |
| context | 문자열 | 예 | WAF 페이지 소스 코드의 window.gokuProps 개체에서 context의 값입니다. |
| captchaScript | 문자열 | 아니요 | 캡차.js로 연결되는 선택적 URL |
| challengeScript | 문자열 | 아니요 | challenge.js로 연결되는 선택적 URL |
| proxyType | 문자열 | 예 | 프록시 유형 http - 일반적인 http/https 프록시 socks4 - socks4 프록시 socks5 - socks5 프록시 |
| proxyAddress | 문자열 | 예 | 프록시 IP 주소 ipv4/ipv6. 로컬 네트워크의 호스트명이나 IP 주소는 필요 없습니다. |
| proxyPort | 정수 | 예 | 프록시 포트 |
| proxyLogin | 문자열 | 예 | 인증이 필요한 프록시 로그인 (기본) |
| proxyPassword | 문자열 | 예 | 프록시 비밀번호 |
작업 솔루션 객체
| 속성 | 유형 | 목적 |
|---|---|---|
| token | 문자열 | 이 토큰을 대상 웹 페이지에 대한 요청에 "aws-waf-token"이라는 이름의 쿠키 값으로 사용합니다. |
| userAgent | 문자열 | 작업자 브라우저의 사용자 에이전트. 응답 토큰을 제출할 때 사용합니다. |
응답 예제
{
"errorId":0,
"status":"ready",
"solution": {
"token": "fe4c2ff3-6ed6-40fa-95c9-4c738a7dad49:FgoAe0ZLBmYBAAAA:LK0S/m1nGbfjDk/9i6tMmiUWGecMfyjvuAx9lY6ZhaBUmjrILEqW00UAsEliykPjwebdzn9J3...",
"userAgent":"Mozilla\5.0 (Windows NT 10.0; Win64; x64) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/145.0.0.0 Safari\/537.36"
},
"cost":"0.002000",
"ip":"46.98.54.221",
"createTime":1472205564,
"endTime":1472205570,
"solveCount":"0"
}