llamaindex-webmetadata-extractor
LlamaIndex integration for the Web Metadata, OpenGraph & Contact Extractor API — a Reader that ingests any URL as a clean-Markdown Document for RAG, plus agent tools for contact discovery and SEO auditing.
pip install llamaindex-webmetadata-extractor
Quick start
Get a free API key on RapidAPI (1,000 requests/month, no credit card required).
export WEBMETADATA_API_KEY=your-rapidapi-key
As a Reader (RAG ingestion)
from llamaindex_webmetadata_extractor import WebMarkdownReader
from llama_index.core import VectorStoreIndex
reader = WebMarkdownReader() # reads WEBMETADATA_API_KEY, or pass api_key=...
documents = reader.load_data(["https://example.com", "https://another-site.com"])
index = VectorStoreIndex.from_documents(documents)
Each page's boilerplate (nav, ads, cookie banners) is stripped server-side before it reaches you, so Document.text is close to ready for chunking/embedding as-is. Document.metadata also carries the page's title, word count, reading time, and a short summary snippet. A URL that fails to fetch is skipped by default (skip_errors=True); pass skip_errors=False to raise instead.
As agent tools
from llamaindex_webmetadata_extractor import get_tools
from llama_index.core.agent import ReActAgent
tools = get_tools(api_key="YOUR_RAPIDAPI_KEY")
agent = ReActAgent.from_tools(tools, llm=llm)
| Tool | Use it when the agent needs to... |
|---|---|
web_metadata_extract |
Get a broad, all-in-one picture of a page (SEO, contacts, tech stack, security, links) |
web_contacts_extract |
Find public emails/phones/social links for outreach or lead-gen workflows |
web_seo_audit |
Grade a page's SEO with a score, warnings, and readability metrics |
Each tool returns a JSON string; API errors come back as {"error": true, "status_code": ..., "detail": ...} instead of raising, so an agent loop can react to them without crashing. For content ingestion (as opposed to a one-off agent tool call), use WebMarkdownReader above instead.
Configuration
Pass api_key explicitly to the reader/tool factories, or set it once via the WEBMETADATA_API_KEY environment variable and omit it everywhere.
Links
- Python SDK this wraps (
webmetadata-extractor) - Also available for LangChain and CrewAI
- Full API documentation
- Live interactive demo — no signup needed
License
MIT
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file llamaindex_webmetadata_extractor-0.1.0.tar.gz.
File metadata
- Download URL: llamaindex_webmetadata_extractor-0.1.0.tar.gz
- Upload date:
- Size: 5.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ec3e0c3431509995df78fbf9cb86521ee34b0783a1579429470fad713220bdfc
|
|
| MD5 |
c360f869532ab69b21ae95862466d30f
|
|
| BLAKE2b-256 |
3c19d8b2a1d817f6235a071ef19548e8aa595fc858445e0482ba29693bb8a9c0
|
File details
Details for the file llamaindex_webmetadata_extractor-0.1.0-py3-none-any.whl.
File metadata
- Download URL: llamaindex_webmetadata_extractor-0.1.0-py3-none-any.whl
- Upload date:
- Size: 6.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/7.0.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d803a85f697970c8b2c65725c4d9818c3929af72f6a3a8f58ad276c9f4c27ab9
|
|
| MD5 |
c6776dc70b5d93d42f92b94976838f59
|
|
| BLAKE2b-256 |
4cb8394dfc6fd00894ce25e771d48c1e8fed57ed990827e5c21f769f249eedf5
|