KKday Tours Scraper avatar

KKday Tours Scraper

Pricing

Pay per usage

Go to Apify Store
KKday Tours Scraper

KKday Tours Scraper

Scrape KKday tours, travel activities, sightseeing attractions, day trips, and vacation experiences. Extract tour prices, destinations, ratings, reviews, itineraries, availability, and booking links. Ideal for travel data extraction, price tracking, tourism research, and AI datasets.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Shahid Irfan

Shahid Irfan

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

6 days ago

Last modified

Categories

Share

What does KKday Tours Scraper do?

KKday Tours Scraper collects tour, activity, and attraction-ticket listings from KKday category pages. Paste one or more KKday category listing URLs, choose how the listings should be sorted, set a result limit, and the Actor returns a clean dataset with product titles, prices, ratings, booking counts, images, destinations, and product links. It works with KKday locale paths such as /en/, /zh-tw/, /ja/, /ko/, and /en-sg/, so you can collect listings in the language your audience reads.

Use it for travel market research, activity and attraction price monitoring, destination content, competitor tracking, or building AI-ready datasets from public KKday listings.

Why use KKday Tours Scraper?

  • Structured listing data - Collect product titles, descriptions, prices, currencies, ratings, booking counts, and product URLs without manual copy-paste.
  • Localized results - Use a locale URL to collect listings in a specific language, including translated product titles and category names.
  • Flexible ordering - Sort by featured, most popular, price low to high, price high to low, highest rated, or newest.
  • Multi-listing runs - Process several category listing URLs in one run, across different destinations and locales.
  • Pagination built in - The Actor follows each listing page by page until it reaches your result limit or the last page.
  • Automation-ready output - Export results to JSON, CSV, Excel, XML, or send them to other tools through Apify integrations.

What data can you extract from KKday?

FieldDescription
product_idKKday product identifier
titleProduct title
descriptionShort product introduction
urlFull product page URL
imagePrimary product image URL
imagesAll product image URLs
priceLowest price for the product
price_minLowest price for the product
price_maxHighest price for the product
original_priceOfficial price before discount
currencyCurrency code for the price
ratingAverage product rating from 0 to 5
rating_countNumber of ratings for the product
ordersBooking count label such as 300K+
destinationsDestinations linked to the product, with code and name
display_tagsLabels shown on the listing card, such as Instant Confirmation
category_nameLocation and category name of the listing
locationLocation name of the listing

How to use KKday Tours Scraper

  1. Open the Actor on Apify Store.
  2. Paste one or more KKday category listing URLs into KKday listing URLs.
  3. Choose a value in Sort results by, or keep the default featured order.
  4. Set Maximum results and, if needed, Maximum pages per listing.
  5. Run the Actor.
  6. Download the dataset or connect it to your workflow.

Input Parameters

ParameterTypeRequiredDefaultDescription
startUrlsArrayNoExample Tokyo attraction URLOne or more KKday category listing URLs. Any KKday locale path works.
sortByStringNoprecListing order: prec (featured), omdesc (most popular), pasc (price low to high), pdesc (price high to low), sdesc (highest rated), or cdesc (newest).
results_wantedIntegerNo20Maximum number of listings saved across all listing URLs.
max_pagesIntegerNo10Safety cap on pages fetched per listing. KKday returns 10 listings per page.
proxyConfigurationObjectNoApify residential proxyProxy settings. Residential proxy is enabled by default because KKday blocks direct requests from datacenter IPs.

Output Data

FieldTypeDescription
product_idIntegerKKday product identifier
product_oidIntegerKKday product option identifier
titleStringProduct title
descriptionStringShort product introduction
urlStringFull product page URL
imageStringPrimary product image URL
imagesArrayProduct image URLs
priceNumberLowest price for the product
price_minNumberLowest price for the product
price_maxNumberHighest price for the product
original_priceNumberOfficial price before discount
discountNumberDiscount ratio reported by KKday
currencyStringCurrency code
ratingNumberAverage product rating from 0 to 5
rating_countIntegerNumber of ratings
ordersStringBooking count label
sale_statusIntegerKKday sale status code
earliest_sale_dateStringEarliest available date in YYYYMMDD format
is_tourism_productBooleanTrue when KKday marks the product as a tourism product
is_kkday_best_routeBooleanTrue when KKday marks the product as a best route
is_marketplaceBooleanTrue when the product comes from the KKday marketplace
is_zero_priceBooleanTrue when the product has a zero price
is_display_priceBooleanTrue when KKday displays a price
categoryStringKKday main product category code
sub_categoriesArrayKKday product sub-category codes
display_tagsArrayLabels shown on the listing card
destinationsArrayDestinations linked to the product, with code and name
recommend_tagsArrayRecommendation labels
listing_urlStringCategory listing URL supplied in the input
locationStringLocation name of the listing
location_codeStringKKday destination code of the listing
category_nameStringLocation and category name of the listing
localeStringLocale used for the listing
sortStringSort order used for the listing
pageIntegerListing page the product was found on
positionIntegerRank of the product within the sorted listing
scraped_atStringISO timestamp for when the record was collected

Usage Examples

Basic listing collection

Collect the first set of listings from one category page:

{
"startUrls": ["https://www.kkday.com/en/category/jp-tokyo/attraction-tickets/list"],
"results_wanted": 50
}

Multiple destinations in one run

Collect listings from more than one destination or category in the same run:

{
"startUrls": [
"https://www.kkday.com/en/category/jp-tokyo/attraction-tickets/list",
"https://www.kkday.com/en/category/jp-osaka/attraction-tickets/list",
"https://www.kkday.com/en/category/jp-tokyo/day-tours/list"
],
"sortBy": "omdesc",
"results_wanted": 100,
"max_pages": 5
}

Localized, price-first collection

Use a locale URL and order by price to compare the cheapest options:

{
"startUrls": ["https://www.kkday.com/ja/category/jp-osaka/attraction-tickets/list"],
"sortBy": "pasc",
"results_wanted": 40,
"max_pages": 4
}

Keyword-filtered listing

Add a keyword query parameter to the listing URL to narrow results:

{
"startUrls": ["https://www.kkday.com/en/category/jp-tokyo/attraction-tickets/list?keyword=disney"],
"sortBy": "sdesc",
"results_wanted": 30
}

Sample Output

{
"product_id": 133300,
"product_oid": 133300,
"title": "SHIBUYA SKY Observation Deck Tickets in Tokyo",
"description": "Book SHIBUYA SKY tickets in Tokyo with QR code entry. Compare available time slots, plan sunset views, and check rooftop weather rules before you visit.",
"url": "https://www.kkday.com/en/product/133300-shibuya-sky-observatory-e-ticket-tokyo",
"image": "https://image.kkday.com/image/get/w_600%2Cc_fit/s1.kkday.com/product_133300/20220915065553_dvR7F/jpg",
"images": ["https://image.kkday.com/image/get/w_600%2Cc_fit/s1.kkday.com/product_133300/20220915065553_dvR7F/jpg"],
"price": 17.09,
"price_min": 17.09,
"price_max": 21.52,
"original_price": 17.09,
"discount": 0,
"currency": "USD",
"rating": 4.7,
"rating_count": 14748,
"orders": "300K+",
"sale_status": 1,
"earliest_sale_date": "20261019",
"is_tourism_product": true,
"is_kkday_best_route": false,
"is_marketplace": false,
"is_zero_price": false,
"is_display_price": false,
"category": "CATEGORY_002",
"display_tags": ["Free cancellation 1 day before", "Instant Confirmation"],
"destinations": [{ "code": "D-JP-3654", "name": "Shibuya" }],
"recommend_tags": ["5000+ sold in 30 days"],
"listing_url": "https://www.kkday.com/en/category/jp-tokyo/attraction-tickets/list",
"location": "Tokyo",
"location_code": "D-JP-3261",
"category_name": "Attraction Tickets",
"locale": "en",
"sort": "prec",
"page": 1,
"position": 1,
"scraped_at": "2026-10-18T12:48:34.227Z"
}

Tips for Best Results

  • Paste complete category listing URLs, for example https://www.kkday.com/en/category/jp-tokyo/attraction-tickets/list. The /category/ and /category-nuxt/ paths both work.
  • Choose the locale path that matches the language you need. The /en/ path usually returns English titles, while other locale paths return localized titles and category names.
  • Keep the result limit small for a first test, then raise it after you confirm the dataset looks right.
  • Use pasc or pdesc for price comparisons, sdesc to surface the highest rated products, and cdesc to follow newly added products.
  • Set max_pages high enough to reach your target count. Each page returns 10 listings, and the Actor stops automatically at the last page.
  • Some listings have no rating, no booking count, or no sub-category. Those fields stay empty when KKday does not publish them.
  • Keep the default residential proxy enabled. KKday blocks direct requests from datacenter IPs, and disabling the proxy can cause blocked or empty runs.

Integrations

  • Google Sheets - Send listing data to a spreadsheet for analysis.
  • Webhooks - Trigger a workflow after each run.
  • Make or Zapier - Connect results to no-code automations.
  • API - Read the dataset from your own systems.
  • CSV, Excel, JSON, XML - Download the dataset in the format you need.

Frequently Asked Questions

Can I export KKday listings to CSV or Excel?

Yes. Apify datasets can be downloaded as CSV, Excel, JSON, XML, and other supported formats from the dataset tab.

Can I scrape more than one KKday destination at once?

Yes. Add multiple category listing URLs to startUrls. Each saved listing includes its listing URL, location, and category name so you can tell the sources apart.

Can I get listings in a specific language?

Yes. Use the locale path in the listing URL. For example, /en/ returns English listing titles, while /ja/, /ko/, /zh-tw/, and other locale paths return that locale's titles and category names.

How many listings can I collect per category?

KKday returns 10 listings per page. Raise max_pages to reach more pages, and set results_wanted to the total number of listings you want across all URLs. The Actor stops automatically at the last page of a category.

Can I sort listings by price, rating, or recency?

Yes. Use sortBy to choose featured, most popular, price low to high, price high to low, highest rated, or newest order.

Can I filter listings by keyword?

Yes. Add a keyword query parameter to the listing URL, for example .../list?keyword=disney, and the Actor returns matching listings.

Why are some fields empty?

KKday does not publish every field for every listing. Listings without a rating, without a booking count, or without a sub-category leave those fields empty.

Can I run this Actor on a schedule?

Yes. You can schedule the Actor in Apify Console to refresh listing data hourly, daily, weekly, or at another interval.

Scraping publicly available listing data can be legal, but you are responsible for complying with applicable laws, KKday terms, and privacy rules. Use the data responsibly.

Support

For issues, feature requests, or custom Actor work, use the Issues tab on the Actor page or contact the developer through Apify.

This Actor is designed for legitimate collection of publicly available travel listing data. Users are responsible for using the data responsibly and complying with applicable laws, website terms, and privacy rules.