
Google Ads Scraper
scrape.ly/store/querystone/google-ads-scraperLead generationSEO tools
4 monthly users

Scrape LandWatch.com land, farm, ranch and acreage listings by search URL or location (price, acres, price per acre, GPS, broker and phone, photos), plus the Find an Agent broker directory. Full listing details optional. No login.
Export land, farm, ranch and acreage listings from LandWatch.com (US land for sale), plus its Find an Agent broker directory. Paste any LandWatch search URL or just type a state, county, city or zip code and get price, acres, price per acre, GPS coordinates, property types, photos and the listing broker in seconds. No login, no browser, and searches bigger than LandWatch's 500-listing page limit are collected in full.
Travis County, TX, Montana or 78701.| Field | What it does | Example |
|---|---|---|
startUrls | LandWatch land searches, single listings (/pid/...), Find an Agent searches or agent profiles | https://www.landwatch.com/texas-land-for-sale/price-under-600000 |
locations | Land search by state, county, city or zip | ["Travis County, TX", "Montana", "78701"] |
maxItems | Results to save in total (0 = no limit) | 20 |
maxItemsPerSearch | Optional cap per URL or location | 100 |
propertyTypes | Farms and ranches, hunting, timberland, homesites, waterfront... | ["farms-ranches"] |
minPrice / maxPrice | Asking price range in USD | 50000 / 500000 |
minAcres / maxAcres | Parcel size in whole acres | 10 / 200 |
sortBy | newest, price-low-high, price-high-low, acres-low-high, acres-high-low | newest |
includeListingDetails | Open every listing page for the full record (add-on) | false |
includeSellerDetails | Attach the broker's profile to each listing (free) | false |
agentLocations / agentNames | Find an Agent by place or by name | ["Texas"] / ["John Smith"] |
{
"startUrls": ["https://www.landwatch.com/texas-land-for-sale/price-under-600000"],
"locations": ["Travis County, TX"],
"maxItems": 100,
"propertyTypes": ["farms-ranches"],
"minAcres": 10,
"sortBy": "newest",
"includeListingDetails": false,
"proxyConfiguration": { "useScrapelyProxy": true, "scrapelyProxyGroups": ["DATACENTER"] }
}
Each row is a land listing ("type": "listing") or an agent ("type": "agent"). The Land listings, Listing details and Agents views show the main columns.
| Field | Description |
|---|---|
title, url | Listing title and LandWatch page |
price, priceDisplay, pricePerAcre | Asking price in USD and price per acre |
acres | Parcel size |
address, city, county, state, stateAbbreviation, zip | Location |
latitude, longitude, encodedBoundaryPoints | GPS point and the parcel outline when the seller drew one |
types, propertyTypesLabel | Property types (Farms and Ranches, Hunting Property...) |
description | Listing summary |
beds, baths, homesqft, hasHouse | House details for land with a home |
brokerName, brokerCompany, brokerPhone, brokerProfileUrl | Listing broker |
photo, imageUrls, imageCount | Photos |
insertDate, lastUpdated, priceChangeAmount, priceChangePercentage, priceChangeDate | Dates and price cuts |
listingLevelTitle, isDiamond, isPlatinum, isGold | Listing tier |
fullDescription, highlights, amenities, directions, priceHistory, parcelId, listingDate, region, propertyTaxRate, images, documents, videoUrl, auction | With Full listing details |
seller | Broker profile: phones, office address, license, bio, active listings (with details or seller profiles on) |
contactName, companyName, phone, officePhone, cellPhone, address1, city, stateAbbreviation, zip, licenseNumber, activeListingCount, sellerListingStats, landStarWinCount, logoUrl, portraitUrl | Agent rows |
Land listing example (from a test run, broker name changed):
{
"type": "listing",
"id": 23126940,
"title": "$49 per month- Texas Hudspeth County Dell Garden Estates Lot!",
"price": 3869,
"priceDisplay": "$3,869",
"acres": 0.14,
"pricePerAcre": 27635.71,
"city": "Salt Flat",
"county": "Hudspeth County",
"state": "Texas",
"stateAbbreviation": "TX",
"zip": "79847",
"latitude": 31.779094696044922,
"longitude": -105.22603607177734,
"types": ["Undeveloped Land", "Homesite"],
"propertyTypesLabel": "Undeveloped Land, Homesite",
"description": "0.14-Acre Lot in Hudspeth County, TX Near Guadalupe Mountains for Just $49/Month! ...",
"brokerName": "Jane Example",
"brokerCompany": "GovernmentAuction.com",
"brokerProfileUrl": "https://www.landwatch.com/profile/jane-example/522915",
"imageCount": 8,
"photo": "https://assets.landwatch.com/resizedimages/0/1920/w/80/w/1-5473200374",
"insertDate": "2025-04-07T11:15:41.647",
"lastUpdated": "2026-10-13T07:41:03.61",
"listingLevelTitle": "Signature Partner",
"url": "https://www.landwatch.com/hudspeth-county-texas-undeveloped-land-for-sale/pid/422531436",
"searchInput": "https://www.landwatch.com/texas-land-for-sale",
"scrapedAt": "2026-10-21T23:15:52.000Z"
}
Agent example (fictional person):
{
"type": "agent",
"id": 174024,
"contactName": "Sam Rivers",
"companyName": "Example Land Co.",
"phone": "(555) 010-2500",
"officePhone": "(555) 010-2500",
"address1": "1600 Normal Park",
"city": "Huntsville",
"stateAbbreviation": "TX",
"zip": "77340",
"activeListingCount": 104,
"landStarWinCount": 6,
"url": "https://www.landwatch.com/profile/example-land-co/174024"
}
Pay per result, no start fee:
Example: 1,000 listings ≈ $1.50 in result fees, plus platform usage (compute and proxy), which measured about $0.002 per 1,000 listings on our test runs. 1,000 listings with full details ≈ $2.50 plus usage.
Is it legal to scrape LandWatch? The actor reads only public pages that anyone can open without an account. Check that your use of the data respects LandWatch's terms and privacy laws in your country, especially for personal contact details.
Do I need a login or a proxy? No login. The default datacenter proxy works; if LandWatch starts refusing it, the actor switches to US residential exits by itself.
How many results can I get? As many as LandWatch has. One LandWatch search shows only 500 listings, so the actor splits bigger searches into price ranges and collects each one. Agent searches page through the whole directory.
Why is a field empty? The actor returns what LandWatch shows. Many listings have no street address, house or video; broker phones are shown only on some listings (turn on seller profiles to get the broker's phone for the rest).
Can I schedule it or use the API? Yes. Schedule runs (for example daily, sorted by newest) and read results through the API or webhooks in JSON, CSV or Excel.
Every field below can be set in the run form, passed through the API, or saved as a task. Unset fields fall back to the defaults shown.
startUrlsarrayOptionalLandWatch URLs
Paste LandWatch pages copied from your browser: land searches with any filters (https://www.landwatch.com/texas-land-for-sale/price-under-600000), single listings (https://www.landwatch.com/.../pid/428497607), Find an Agent searches (https://www.landwatch.com/find-agent/texas or /find-agent/name/john) or agent profiles (https://www.landwatch.com/profile/.../174024). Page numbers in a URL are ignored: the actor pages through the results itself.
locationsarrayOptionalLocations (land search)
Search land for sale by place instead of URL: a US state (Montana), county (Travis County, TX), city (Austin, TX) or 5-digit zip code (78701). One search runs per location; the filters below apply.
maxItemsintegerOptionaldefault 20Maximum results
How many listings or agents to save in total across all URLs and locations. 0 means no limit. One LandWatch search shows at most 500 listings; bigger searches are split by price automatically, so you can collect all of them.
maxItemsPerSearchintegerOptionalMaximum results per URL or location
Optional cap for each URL or location, so one big search does not use up the whole run. Empty or 0 means no per-search cap.
Optional. They apply to land searches by location and to pasted land search URLs; a filter set here replaces the same filter in a URL.
propertyTypesarrayOptionalProperty types
Only listings of these types. Leave empty for all types. Added to locations and to pasted land search URLs.
minPriceintegerOptionalMinimum price (USD)
Lowest asking price.
maxPriceintegerOptionalMaximum price (USD)
Highest asking price.
minAcresintegerOptionalMinimum acres
Smallest parcel size in whole acres.
maxAcresintegerOptionalMaximum acres
Largest parcel size in whole acres.
sortByenumOptionalSort by
Order of land listings. Default keeps LandWatch's own order (or the order in a pasted URL).
includeListingDetailsbooleanOptionaldefault falseFull listing details
Open each listing's page for the full description, highlights, amenities, directions, price history, parcel ID, image sizes, video and auction details, plus the seller's full profile. Charged as an add-on per listing.
includeSellerDetailsbooleanOptionaldefault falseSeller / broker profile on each listing
Attach the listing broker's profile (phones, office address, license number, bio, active listings) to every land listing. No extra charge. Included anyway when full listing details are on.
Optional. Scrape the LandWatch broker directory instead of, or next to, land listings.
agentLocationsarrayOptionalAgent search by location
Find an Agent by place: a state (Texas), county (Travis County, TX) or city (Austin, TX). Returns land brokers and agents with phones, office address and listing stats.
agentNamesarrayOptionalAgent search by name
Find agents or brokerages by name, e.g. John Smith or Texas Ranch Sales.
proxyConfigurationobjectOptionaldefault {"useScrapelyProxy":true,"scrapelyProxyGroups":["DATACENTER…Proxy configuration
Datacenter proxies work for LandWatch; the actor switches to US residential exits by itself if the site keeps refusing them.
Every run writes its results to a dataset. Preview it in the dashboard, then export it or read it through the API.
| Field | Type | Description |
|---|---|---|
| type | string | listing or agent |
| id | number | null | |
| title | string | null | |
| price | number | null | |
| acres | number | null | |
| url | string | null |
You pay for the events the actor reports, such as each result or page it produces. Platform usage is included in the event prices.
| Event | Charged when | Price |
|---|---|---|
| Full listing details | Add-on per listing when the full listing page is read (description, amenities, price history, parcel ID, photos, seller profile). | $0.001 |
| Result | One land listing or agent saved to the dataset. | $0.0015 |
Run this actor from your own code. Swap in your API token and the examples work as-is.
import { ScrapelyClient } from 'scrapely-client'
const client = new ScrapelyClient({ token: process.env.SCRAPELY_TOKEN })
// Start the actor and wait for the run to finish.
const run = await client.actor('roamandroof/landwatch-scraper').call({
"startUrls": [
"https://www.landwatch.com/texas-land-for-sale/price-under-600000"
],
"maxItems": 20,
"proxyConfiguration": {
"useScrapelyProxy": true,
"scrapelyProxyGroups": [
"DATACENTER"
]
}
})
// Read the dataset the run produced.
const { items } = await client.dataset(run.defaultDatasetId).listItems()
console.log(items)Tokens live in your account settings. Keep them server-side: a token carries the full permissions of your account.
Connect the Scrape.ly MCP server once and your agent can run this actor as a tool. Pick your tool:
Fetch scrape.ly/agents.md and run roamandroof/landwatch-scraperPaste into Claude Code, Codex, Cursor or any AI agent. It signs you in once in the browser.
{
"mcpServers": {
"scrapely": {
"url": "https://api.scrape.ly/mcp?tools=actors,runs,storage,docs&actors=roamandroof/landwatch-scraper"
}
}
}No key in the file: your client opens the browser to sign you in the first time it connects.
Inputs the developer prepared for common jobs. Open one to see its input, then copy it to your account to run it as-is or adjust it.
Full description, amenities, price history, parcel ID, all photos and the seller profile for each listing.
Big searches are split by price automatically so you can collect more than LandWatch shows on one search.
Broker directory with phones, office address, license and active listing stats.
Paste a Find an Agent search URL by name.
Luxury ranches and estates with the listing broker's phone and profile on every row.
Search by a 5-digit US zip code.

Scrape Google Maps places for any search term and city, with no code or with one API call. A real run, its output, its log and its exact cost, plus the limits and the legal side.
Read the article
Paste an Amazon search or product URL into a ready-made Actor and get one row per product with price, ASIN, rating and review count. This guide covers the no-code steps, the API, ZIP code pricing, a real run and its cost.
Read the article
Scrape Google search results by query and country and get each results page as JSON: organic results with positions, People Also Ask and related searches. Run it without code or from Python, with a real run, the cost per page and Google's terms.
Read the articleScrape.ly gives you the infrastructure, the tooling, and the team to extract, process, and operationalize web data at any scale. Setup takes minutes. The advantage lasts forever.