Scrape elements.
client.BrowserRendering.Scrape.New(ctx, params) (*[]ScrapeNewResponse, error)
POST/accounts/{account_id}/browser-rendering/scrape
Get meta attributes like height, width, text and others of selected elements.
Security
API Token
The preferred authorization scheme for interacting with the Cloudflare API. Create a token.
Example:
API Email + API Key
The previous authorization scheme for interacting with the Cloudflare API, used in conjunction with a Global API key.
Example:
The previous authorization scheme for interacting with the Cloudflare API. When possible, use API tokens instead of Global API keys.
Example:
Accepted Permissions (at least one required)
Scrape elements.
package main
import (
"context"
"fmt"
"github.com/cloudflare/cloudflare-go"
"github.com/cloudflare/cloudflare-go/browser_rendering"
"github.com/cloudflare/cloudflare-go/option"
)
func main() {
client := cloudflare.NewClient(
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
scrapes, err := client.BrowserRendering.Scrape.New(context.TODO(), browser_rendering.ScrapeNewParams{
AccountID: cloudflare.F("account_id"),
Body: browser_rendering.ScrapeNewParamsBodyObject{
Elements: cloudflare.F([]browser_rendering.ScrapeNewParamsBodyObjectElement{browser_rendering.ScrapeNewParamsBodyObjectElement{
Selector: cloudflare.F("h1"),
}}),
URL: cloudflare.F("https://www.example.com/"),
},
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", scrapes)
}
{
"result": [
{
"results": {
"attributes": [
{
"name": "name",
"value": "value"
}
],
"height": 0,
"html": "html",
"left": 0,
"text": "text",
"top": 0,
"width": 0
},
"selector": "selector"
}
],
"success": true,
"errors": [
{
"code": 0,
"message": "message"
}
]
}{
"errors": [
{
"code": 2001,
"message": "Rate limit exceeded"
}
],
"success": false
}Returns Examples
{
"result": [
{
"results": {
"attributes": [
{
"name": "name",
"value": "value"
}
],
"height": 0,
"html": "html",
"left": 0,
"text": "text",
"top": 0,
"width": 0
},
"selector": "selector"
}
],
"success": true,
"errors": [
{
"code": 0,
"message": "message"
}
]
}{
"errors": [
{
"code": 2001,
"message": "Rate limit exceeded"
}
],
"success": false
}