Website Metadata Extractor
codemaster devops · @codemasterdevops
Audit SEO metadata and social preview tags across a list of public URLs.

About
What does Website Metadata Extractor do?
Website Metadata Extractor reads the HTML head of public web pages and saves structured metadata for SEO audits, canonical link checks, and social preview reviews.
What website data can you extract?
urlandoriginUrlidentify the final page URL and its starting URL.titleandlangcontain the page title and declared HTML language.metacontains named meta tags, including descriptions, robots directives, Open Graph tags, and X Card tags when present. X Card tags use thetwitter:prefix in HTML.linksgroups head links by theirrelvalue, such ascanonicaloralternate.statusCodeandextractedAtrecord the HTTP response status and extraction time.
How to use Website Metadata Extractor
- Enter one or more public HTTP or HTTPS URLs in
urls. - Run the Actor. Direct connections are enabled by default.
- Open the run dataset to review results. Export JSON to preserve the nested metadata and link fields. Flatten those fields before converting to CSV for a spreadsheet.
{
"urls": ["https://example.com/"],
"proxy": { "useApifyProxy": false },
"pagination": { "enabled": false }
}
Example dataset row
{
"url": "https://example.com/",
"originUrl": "https://example.com/",
"title": "Example Domain",
"lang": "en",
"meta": { "viewport": "width=device-width,initial-scale=1" },
"links": { "icon": ["data:,"] },
"statusCode": 200,
"extractedAt": "2026-11-10T06:14:51.380Z"
}
Crawl settings and coverage
- Supply up to 1,000 distinct starting URLs. URL fragments are stripped for deduplication.
- Enable
pagination.enabledto follow matching links on the same hostname. Setpagination.linkSelectorsandpagination.maxDepthto control discovery. - Use
rateLimitsandrequestto tune concurrency, requests per minute, timeouts, and retries. - The Actor reads the HTML returned by the server. Metadata added only by browser-side JavaScript and pages behind sign-in or bot challenges may be unavailable.
- Missing tags are omitted. After retries are exhausted, a failed request produces an error row with the URL, origin URL, and timestamp. Check for error rows before using the dataset.
FAQ
- What does Website Metadata Extractor collect?
- It collects page titles, HTML language, named meta tags, and head links from the public URLs you supply. Each successful row includes the final URL, starting URL, HTTP status, and extraction time.
- Can I audit Open Graph and X Card tags?
- Yes. Published og:* and twitter:* tags appear in the meta object. Missing tags are omitted, so you can identify gaps during a social preview audit.
- Where are canonical links and meta descriptions stored?
- Canonical link hrefs appear under links.canonical when present. Meta descriptions appear under meta.description when the source publishes a description tag.
- How many URLs can I submit in one run?
- Enter up to 1,000 distinct starting URLs in urls. Duplicate URLs that differ only by a fragment are processed once.
- Can it follow next-page links?
- Yes. Set pagination.enabled to true and use pagination.linkSelectors and pagination.maxDepth to control same-hostname discovery. Pagination is off by default.
- Does it render JavaScript or sign into websites?
- It reads server-returned HTML directly. Use publicly accessible URLs whose metadata is present in the initial response. Script-injected tags and login-protected pages may be unavailable.
- Do I need an API key or a proxy?
- Public pages can be fetched directly without a source API key. The optional proxy setting lets you select the platform proxy or supply custom proxy URLs.
- How do I spot pages that failed?
- Look for rows with an error field. The row identifies the affected URL and its starting URL, while the run log provides request details.
- How do I export the data?
- Export JSON from the run dataset to preserve the nested meta and links objects. For a spreadsheet, flatten those objects into columns and convert the JSON to CSV.
- What does the rental trial include?
- The rental costs $19.99 per month after a 3-day free rental trial. Bytewells bills run usage separately from the rental.
Input
Preview of the input form. Rent the Actor to fill it in and start runs from the console.
Fields
urlsList of public HTTP(s) URLs to extract metadata from. Provide between 1 and 1000 URLs.
proxyRun directly by default, or select the platform proxy or provide custom proxy URLs.
paginationFollow matching next-page links on the same hostname.
rateLimitsControl concurrency, RPM, and inter-request delay.
requestTune timeout and retry behaviour.
datasetControl dataset persistence.
debugLogEnable to include debug logs for troubleshooting.
API
Bytewells speaks the Apify API. Existing integrations keep working: point apify-client at https://bytewells.com/api and use your Bytewells API token (Console → Settings → API access). The Actor ID is codemasterdevops/website-metadata-extractor (or codemasterdevops~website-metadata-extractor in URLs).
JavaScript · apify-client
import { ApifyClient } from 'apify-client';
const client = new ApifyClient({
token: process.env.BYTEWELLS_TOKEN,
baseUrl: 'https://bytewells.com/api',
});
const input = {
"urls": [
"https://example.com/",
"https://en.wikipedia.org/wiki/Open_Graph_protocol"
],
"proxy": {
"useApifyProxy": false
},
"debugLog": false
};
const run = await client.actor('codemasterdevops/website-metadata-extractor').call(input);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);Python · apify-client
import os
from apify_client import ApifyClient
client = ApifyClient(os.environ["BYTEWELLS_TOKEN"], api_url="https://bytewells.com/api")
run_input = {
"urls": [
"https://example.com/",
"https://en.wikipedia.org/wiki/Open_Graph_protocol"
],
"proxy": {
"useApifyProxy": False
},
"debugLog": False
}
run = client.actor("codemasterdevops/website-metadata-extractor").call(run_input=run_input)
items = client.dataset(run["defaultDatasetId"]).list_items().items
print(items)HTTP · curl
curl -X POST "https://bytewells.com/api/v2/acts/codemasterdevops~website-metadata-extractor/runs" \
-H "Authorization: Bearer $BYTEWELLS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"urls":["https://example.com/","https://en.wikipedia.org/wiki/Open_Graph_protocol"],"proxy":{"useApifyProxy":false},"debugLog":false}'Runs are billed as compute from your credit balance. Paid Actors need an active rental or trial; otherwise the API answers 402 rental-required.
Related
More Actors from the same publisher.

JSON-LD Tag Extractor for Schema.org Audits
codemaster devops · @codemasterdevops
Extract JSON-LD structured data from a list of URLs. Export parsed Schema.org markup for technical SEO audits and data pipelines.
SEO toolsDeveloper toolsAutomation$19.99/mo3-day free trial
Best Buy Products Scraper
codemaster devops · @codemasterdevops
Extract Best Buy product names, SKUs, available prices, images, and US reviews for catalog research and price tracking.
E-commerceAutomationDeveloper tools$19.99/mo3-day free trial
Bing Scraper - Search Results & SERP Data
codemaster devops · @codemasterdevops
Scrape Bing search results, titles, links, and snippets. Run multiple queries with market, language, and page controls for SEO and competitor research.
SEO toolsMarketingDeveloper toolsUsage-based
Google Play Reviews Scraper - App Ratings & Feedback
codemaster devops · @codemasterdevops
Extract public Google Play app reviews, ratings, dates, helpful votes, and available developer replies for app research and competitor analysis.
MarketingSEO toolsDeveloper tools$19.99/mo3-day free trial
Google Trending Now Scraper – Trending Searches by Country
codemaster devops · @codemasterdevops
Get current Google trending searches, approximate search traffic, and news links. Monitor up to 10 countries per run without a Google API key.
SEO toolsMarketingAutomationUsage-based
HTML String to PDF - A4 Document Converter
codemaster devops · @codemasterdevops
Convert an HTML string into a downloadable A4 PDF with page numbers for reports, invoices, and other templated documents.
Developer toolsAutomation$19.99/mo3-day free trial