# Tripadvisor Reviews Scraper (`scrapesmith/my-actor-2`) Actor

🔥 $0.40/1000⚡ All in One Fast & Affordable Tripadvisor Reviews Scraper – Extract hotel, restaurant, and attraction reviews with ratings, dates, user profiles & more from any Tripadvisor page or search. No proxies & no cookies needed.

- **URL**: https://apify.com/scrapesmith/my-actor-2.md
- **Developed by:** [Scrape Smith](https://apify.com/scrapesmith) (community)
- **Categories:** Travel, Developer tools, Automation
- **Stats:** 1 total users, 1 monthly users, 0.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.40 / 1,000 results

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.

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

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
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.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use 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

## TripAdvisor Reviews Scraper

Collect reviews from any TripAdvisor hotel, restaurant, or attraction and export them as clean, structured data. Paste a link, choose how many reviews you want, and download the results as JSON, CSV, or Excel. No proxies, no login, no code.

### What it does

Give the scraper one or more TripAdvisor page URLs and it pulls the reviews for each place — the full review text, star rating, category sub-ratings, the reviewer's profile and location, trip type, visit and publish dates, photo counts, and whether management replied. It works on every regional TripAdvisor site (.com, .co.uk, .fr, .de, .es, .it, and the rest) and in any review language.

You decide the depth. Ask for the latest 100 reviews as a quick sample, or set the number to several thousand and the scraper keeps paginating until it reaches your target or runs out of reviews to collect.

### What you get

Each review comes back as one row with these fields:

- Review title, full text, and overall star rating
- Category sub-ratings (service, cleanliness, value, location, rooms, food, and more, when the reviewer left them)
- Publish date and the month of the visit
- Trip type: solo, couple, family, business, or friends
- Review language and helpful-vote count
- Reviewer name, username, hometown, total contributions, profile link, and avatar
- Photo count, whether the owner responded, and a direct link to the review
- The place name and its total review count

Every value comes straight from the page. Fields are only ever blank when TripAdvisor itself has nothing there — there is no guessed or filled-in data.

### Who it's for

Hotels and restaurants tracking guest sentiment, brands watching their reputation over time, analysts benchmarking competitors, researchers gathering large multilingual samples, and teams building review dashboards or training data for AI models.

### Getting started

1. Open a TripAdvisor hotel, restaurant, or attraction page and copy its URL.
2. Paste one or many URLs into the input.
3. Set how many reviews you want per place.
4. Run it, then export to JSON, CSV, Excel, or XML — or pull the data through the Apify API.

You can also schedule it to run on a regular basis to keep a fresh feed of new reviews.

### Pricing

$0.40 per 1,000 reviews, with no proxy fees and no monthly minimum. You only pay for reviews you actually receive — failed or empty URLs cost nothing.

### FAQ

**Do I need an account or login?** No.

**Do I need proxies?** No — it runs without them, so there are no proxy fees.

**Can I scrape many places at once?** Yes, paste a list of URLs into a single run.

**How deep can it go on one place?** As deep as the place allows — set a high number and it pages through thousands of reviews.

**Does it work outside the US?** Yes, on any regional TripAdvisor domain and in any language.

**Will empty URLs cost me?** No — billing is per review returned.

### Note

This tool collects only publicly available reviews that anyone can see on TripAdvisor without logging in. Use the data responsibly and within applicable laws and TripAdvisor's terms.

# Actor input Schema

## `urls` (type: `array`):

TripAdvisor place URLs to scrape reviews from. Supports Hotel_Review-, Restaurant_Review-, Attraction_Review- pages from any TripAdvisor regional site (.com, .co.uk, .fr, .de, .es, .it, etc.).
## `max_reviews` (type: `integer`):

How many reviews to scrape per URL. Default 100. Set higher to go deeper (e.g. 5000, 50000); the scraper paginates until it hits this number or runs out of reviews.

## Actor input object example

```json
{
  "urls": [
    "https://www.tripadvisor.com/Attraction_Review-g187147-d188151-Reviews-Eiffel_Tower-Paris_Ile_de_France.html",
    "https://www.tripadvisor.com/Hotel_Review-g60763-d113317-Reviews-The_Plaza-New_York_City_New_York.html",
    "https://www.tripadvisor.com/Restaurant_Review-g60763-d426338-Reviews-Eleven_Madison_Park-New_York_City_New_York.html"
  ],
  "max_reviews": 100
}
````

# 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 = {
    "urls": [
        "https://www.tripadvisor.com/Attraction_Review-g187147-d188151-Reviews-Eiffel_Tower-Paris_Ile_de_France.html",
        "https://www.tripadvisor.com/Hotel_Review-g60763-d113317-Reviews-The_Plaza-New_York_City_New_York.html",
        "https://www.tripadvisor.com/Restaurant_Review-g60763-d426338-Reviews-Eleven_Madison_Park-New_York_City_New_York.html"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("scrapesmith/my-actor-2").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 = { "urls": [
        "https://www.tripadvisor.com/Attraction_Review-g187147-d188151-Reviews-Eiffel_Tower-Paris_Ile_de_France.html",
        "https://www.tripadvisor.com/Hotel_Review-g60763-d113317-Reviews-The_Plaza-New_York_City_New_York.html",
        "https://www.tripadvisor.com/Restaurant_Review-g60763-d426338-Reviews-Eleven_Madison_Park-New_York_City_New_York.html",
    ] }

# Run the Actor and wait for it to finish
run = client.actor("scrapesmith/my-actor-2").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 '{
  "urls": [
    "https://www.tripadvisor.com/Attraction_Review-g187147-d188151-Reviews-Eiffel_Tower-Paris_Ile_de_France.html",
    "https://www.tripadvisor.com/Hotel_Review-g60763-d113317-Reviews-The_Plaza-New_York_City_New_York.html",
    "https://www.tripadvisor.com/Restaurant_Review-g60763-d426338-Reviews-Eleven_Madison_Park-New_York_City_New_York.html"
  ]
}' |
apify call scrapesmith/my-actor-2 --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=scrapesmith/my-actor-2",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Tripadvisor Reviews Scraper",
        "description": "🔥 $0.40/1000⚡ All in One Fast & Affordable Tripadvisor Reviews Scraper – Extract hotel, restaurant, and attraction reviews with ratings, dates, user profiles & more from any Tripadvisor page or search. No proxies & no cookies needed.",
        "version": "0.0",
        "x-build-id": "E0tm1z9fNKbLmbJT4"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/scrapesmith~my-actor-2/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-scrapesmith-my-actor-2",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/scrapesmith~my-actor-2/runs": {
            "post": {
                "operationId": "runs-sync-scrapesmith-my-actor-2",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/scrapesmith~my-actor-2/run-sync": {
            "post": {
                "operationId": "run-sync-scrapesmith-my-actor-2",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "urls"
                ],
                "properties": {
                    "urls": {
                        "title": "TripAdvisor URLs",
                        "type": "array",
                        "description": "TripAdvisor place URLs to scrape reviews from. Supports Hotel_Review-, Restaurant_Review-, Attraction_Review- pages from any TripAdvisor regional site (.com, .co.uk, .fr, .de, .es, .it, etc.).",
                        "items": {
                            "type": "string"
                        }
                    },
                    "max_reviews": {
                        "title": "Reviews per Place",
                        "minimum": 1,
                        "type": "integer",
                        "description": "How many reviews to scrape per URL. Default 100. Set higher to go deeper (e.g. 5000, 50000); the scraper paginates until it hits this number or runs out of reviews.",
                        "default": 100
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
