Form Finder
Pricing
Pay per event
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
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
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
urls | array | Yes | -- | 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:
| Field | Description |
|---|---|
url | The original URL provided in the input |
formCount | Total number of forms found on the page |
searchForms | Count of forms classified as search |
loginForms | Count of forms classified as login |
contactForms | Count of forms classified as contact |
forms | Array of form objects with action, method, formType, fieldCount, and fields |
error | Error message if the scan failed, null otherwise |
checkedAt | ISO 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.
| Event | Price | Description |
|---|---|---|
| Start | $0.035 | One-time per run |
| URL scanned | $0.001 | Per 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 ApifyClientclient = 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().itemsprint(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.