Form Finder avatar

Form Finder

Pricing

Pay per event

Go to Apify Store
Form Finder

Form Finder

This actor finds and analyzes HTML forms on web pages. It extracts form fields, classifies forms by type (search, login, contact, newsletter), detects file upload and password fields, and provides submit button text. Useful for web scraping preparation and site analysis.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

7 hours ago

Last modified

Categories

Share

Extract and analyze HTML forms from web pages with field details.

What does Form Finder do?

This actor finds and analyzes HTML forms on web pages. It extracts form fields, classifies forms by type (search, login, contact, newsletter), detects file upload and password fields, and provides submit button text. Useful for web scraping preparation, site analysis, and security reviews.

The actor loads each page, parses all form elements in the DOM, and returns structured data about each form including its action URL, method, field inventory, and classification. This gives you a complete picture of how a site collects user input.

Use cases

  • Scraping preparation -- identify form fields and action URLs for automated form submission in web scraping workflows
  • Site audit -- catalog all forms across a website to understand data collection points and user interaction patterns
  • Security review -- find forms that accept file uploads or passwords without HTTPS, or forms with insecure action URLs
  • UX analysis -- review form complexity, field counts, and label usage to identify usability improvements
  • Migration planning -- document all forms on a site before a redesign to ensure no functionality is lost

Why use Form Finder?

  • Automatic classification -- forms are categorized as search, login, contact, or newsletter without manual inspection
  • Structured output -- get clean JSON with form actions, methods, field types, names, and placeholders ready for automation
  • Batch processing -- scan hundreds of URLs in a single run to catalog forms across an entire website
  • Field-level detail -- every input, select, and textarea is reported with tag, type, name, and placeholder attributes
  • API access -- integrate form discovery into web scraping pipelines or site audit workflows
  • Pay-per-event pricing -- only pay per URL scanned with no monthly fees

Input parameters

ParameterTypeRequiredDefaultDescription
urlsarrayYes--List of URLs to extract forms from. Each URL is loaded and all form elements in the DOM are analyzed.

Example input

{
"urls": [
"https://www.google.com",
"https://www.wikipedia.org",
"https://example.com"
]
}

Output fields

Each URL produces one record with the following fields:

FieldDescription
urlThe original URL provided in the input
formCountTotal number of forms found on the page
searchFormsCount of forms classified as search
loginFormsCount of forms classified as login
contactFormsCount of forms classified as contact
formsArray of form objects with action, method, formType, fieldCount, and fields
errorError message if the scan failed, null otherwise
checkedAtISO 8601 timestamp of the scan

Each form object in the forms array contains an array of fields, where each field has tag, type, name, and placeholder attributes.

Output example

{
"url": "https://www.google.com",
"formCount": 1,
"searchForms": 1,
"loginForms": 0,
"contactForms": 0,
"forms": [
{
"action": "/search",
"method": "GET",
"formType": "search",
"fieldCount": 1,
"fields": [
{ "tag": "input", "type": "text", "name": "q", "placeholder": null }
]
}
],
"error": null,
"checkedAt": "2026-03-01T12:00:00.000Z"
}

How much does it cost?

Form Finder uses Apify's pay-per-event pricing. You only pay for what you use.

EventPriceDescription
Start$0.035One-time per run
URL scanned$0.001Per URL scanned

Cost examples:

  • 10 URLs: $0.035 + 10 x $0.001 = $0.045
  • 100 URLs: $0.035 + 100 x $0.001 = $0.135
  • 1,000 URLs: $0.035 + 1,000 x $0.001 = $1.035

Using the Apify API

You can start Form Finder programmatically using the Apify API. Replace YOUR_TOKEN with your Apify API token.

Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_TOKEN' });
const run = await client.actor('automation-lab/form-finder').call({
urls: ['https://www.google.com', 'https://www.wikipedia.org'],
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Python

from apify_client import ApifyClient
client = ApifyClient('YOUR_TOKEN')
run = client.actor('automation-lab/form-finder').call(run_input={
'urls': ['https://www.google.com', 'https://www.wikipedia.org'],
})
items = client.dataset(run['defaultDatasetId']).list_items().items
print(items)

Integrations

Connect Form Finder with other tools using Apify integrations. Export form inventories to Google Sheets for documentation, send Slack alerts when new forms appear on monitored pages, trigger Make or Zapier workflows for form data processing, push results to n8n for custom pipelines, or configure webhooks for automated site monitoring.

Tips and best practices

  • Use form actions and field names to build automated form submission scripts for web scraping workflows.
  • Filter by formType to quickly find login forms (security audit), contact forms (lead generation analysis), or search forms (scraping targets).
  • Check for password fields without HTTPS in the form action URL, which represents a security vulnerability.
  • Run against all pages of a site to create a complete form inventory before migration or redesign projects.
  • Combine with Accessibility Checker to verify that forms have proper labels and ARIA attributes for screen reader compatibility.

FAQ

What form types does the actor detect? The actor classifies forms as search, login, contact, or newsletter based on field types, names, and action URLs. Forms that do not match any pattern are reported as "other."

Does the actor detect forms created by JavaScript frameworks? Yes. The actor uses a real browser to load pages, so forms rendered by React, Vue, Angular, or other JavaScript frameworks are detected just like static HTML forms.

Can I use this to automatically submit forms? Form Finder is a read-only tool that extracts form structure and field information. It does not submit forms. Use the extracted field names and action URLs to build your own submission logic with tools like Apify's web scraping SDK.