# Loopnet Listings Scraper (`piotrv1001/loopnet-listings-scraper`) Actor

The LoopNet Listings Scraper enables fast and efficient data extraction from LoopNet search URLs. It gathers key property details, including price, listing agent, location, images, and URLs. Ideal for real estate investors, market analysts, and commercial property researchers.

- **URL**: https://apify.com/piotrv1001/loopnet-listings-scraper.md
- **Developed by:** [FalconScrape](https://apify.com/piotrv1001) (community)
- **Categories:** Real estate, Lead generation, Jobs
- **Stats:** 254 total users, 4 monthly users, 100.0% runs succeeded, 4 bookmarks
- **User rating**: 1.00 out of 5 stars

## Pricing

$7.00 / 1,000 listings

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

### 🚀 LoopNet Listings Scraper

Easily extract commercial real estate listings from LoopNet. The **LoopNet Listings Scraper** allows you to gather structured property data from search result pages for market analysis and investment research.

### ✨ Features

- 🏢 **Comprehensive Listing Data**: Retrieve property prices, seller details, location, images, and direct listing URLs.
- 🔍 **Search-Based Extraction**: Provide LoopNet search result page URLs to extract relevant property listings.
- ⚡ **Fast & Efficient**: Quickly gather real estate data for investment insights and competitive analysis.

### 🛠️ How It Works

1. **Enter LoopNet Search URLs** – Provide a list of LoopNet search result page URLs.
2. **Run the Scraper** – Start the process and receive structured property data instantly.

### 📊 Sample Output Data

The scraper provides structured JSON output with key listing details. Example:

```json
[
    {
        "name": "1170 Harrison St, San Francisco, CA 94103",
        "position": 19,
        "url": "https://www.loopnet.com/Listing/1170-Harrison-St-San-Francisco-CA/28753402/",
        "image": "https://images1.loopnet.com/i2/g6sarXbDlHiN_avTXX850NkpxUtVOm2xew9rRuaf0KM/1/office-property-for-sale-1170-harrison-st-san-francisco-ca-94103.jpg",
        "description": "26,067 SF Office Building Offered at $20,000,000 in San Francisco, CA 94103",
        "price": "20000000",
        "minPrice": null,
        "currency": "USD",
        "offeredBy": [
            {
                "name": "Zach Haupert",
                "jobTitle": "Commercial Real Estate Broker",
                "organization": "Touchstone Commercial Partners, Inc."
            },
            {
                "name": "Michael Sanberg",
                "jobTitle": "Commercial Real Estate Broker",
                "organization": "Touchstone Commercial Partners, Inc."
            },
            {
                "name": "Trevor Gudim",
                "jobTitle": "Commercial Real Estate Broker",
                "organization": "Touchstone Commercial Partners, Inc."
            }
        ],
        "availability": null,
        "validThrough": null,
        "additionalType": null,
        "additionalProperty": null,
        "spatialCoverage": null
    },
    {
        "name": "11160 Southwest Fwy",
        "position": 17,
        "url": "https://www.loopnet.com/Listing/11160-Southwest-Fwy-Houston-TX/34791891/",
        "image": "https://images1.loopnet.com/i2/zn1BQwgIwbiyQvbwZdBWPwYkor009Fyw53rie-D-Wq4/1/hospitality-property-for-sale-11160-southwest-fwy-houston-tx-77031.jpg",
        "description": "REO Holiday Inn Houston SW. Auction ends 04/09/2025 12:00:00 -04:00.",
        "price": null,
        "minPrice": null,
        "currency": "USD",
        "offeredBy": [],
        "availability": "https://schema.org/InStock",
        "validThrough": "2025-04-09T12:00:00-04:00",
        "additionalType": "Hospitality",
        "additionalProperty": {
            "name": "Square Footage",
            "value": "111629",
            "unitText": "SF"
        },
        "spatialCoverage": {
            "name": "11160 Southwest Fwy",
            "address": {
                "addressLocality": "Houston",
                "addressRegion": "TX",
                "postalCode": "77031"
            }
        }
    }
]
```

Gain valuable real estate insights with **LoopNet Listings Scraper** today! 🚀

# Actor input Schema

## `searchUrls` (type: `array`):

Add URL(s) of search pages to extract property data.

## Actor input object example

```json
{
  "searchUrls": [
    "https://www.loopnet.com/search/commercial-real-estate/ca/for-sale/?sk=e9fe261cd0d1e7818d3b97e3a0ad7fc1&e=u",
    "https://www.loopnet.com/search/commercial-real-estate/tx/for-sale/?sk=1ff2e71097507fb8dc56538d9837600c&e=u"
  ]
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "searchUrls": [
        "https://www.loopnet.com/search/commercial-real-estate/ca/for-sale/?sk=e9fe261cd0d1e7818d3b97e3a0ad7fc1&e=u",
        "https://www.loopnet.com/search/commercial-real-estate/tx/for-sale/?sk=1ff2e71097507fb8dc56538d9837600c&e=u"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("piotrv1001/loopnet-listings-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "searchUrls": [
        "https://www.loopnet.com/search/commercial-real-estate/ca/for-sale/?sk=e9fe261cd0d1e7818d3b97e3a0ad7fc1&e=u",
        "https://www.loopnet.com/search/commercial-real-estate/tx/for-sale/?sk=1ff2e71097507fb8dc56538d9837600c&e=u",
    ] }

# Run the Actor and wait for it to finish
run = client.actor("piotrv1001/loopnet-listings-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "searchUrls": [
    "https://www.loopnet.com/search/commercial-real-estate/ca/for-sale/?sk=e9fe261cd0d1e7818d3b97e3a0ad7fc1&e=u",
    "https://www.loopnet.com/search/commercial-real-estate/tx/for-sale/?sk=1ff2e71097507fb8dc56538d9837600c&e=u"
  ]
}' |
apify call piotrv1001/loopnet-listings-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=piotrv1001/loopnet-listings-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/DTEoWzKxjYtBZzfhS/builds/m9xZWk2Wu6fakuRXs/openapi.json
