Migrating from Bright Data Web Unlocker to Zyte API#

Learn how to migrate from Bright Data Web Unlocker to Zyte API.

Feature comparison#

The following table summarizes the feature differences between both products:

Feature

Zyte API

Web Unlocker

API

HTTP or proxy

Proxy

Browser HTML

Yes

No

Screenshots

Yes

No

Browser actions

Yes

No

Network capture

Yes

No

Proxy mode#

Zyte API offers a proxy mode, which makes it easier to migrate from Bright Data Web Unlocker.

Note

Before you decide whether to use the proxy mode or the HTTP API, learn their differences.

To migrate, update your proxy endpoint and authentication, and migrate your request parameters.

HTTP API#

When migrating from Bright Data Web Unlocker to the HTTP API of Zyte API, the main challenge is switching from a proxy API to an HTTP API. To read its rich output data, you need JSON parsing and sometimes base64-decoding.

For example, to get the same output as the following Web Unlocker request:

curl \
    --proxy zproxy.lum-superproxy.io:22225 \
    --proxy-user lum-customer-YOUR_USER-zone-YOUR_ZONE:YOUR_PASSWORD \
    https://toscrape.com/

Use Zyte API as follows:

curl \
    --user YOUR_API_KEY: \
    --header 'Content-Type: application/json' \
    --compressed \
    --data '{"url": "https://toscrape.com", "httpResponseBody": true}' \
    https://api.zyte.com/v1/extract \
| jq --raw-output .httpResponseBody \
| base64 --decode

See Zyte API usage documentation for richer Zyte API examples, covering more scenarios and features. See also Parameter mapping to migrate your request parameters.

Parameter mapping#

If your Web Unlocker requests set the country parameter, migrate them as follows:

Use the Zyte-Geolocation request header.

For example, replace:

curl  --proxy-user lum-customer-YOUR_USER-zone-YOUR_ZONE-country-us:YOUR_PASSWORD 

With:

curl  -H Zyte-Geolocation:US 

Use the geolocation request field.

For example, replace:

curl  --proxy-user lum-customer-YOUR_USER-zone-YOUR_ZONE-country-us:YOUR_PASSWORD 

With:

curl  --data '{…, "geolocation": "US", …}'