Find Node
curl --request POST \
--url https://api.example.com/browsers/{id}/find-node/ \
--header 'Content-Type: application/json' \
--data '
{
"selector": "<string>"
}
'import requests
url = "https://api.example.com/browsers/{id}/find-node/"
payload = { "selector": "<string>" }
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({selector: '<string>'})
};
fetch('https://api.example.com/browsers/{id}/find-node/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/browsers/{id}/find-node/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'selector' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/browsers/{id}/find-node/"
payload := strings.NewReader("{\n \"selector\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.example.com/browsers/{id}/find-node/")
.header("Content-Type", "application/json")
.body("{\n \"selector\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/browsers/{id}/find-node/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"selector\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"node_id": 123
}Commands
Find Node
Find a DOM node by CSS selector
POST
/
browsers
/
{id}
/
find-node
/
Find Node
curl --request POST \
--url https://api.example.com/browsers/{id}/find-node/ \
--header 'Content-Type: application/json' \
--data '
{
"selector": "<string>"
}
'import requests
url = "https://api.example.com/browsers/{id}/find-node/"
payload = { "selector": "<string>" }
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({selector: '<string>'})
};
fetch('https://api.example.com/browsers/{id}/find-node/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/browsers/{id}/find-node/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'selector' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/browsers/{id}/find-node/"
payload := strings.NewReader("{\n \"selector\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.example.com/browsers/{id}/find-node/")
.header("Content-Type", "application/json")
.body("{\n \"selector\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/browsers/{id}/find-node/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"selector\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"node_id": 123
}Description
Searches the current page for a DOM element matching the given CSS selector and returns its node reference. Use the returned reference with other node-based commands.Authentication
Open-source deployments do not require authentication by default. If your server config enablesX-API-Key, include that header with the request.
Path Parameters
The browser ID returned from Create Session.
Request Body
CSS selector for the element to find.
Response
The node ID of the matched element. Use this with Fetch Text and other node-based commands.
Example
curl -X POST http://localhost:8080/browsers/exc-b9534e98-c3ce-4d1b-9671-b563ac66adc3/find-node/ \
-H "Content-Type: application/json" \
-d '{ "selector": "#example" }'
⌘I

