Skip to main content

ScrapeUnblocker Cloud - Python client & CLI

Deploy, run, schedule and pull data from Scrapy spiders hosted on ScrapeUnblocker Cloud, from Python or the command line.

ScrapeUnblocker Cloud is managed Scrapy hosting: you push an unmodified Scrapy project, buy concurrency slots and run it. The difference from other Scrapy clouds is that traffic goes through ScrapeUnblocker by default, so a spider that gets blocked elsewhere runs here without you writing any proxy or fingerprint code (--unblock).

pip install scrapeunblocker-cloud

No runtime dependencies: this package is pure standard library, so installing it next to your Scrapy project never pulls in a conflicting dependency tree.

Get a token

Create an API token in the ScrapeUnblocker portal under Spider Cloud. Then either run su-cloud login, or set the environment:

export SU_CLOUD_TOKEN="sk_..."
export SU_CLOUD_ORG="acme"
export SU_CLOUD_PROJECT="shop"     # defaults to the current directory name

CLI

su-cloud login                              # store url/token/org/project in ~/.su-cloud.json
su-cloud deploy                             # package the current Scrapy project and build it
su-cloud run products -a category=shoes --unblock --wait
su-cloud jobs --state running
su-cloud logs j1699999999abc --lines 200
su-cloud logs j1699999999abc --level WARNING      # why did it fail? searches the whole log
su-cloud logs j1699999999abc --contains "403"
su-cloud log-download j1699999999abc        # the whole log as j1699999999abc.log.gz
su-cloud items j1699999999abc > out.jsonl   # page scraped items to stdout as JSON lines
su-cloud download j1699999999abc -o out.jsonl.gz   # download the whole dataset
su-cloud stats j1699999999abc              # crawl statistics
su-cloud schedules
su-cloud schedule-add nightly "0 2 * * *" products --unblock
su-cloud destinations
su-cloud destination-add mymongo mongodb -s uri=mongodb+srv://... -s database=shop -s collection=products

Library

from scrapeunblocker_cloud import SpiderCloudClient

client = SpiderCloudClient(token="sk_...", org="acme", project="shop")

# deploy the current directory, then run a spider through ScrapeUnblocker
client.deploy(".", notes="add price field")
job = client.run("products", args={"category": "shoes"}, unblock=True)

job.wait()                       # block until it finishes
print(job.state, job.items_total)

for item in job.items():         # stream the scraped data straight back
    print(item)

for line in job.logs(lines=100):
    print(line)

Org and project set on the client are the defaults for every call, so single-project users never repeat themselves. Every method also accepts org= / project= to override per call.

What you can reach

Namespace Methods
client.orgs list, create
client.projects list, create, settings, update_settings
client.deploys list, upload, from_git
client.jobs run, list, get
Job wait, refresh, logs, logs_page, download_log, items, items_page, download, stats, cancel, .state, .done
client.schedules list, create, toggle, delete
client.destinations list, create, delete

Errors

Everything raises a subclass of SpiderCloudError: AuthError (bad token), NotFoundError (unknown org/project/job), APIError (other non-2xx, with .status and .detail), ConnectionFailed (control plane unreachable) and ConfigError (missing token/org/project).

License

MIT

Metadata

Release files for scrapeunblocker-cloud 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for scrapeunblocker-cloud 0.2.0
File Size Uploaded Provenance
scrapeunblocker_cloud-0.2.0.tar.gz 17.6 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for scrapeunblocker-cloud 0.2.0
File Interpreter ABI Platform
scrapeunblocker_cloud-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 34.8 kB

Release files / scrapeunblocker_cloud-0.2.0.tar.gz

Download URL scrapeunblocker_cloud-0.2.0.tar.gz
Size 17.6 kB
Tags Source
SHA-256 checksum
How to use checksums
7d9bb69d045c320d248c310b542f86ddb8ea61a845df0eba55fdfd26e20220a9
BLAKE2b-256 checksum
How to use checksums
9287376b5d096e28721e377700cba0a5f4cb39f59e5fd7530fb5cc7e81e620b3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.

Transparency log

Release files / scrapeunblocker_cloud-0.2.0-py3-none-any.whl

Download URL scrapeunblocker_cloud-0.2.0-py3-none-any.whl
Size 17.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
40a356bef2d2817f9bcc2fedd6badf41b0a136630bf87fa71519bede8b9edcc0
BLAKE2b-256 checksum
How to use checksums
03040e58239d171e7866619b29d7d84a4a4893c131a9fa9843d8d0657c948de5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.

Transparency log

Security for scrapeunblocker-cloud 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for scrapeunblocker_cloud-0.2.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page