Puppeteer stealth
Enabling Puppeteer Stealth in the HTTP API
Example in C# using CloudBrowser’s HTTP API
using System;
using System.Net.Http;
using System.Threading.Tasks;
using PuppeteerSharp;
public class Program
{
public static async Task Main(string[] args)
{
var serverUrl = "https://production.cloudbrowser.ai/api/v1/Browser/OpenAdvanced";
var apiToken = "your-api-token"; // Replace with your actual API token
var requestBody = new
{
Stealth = true // Pass Stealth as true in the request body
};
var jsonContent = new StringContent(JsonConvert.SerializeObject(requestBody), Encoding.UTF8, "application/json");
// Create an HttpClient and include the API token in the request headers
var httpClient = new HttpClient();
httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", apiToken);
// Request the WebSocket endpoint of the remote browser
var response = await httpClient.PostAsync(serverUrl, jsonContent);
// Get address value
var responseContent = await response.Content.ReadAsStringAsync();
dynamic jsonResponse = JsonConvert.DeserializeObject(responseContent);
var browserWSEndpoint = jsonResponse.address;
// Connect to the remote browser
var browser = await Puppeteer.ConnectAsync(new ConnectOptions
{
BrowserWSEndpoint = browserWSEndpoint,
});
// Create a new page
var page = await browser.NewPageAsync();
// Navigate to a URL to verify the IP
await page.GoToAsync("https://ifconfig.me");
// Close the browser
await browser.CloseAsync();
}
}Last updated