Skip to main content

Official Python SDK for the Metalift web context API

Project description

metalift-sdk

Official Python SDK for Metalift — turn any URL into agent-ready markdown, HTML, or structured data.

Install

pip install metalift-sdk

Requires Python 3.11+.

Quick start

from metalift_sdk import Metalift

client = Metalift(api_key="YOUR_API_KEY")

result = client.scrape(
    "https://example.com",
    formats=["markdown"],
)
print(result["data"]["markdown"])

Get an API key from the Metalift dashboard. New accounts receive 1,000 free credits/month.

Configuration

from metalift_sdk import Metalift

client = Metalift(
    api_url="https://api.metalift.ai",  # default
    api_key="YOUR_API_KEY",
    timeout=60.0,
)

Environment variables are also supported:

Variable Description
METALIFT_API_URL API base URL (default: https://api.metalift.ai)
METALIFT_API_KEY Bearer token for authenticated requests

API

Scrape

client.scrape(
    "https://example.com",
    formats=["markdown"],
    render="auto",
    only_main_content=True,
    strategy="default",
)

Batch scrape

client.batch(
    ["https://example.com", "https://example.org"],
    async_=True,
    scrape_options={"formats": ["markdown"]},
)

Crawl and map

crawl_job = client.crawl("https://example.com", limit=50)
map_result = client.map("https://example.com", limit=100)

Async jobs

job = client.crawl("https://example.com", limit=20)
completed = client.wait_for_job(job["job_id"])
print(completed["status"], completed.get("data"))

Strategies and protected sites

strategies = client.list_strategies()
protection = client.list_protection_types()

client.scrape(
    "https://www.walmart.com/ip/EXAMPLE",
    strategy="retail",
    formats=["markdown"],
)

client.fetch_session(url="https://www.walmart.com/", domain="www.walmart.com")

Session cookies

client.seed_session(
    domain="example.com",
    cookies=[{"name": "session", "value": "...", "domain": "example.com", "path": "/"}],
)

Errors

API failures raise MetaliftError:

from metalift_sdk import Metalift, MetaliftError

try:
    client.scrape("https://example.com")
except MetaliftError as exc:
    print(exc.status_code, exc.detail)

Links

License & distribution

metalift-sdk is proprietary software licensed under the terms in LICENSE. Use, copying, modification, and redistribution are not permitted except as expressly authorized by Metalift.

The package is published on the public Python Package Index (PyPI) so customers can install it with pip install metalift-sdk. Publishing on PyPI does not make the software open source: the wheel and source archive are publicly downloadable, but legal use remains governed by the proprietary license.

Do not commit API keys or other credentials into your application code. Pass them at runtime via the api_key argument or the METALIFT_API_KEY environment variable.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

metalift_sdk-1.0.0.tar.gz (6.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

metalift_sdk-1.0.0-py3-none-any.whl (6.6 kB view details)

Uploaded Python 3

File details

Details for the file metalift_sdk-1.0.0.tar.gz.

File metadata

  • Download URL: metalift_sdk-1.0.0.tar.gz
  • Upload date:
  • Size: 6.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for metalift_sdk-1.0.0.tar.gz
Algorithm Hash digest
SHA256 2af7c8bb8831f032d58bd251ad606cb4d75d502f1f36a2dc38d5f1010acaf916
MD5 7c9fd67a7c7ef5d0c33a8ec1b14f44c5
BLAKE2b-256 13a99ef515baa4ebb5a07c5bfe53524b4ed134ec05ad6675d2f39cf4896109d2

See more details on using hashes here.

File details

Details for the file metalift_sdk-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: metalift_sdk-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 6.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for metalift_sdk-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1ce7232ba253b298867cbdc6bea02ff85294cf5f7bc9e3313f8f626fc9073603
MD5 032798b61a6dc51a365cc03964899ff1
BLAKE2b-256 ce924303d5136305df19f77c2018a0006880b71756ea41d3a5828c21653e3762

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page