LoopNet Scraper — Commercial Listings for Sale & Lease avatar

LoopNet Scraper — Commercial Listings for Sale & Lease

Pricing

from $1.50 / 1,000 listings

Go to Apify Store
LoopNet Scraper — Commercial Listings for Sale & Lease

LoopNet Scraper — Commercial Listings for Sale & Lease

Extract commercial property listings from LoopNet search results. Each row has price, size, cap rate when shown, broker, brokerage, and address for sale, lease, or auction searches.

Pricing

from $1.50 / 1,000 listings

Rating

0.0

(0)

Developer

Andrej Kiva

Andrej Kiva

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Disclaimer: Unofficial tool. Not affiliated with, sponsored by, or endorsed by the listing site or its affiliates. Rows come from public search results. No login. You are responsible for complying with applicable law and the site’s terms. No warranty on accuracy or availability.

LoopNet scraper for US commercial property for sale, for lease, or at auction. Each row has asking price, size, cap rate when the card states one, broker, brokerage, address, and map coordinates. Use it as a LoopNet API alternative from Python, Node.js, cURL, or Apify MCP.

Best for: sale and lease comps in one city, broker lists from public search cards, and a scheduled check that saves only new listing ids.

ActorRole
LoopNet Scraper ◄── you are hereUS commercial sale, lease, and auctions
Subito Real Estate ScraperItaly sale and rent
realestate.com.au ScraperAustralia sold comps and listing monitor

When to use this Actor

  • City search — Set a location such as Austin, TX and choose sale, lease, or auctions.
  • A filtered search you already built — Paste the search URL. Location fields are ignored when Start URLs is set.
  • New-listing monitor — Schedule the same search. Later runs save listing ids that were not stored last time. A quiet tick writes zero rows.
  • Broker and address from the card — Name, brokerage, price, and size are taken from the search result. This run does not open each property page.

When not to use this Actor

  • Residential portals — This Actor reads commercial search results. For Italy sale and rent, use Subito Real Estate Scraper. For Australia sold comps, use realestate.com.au Scraper.
  • Phone, email, or a full rent roll — Those fields are not on the search card. This Actor does not log in and does not open detail pages.
  • A national dump in one run — Cap maxItems. Split by city instead of paging an entire country.

Key features

  • Search cards — One page request returns about 25 listings. Default 256 MB.
  • Sale, lease, and auctions — City plus transaction, or a pasted search URL.
  • Price, size, cap rate — Cap rate is filled when the card summary states one.
  • Broker and brokerage — Names shown on the public card.
  • Monitor — Named key-value store of listing ids already saved for that search.

Input

FieldRequiredDefaultWhat it does
LocationNoAustin, TXCity and state. Ignored when Start URLs is set.
Sale, lease, or auctionNoFor saleSearch type for the location.
Property pathNoall commercialOptional path segment such as office-space or land.
Start URLsNoemptySearch URLs. Overrides the fields above.
Max listingsNo25Cap across all searches. Maximum 250.
Monitor modeNooffSave only listing ids not seen on the previous run of this search.
ProxyNoUnblocker, USRequired. Datacenter and residential IPs are denied before the page loads.
{
"location": "Austin, TX",
"transaction": "for-sale",
"maxItems": 25,
"monitorMode": false,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["UNBLOCKER"],
"apifyProxyCountry": "US"
}
}

Output

One dataset row per listing.

FieldMeaning
listingIdListing id
urlListing URL
nameAddress line from the card
city, state, zip, countryLocation
transactionfor-sale, for-lease, or auctions
propertyType, spaceUseType and use on the card
price, priceText, currencyAsking price
sizeText, sizeSqftSize
capRatePercent, when the summary states a cap rate
brokerName, brokeragePublic card contacts
latitude, longitudeMap point
descriptionShort summary
imagePrimary photo
sourceUrlSearch page
scrapedAtUTC timestamp
{
"listingId": "42186648",
"url": "https://www.loopnet.com/Listing/8701-Menchaca-Rd-Austin-TX/42186648/",
"name": "8701 Menchaca Rd, Austin, TX 78748",
"city": "Austin",
"state": "TX",
"zip": "78748",
"transaction": "for-sale",
"propertyType": "Office",
"price": 3400000,
"currency": "USD",
"sizeSqft": 6368,
"capRate": 7.76,
"brokerName": "Jackson Williams",
"brokerage": "Quest Realty"
}

Use cases

  • Pull office and retail listings for sale in one metro and compare asking price and cap rate in a spreadsheet.
  • Build a broker list from the names printed on public search cards.
  • Schedule a morning run in monitor mode and export only listing ids that were not in yesterday’s file.
  • Feed address, price, and size into an internal comps sheet. For Italian residential inventory, continue with Subito Real Estate Scraper.

Integration examples

Replace APIFY_TOKEN. The slug below is the Store name.

Node.js

import { ApifyClient } from "apify-client";
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor("crawloop/loopnet-scraper").call({
location: "Austin, TX",
transaction: "for-sale",
maxItems: 25,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Python

import os
from apify_client import ApifyClient
client = ApifyClient(os.environ["APIFY_TOKEN"])
run = client.actor("crawloop/loopnet-scraper").call(run_input={
"location": "Austin, TX",
"transaction": "for-lease",
"maxItems": 25,
})
items = client.dataset(run["defaultDatasetId"]).list_items().items
print(len(items))

cURL

curl -X POST "https://api.apify.com/v2/acts/crawloop~loopnet-scraper/runs?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"location":"Austin, TX","transaction":"for-sale","maxItems":10}'

MCP and AI assistants

Use this Actor from AI tools via Apify MCP. Connect your Apify account, then call this Actor by its Store name crawloop/loopnet-scraper.

Example prompts:

  • "Run LoopNet Scraper for Austin, TX for-sale listings and return the top 20 rows as JSON"
  • "Scrape LoopNet lease listings in Chicago and summarize price, size, and broker"
  • "Run LoopNet Scraper in monitor mode for Dallas offices, then use Subito Real Estate Scraper when the next market is Italy"

Suite next step

This Actor covers US commercial search cards. For residential markets already on the Store, run Subito Real Estate Scraper for Italy or realestate.com.au Scraper for Australia sold comps.

FAQ

Does this open every property page? No. Rows are the search cards: price, size, summary, broker name, and brokerage. Phone and email are not on that card.

Why is a proxy required? The search page is denied from datacenter and ordinary residential IPs. The default proxy is Apify Unblocker in the US.

What does monitor mode skip? Listing ids already stored for that same search URL. Change the city or the transaction and it is a new cursor. A run with no new ids writes zero rows.