Skip to main content

langchain-scrapeunblocker

PyPI Test

LangChain tools for ScrapeUnblocker: give your agent live web data. Read any public page in a real browser as clean Markdown or structured JSON, search Google, and run 100+ ready-made site scrapers (Amazon, Walmart, eBay, Google Maps, YouTube, Zillow, Indeed and more), including pages behind Cloudflare, DataDome, PerimeterX and Akamai.

Install

pip install -U langchain-scrapeunblocker
export SCRAPEUNBLOCKER_API_KEY="your-api-key"

Get a key at app.scrapeunblocker.com - a free account comes with 500 requests to start.

Use with an agent

from langchain.agents import create_agent
from langchain_scrapeunblocker import ScrapeUnblockerToolkit

agent = create_agent(
    "anthropic:claude-sonnet-5-5",
    tools=ScrapeUnblockerToolkit().get_tools(),
)
result = agent.invoke(
    {"messages": [{"role": "user", "content": "What does the Echo Dot cost on amazon.com today?"}]}
)
print(result["messages"][-1].content)

Tools

Tool Name the model sees What it does Billed
ScrapeUnblockerMarkdown scrapeunblocker_markdown A page as clean Markdown (main content, absolute links) 1 request
ScrapeUnblockerSearchAndRead scrapeunblocker_search_and_read Google search plus the top 1-5 results read as Markdown, in one call 1 + 1 per page
ScrapeUnblockerGoogleSearch scrapeunblocker_google_search Organic results, AI Overview, People also ask, related searches 1 per result page
ScrapeUnblockerParsedData scrapeunblocker_parsed_data Structured JSON from a product, article or listing page 1 request
ScrapeUnblockerListPlugins scrapeunblocker_list_plugins Search the catalog of 100+ site scrapers free
ScrapeUnblockerRunPlugin scrapeunblocker_run_plugin Run a site scraper and get its JSON per plugin

Use them one by one:

from langchain_scrapeunblocker import ScrapeUnblockerMarkdown, ScrapeUnblockerRunPlugin

ScrapeUnblockerMarkdown().invoke({"url": "https://example.com"})

ScrapeUnblockerRunPlugin().invoke(
    {"plugin": "youtube_transcript", "params": {"video": "dQw4w9WgXcQ"}}
)

ScrapeUnblockerGoogleSearch, ScrapeUnblockerParsedData and ScrapeUnblockerRunPlugin return content_and_artifact: the model gets a compact text or JSON, and the full API response is on the ToolMessage's artifact for your code. Called with a tool call, they return that message:

from langchain_scrapeunblocker import ScrapeUnblockerGoogleSearch

msg = ScrapeUnblockerGoogleSearch().invoke(
    {"name": "scrapeunblocker_google_search", "args": {"query": "langchain"}, "id": "1", "type": "tool_call"}
)
msg.content    # what the model reads
msg.artifact   # the whole results page: ads, knowledge panel, local, shopping, videos...

Every tool takes an optional proxy_country (ISO code such as "US" or "DE") to make the request from that country, and works with ainvoke too.

The plugin catalog comes from the installed scrapeunblocker SDK: pip install -U scrapeunblocker picks up new plugins without a new release of this package.

Configuration

Argument Default
api_key SCRAPEUNBLOCKER_API_KEY (or SCRAPEUNBLOCKER_KEY) Your API key
timeout 180 Seconds per API call; protected pages can take a while
max_retries 2 Retries for 429 and 502-504
max_chars 100000 (Markdown), 60000 (JSON) Longer results are cut, with a note saying so

ScrapeUnblockerToolkit(include_plugins=False) leaves out the two plugin tools.

Failed calls come back to the model as text it can act on (for example "the page itself answered 404, do not retry"), not as exceptions. Set handle_tool_error=False on a tool to raise instead.

Development

pip install -e ".[test]"
pytest                                 # unit tests, no network
SCRAPEUNBLOCKER_API_KEY=... pytest tests/integration_tests   # real API calls

License

MIT

Metadata

Release files for langchain-scrapeunblocker 0.1.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 langchain-scrapeunblocker 0.1.0
File Size Uploaded Provenance Actions
langchain_scrapeunblocker-0.1.0.tar.gz 16.5 kB With provenance Details for langchain_scrapeunblocker-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for langchain-scrapeunblocker 0.1.0
File Interpreter ABI Platform Actions
langchain_scrapeunblocker-0.1.0-py3-none-any.whl Python 3 none any Details for langchain_scrapeunblocker-0.1.0-py3-none-any.whl

Total release size: 31.5 kB

Release files / langchain_scrapeunblocker-0.1.0.tar.gz

Download URL langchain_scrapeunblocker-0.1.0.tar.gz
Size 16.5 kB
Tags Source
SHA-256 checksum
How to use checksums
30fa43a061c7e9f5a5b2565ace79f69e10d25a0bd1de7339785bca2483c43fcb
BLAKE2b-256 checksum
How to use checksums
a3a39b278e02a6c15434b5238b063654e20926ec255297bfa720d0a20a30ba19
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 Nov 10, 2026.

Transparency log

Release files / langchain_scrapeunblocker-0.1.0-py3-none-any.whl

Download URL langchain_scrapeunblocker-0.1.0-py3-none-any.whl
Size 15.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6898d5c76a82a154f46b9835dc7c441f21d82a077376d789a8237ddc770d0b68
BLAKE2b-256 checksum
How to use checksums
d3ad68c78e5d5c50fdbed2e69816fc49bab6b76eac5adba621a1d14f78edb6c1
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 Nov 10, 2026.

Transparency log

Security for langchain-scrapeunblocker 0.1.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

Both files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for langchain_scrapeunblocker-0.1.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 Nov 10, 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.1.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