CURL concha · curva
curl --get --fail-with-body --max-time 120 \
"https://api.webscrapingapi.com/v2" \
--data-urlencode "api_key=$WSA_API_KEY" \
--data-urlencode "url=https://example.com/public-page" \
--data-urlencode "json_response=1"Exemplos diretos de HTTP
Copie uma requisição da Scraper API na sua linguagem. Cada exemplo lê uma chave API no servidor, codifica a URL, define um tempo limite e verifica a resposta.
Pontos de entrada de línguas
Cada exemplo chama diretamente o endpoint REST, para que você possa começar com ferramentas de linguagem familiar. Directório SDK.
CURL concha · curva
curl --get --fail-with-body --max-time 120 \
"https://api.webscrapingapi.com/v2" \
--data-urlencode "api_key=$WSA_API_KEY" \
--data-urlencode "url=https://example.com/public-page" \
--data-urlencode "json_response=1"NodeJS fetch · Node 18+
const apiKey = process.env.WSA_API_KEY;
if (!apiKey) {
throw new Error("WSA_API_KEY is required");
}
const params = new URLSearchParams({
api_key: apiKey,
url: "https://example.com/public-page",
json_response: "1",
});
const response = await fetch(
"https://api.webscrapingapi.com/v2?" + params,
{ signal: AbortSignal.timeout(120_000) }
);
if (!response.ok) {
throw new Error("API status " + response.status);
}
console.log(await response.json());Python requests
import os
import requests
response = requests.get(
"https://api.webscrapingapi.com/v2",
params={
"api_key": os.environ["WSA_API_KEY"],
"url": "https://example.com/public-page",
"json_response": 1,
},
timeout=120,
)
response.raise_for_status()
print(response.json())PHP cURL · PHP 8+
<?php
$apiKey = getenv("WSA_API_KEY");
if ($apiKey === false || $apiKey === "") {
throw new RuntimeException("WSA_API_KEY is required");
}
$query = http_build_query([
"api_key" => $apiKey,
"url" => "https://example.com/public-page",
"json_response" => 1,
]);
$client = curl_init(
"https://api.webscrapingapi.com/v2?" . $query
);
curl_setopt_array($client, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 120,
]);
$body = curl_exec($client);
$status = curl_getinfo($client, CURLINFO_RESPONSE_CODE);
$error = curl_error($client);
curl_close($client);
if ($body === false || $status >= 400) {
throw new RuntimeException(
$error ?: "API request failed with status " . $status
);
}
echo $body;Golang biblioteca padrão
package main
import (
"fmt"
"io"
"net/http"
"net/url"
"os"
"time"
)
func main() {
key := os.Getenv("WSA_API_KEY")
if key == "" { panic("WSA_API_KEY is required") }
params := url.Values{}
params.Add("api_key", key)
params.Add("url", "https://example.com/public-page")
params.Add("json_response", "1")
client := &http.Client{Timeout: 120 * time.Second}
response, err := client.Get(
"https://api.webscrapingapi.com/v2?" + params.Encode(),
)
if err != nil { panic(err) }
defer response.Body.Close()
if response.StatusCode >= 400 { panic(response.Status) }
body, err := io.ReadAll(response.Body)
if err != nil { panic(err) }
fmt.Println(string(body))
}Java HttpClient · Java 11+
import java.net.URI;
import java.net.URLEncoder;
import java.net.http.*;
import java.nio.charset.StandardCharsets;
import java.time.Duration;
String apiKey = System.getenv("WSA_API_KEY");
if (apiKey == null || apiKey.isBlank()) {
throw new IllegalStateException("WSA_API_KEY is required");
}
String key = URLEncoder.encode(
apiKey, StandardCharsets.UTF_8
);
String target = URLEncoder.encode(
"https://example.com/public-page",
StandardCharsets.UTF_8
);
var request = HttpRequest.newBuilder()
.uri(URI.create("https://api.webscrapingapi.com/v2"
+ "?api_key=" + key + "&url=" + target
+ "&json_response=1"))
.timeout(Duration.ofSeconds(120)).GET().build();
var response = HttpClient.newHttpClient().send(
request, HttpResponse.BodyHandlers.ofString()
);
if (response.statusCode() >= 400) {
throw new RuntimeException("API status " + response.statusCode());
}
System.out.println(response.body());.NET HttpClient · .NET 6+
using System.Net;
var apiKey = Environment.GetEnvironmentVariable("WSA_API_KEY");
if (string.IsNullOrWhiteSpace(apiKey)) {
throw new InvalidOperationException("WSA_API_KEY is required");
}
var key = WebUtility.UrlEncode(apiKey);
var target = WebUtility.UrlEncode(
"https://example.com/public-page"
);
var requestUrl =
"https://api.webscrapingapi.com/v2?api_key=" + key
+ "&url=" + target + "&json_response=1";
using var client = new HttpClient {
Timeout = TimeSpan.FromSeconds(120)
};
var response = await client.GetAsync(requestUrl);
response.EnsureSuccessStatusCode();
Console.WriteLine(
await response.Content.ReadAsStringAsync()
);Ruby Net:: HTTP · biblioteca padrão
require "net/http"
require "uri"
uri = URI("https://api.webscrapingapi.com/v2")
uri.query = URI.encode_www_form(
api_key: ENV.fetch("WSA_API_KEY"),
url: "https://example.com/public-page",
json_response: 1
)
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
http.open_timeout = 10
http.read_timeout = 120
response = http.get(uri.request_uri)
unless response.is_a?(Net::HTTPSuccess)
raise "API status #{response.code}"
end
puts response.bodyRevisão das ferramentas e das transferências
Conecte as respostas da API à sua aplicação ou combine um formato de arquivo e um destino para conjuntos de dados e feeds.
Categoria de avaliação
Modela a solicitação HTTP documentada no seu espaço de trabalho e revise o tratamento secreto, as variáveis, as respostas esperadas e as convenções de coleta com a sua equipe.
Categoria de avaliação
Confirmar o formato de resposta, o tratamento do estado, a análise, as retensas limitadas e o armazenamento dos produtos que retornam os dados ao pedido.
Categoria de avaliação
Para o Recurrentes Feeds de dados ou um Dados geridos entrega, revisão do formato do arquivo, embalagem, método de transferência, cadência, nomeação, criptografia e verificações de aceitação.
Categoria de avaliação
Para os dados preparados da Marketplace de dados ou programado Feeds de dados, avaliar o destino, credenciais, partição, evolução do esquema, comportamento de atualização e propriedade operacional.
Recursos para desenvolvedores
Use documentação para o comportamento de solicitação, o diretório SDK para pacotes lançados, o status para a condição de serviço e o painel de controle da conta para o seu acesso.
Browse all developer product pathsExecute o seu primeiro pedido
Escolha um exemplo de idioma, substitua o target e verifique a resposta devolvida. O guia API de scraping explica o modelo de acesso e os controles de solicitação disponíveis.