Trip.com Hotels Scraper
Pricing
from $0.06 / 1,000 hotel result extracteds
Trip.com Hotels Scraper
Scrape public Trip.com hotel listings, prices, ratings, amenities, and URLs by destination.
Pricing
from $0.06 / 1,000 hotel result extracteds
Rating
0.0
(0)
Developer
Hanna Nosova
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Collect public Trip.com hotel listings for destinations, market research, price monitoring, and travel planning workflows.
What does Trip.com Hotels Scraper do?
Trip.com Hotels Scraper extracts public hotel listing data from Trip.com destination pages. Provide one or more Trip.com hotel list URLs and the actor returns hotel names, Trip.com URLs, ratings, review counts, images, addresses when visible, prices when visible, and source metadata.
Who is it for?
- 🧳 Travel agencies comparing hotel inventory across destinations
- 🏨 Hotel revenue teams monitoring nearby properties
- 📊 Tourism analysts building destination supply datasets
- 🛫 OTAs and metasearch teams checking public Trip.com coverage
- 💼 Consultants preparing travel market reports
Why use this actor?
Manual hotel research is slow. This actor turns public Trip.com destination pages into structured rows that can be exported to JSON, CSV, Excel, or consumed from the Apify API.
What data can you extract?
| Field | Description |
|---|---|
| hotelName | Hotel name shown on Trip.com |
| hotelUrl | Trip.com hotel detail URL |
| destination | Destination detected from the listing page |
| district | District or area when visible |
| starRating | Hotel star rating when available |
| guestRating | Guest review score |
| reviewCount | Number of reviews |
| price | Public price when visible in the page |
| currency | Parsed currency code when visible |
| taxesFeesText | Taxes or fee text when visible |
| amenities | Amenity labels when visible |
| imageUrl | Primary hotel image |
| address | Address or location text when visible |
| sourceUrl | Listing page URL scraped |
| scrapedAt | ISO timestamp of extraction |
How much does it cost to scrape Trip.com hotels?
The actor uses pay-per-event pricing: a small start event plus a per-result event for each saved hotel listing. Final tiered pricing is calculated from cloud validation runs before publication so users pay in proportion to the number of hotels collected.
Input
The main input is searchUrls, an array of public Trip.com hotel list URLs.
{"searchUrls": [{ "url": "https://www.trip.com/hotels/tokyo-hotels-list-228/" }],"maxItems": 20}
Optional stay details
You can provide optional stay parameters:
checkIninYYYY-MM-DDformatcheckOutinYYYY-MM-DDformatadultsrooms
These values are appended to the Trip.com URLs when dates are supplied.
Output example
{"hotelName": "KOKO HOTEL Tokyo Nishikasai","hotelUrl": "https://www.trip.com/hotels/tokyo-hotel-detail-129054778/koko-hotel-tokyo-nishikasai/","destination": "Tokyo","district": null,"starRating": 3,"guestRating": 8.4,"reviewCount": 842,"price": null,"currency": null,"taxesFeesText": null,"amenities": [],"imageUrl": "https://ak-d.tripcdn.com/images/0221712000oahl31u544A.jpg","address": null,"sourceUrl": "https://www.trip.com/hotels/tokyo-hotels-list-228/","scrapedAt": "2026-06-29T10:43:35.793Z"}
How to run
- Open the actor on Apify.
- Paste one or more Trip.com hotel list URLs.
- Set
maxItemsto the number of hotels you need. - Start the run.
- Export results from the Dataset tab.
Tips for best results
- Use destination listing pages, not the Trip.com home page.
- Start with a small
maxItemsvalue for your first run. - Use URLs copied from the Trip.com website in the same language/market you want to monitor.
- If prices are important, include Trip.com URLs where prices are visible to public visitors.
Integrations
Use this actor in workflows such as:
- Daily hotel market snapshots exported to Google Sheets
- Destination inventory monitoring in a BI dashboard
- Travel content enrichment pipelines
- Hotel competitor lists for revenue management
- Tourism research datasets for recurring reports
API usage with Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('<ANNA_APIFY_USERNAME>/trip-com-hotels-scraper').call({searchUrls: [{ url: 'https://www.trip.com/hotels/tokyo-hotels-list-228/' }],maxItems: 20,});console.log(run.defaultDatasetId);
API usage with Python
from apify_client import ApifyClientclient = ApifyClient('MY-APIFY-TOKEN')run = client.actor('<ANNA_APIFY_USERNAME>/trip-com-hotels-scraper').call(run_input={'searchUrls': [{'url': 'https://www.trip.com/hotels/tokyo-hotels-list-228/'}],'maxItems': 20,})print(run['defaultDatasetId'])
API usage with cURL
curl -X POST 'https://api.apify.com/v2/acts/<ANNA_APIFY_USERNAME>~trip-com-hotels-scraper/runs?token=MY-APIFY-TOKEN' \-H 'Content-Type: application/json' \-d '{"searchUrls":[{"url":"https://www.trip.com/hotels/tokyo-hotels-list-228/"}],"maxItems":20}'
MCP for AI agents
Connect this actor to Claude Desktop, Claude Code, or another MCP client through Apify MCP Server.
MCP URL:
https://mcp.apify.com/?tools=<ANNA_APIFY_USERNAME>/trip-com-hotels-scraper
Claude Code setup:
$claude mcp add apify-trip-hotels "https://mcp.apify.com/?tools=<ANNA_APIFY_USERNAME>/trip-com-hotels-scraper"
Claude Desktop JSON config:
{"mcpServers": {"apify-trip-hotels": {"url": "https://mcp.apify.com/?tools=<ANNA_APIFY_USERNAME>/trip-com-hotels-scraper"}}}
Example prompts:
- "Scrape 20 hotels from this Trip.com Tokyo URL and summarize the average guest rating."
- "Collect hotel names and Trip.com URLs for this destination and create a CSV."
- "Compare review counts for the top hotels in these Trip.com destination pages."
Legality and responsible use
This actor collects publicly available information from Trip.com pages. Always use the data responsibly, respect applicable laws, and review Trip.com's terms and local regulations for your use case.
Limits
Trip.com page content can vary by destination, locale, dates, and availability. Some fields may be null when Trip.com does not expose them publicly on the supplied page. Large runs should use sensible maxItems values.
FAQ and troubleshooting
Why are some prices empty?
Trip.com does not always expose public prices on every hotel list response. Add check-in and check-out dates or use a listing page where prices are visibly shown.
Why did I get zero results?
Check that your input URL is a Trip.com hotel list page such as /hotels/tokyo-hotels-list-228/. Home pages, search landing pages, and unsupported pages may not contain hotel cards.
Related scrapers
- https://apify.com/<ANNA_APIFY_USERNAME>/airbnb-listings-scraper
- https://apify.com/<ANNA_APIFY_USERNAME>/airbnb-reviews-scraper
- https://apify.com/<ANNA_APIFY_USERNAME>/agoda-reviews-scraper
Changelog
0.1
Initial version for public Trip.com hotel listing pages.
Dataset export
Results can be downloaded from Apify as JSON, CSV, XML, RSS, Excel, or HTML table. Use CSV for spreadsheets and JSON for application workflows.
Quality notes
The actor is designed for hotel listing rows. It does not scrape private account data, booking confirmations, user-only prices, or data behind a login.
Support
If a Trip.com URL does not work, share the run URL and the exact input so the actor can be improved.
Field coverage
Field coverage depends on the public content Trip.com returns for each destination page. The actor saves the source URL and scrape timestamp so records can be audited later.
Best practices
Run smaller recurring jobs instead of very large one-off jobs when monitoring destinations over time. This makes changes easier to compare and keeps individual runs fast.
Example destinations
Tokyo, Bangkok, London, Paris, New York, Singapore, Seoul, and other Trip.com destination pages can be supplied as long as they use public hotel list URLs.
Data freshness
Every run fetches current public page content from Trip.com. The actor does not reuse old dataset rows between runs.
Automation ideas
Schedule this actor daily or weekly, send the dataset to a database, and compare rating or price changes over time.
Privacy
The actor extracts hotel listing information only. It does not collect user accounts, private bookings, or payment data.