Rating 4.7
Rating 4.7
Rating 4.5
Rating 4.7
Rating 4.7
Disclaimer : Real Data API only extracts publicly available data while maintaining a strict policy against collecting any personal or identity-related information.
The Pickupp scraper powered by Real Data API enables businesses to scrape Pickupp restaurant data efficiently and in real-time. With the Pickupp data scraping service, you can collect detailed restaurant profiles, delivery fees, ratings, and promotions, along with complete menu information using the Pickupp menu scraper. The Real Data API provides structured JSON output, supporting parameters like cuisine type, delivery zones, and price filters for targeted extraction. Developers can schedule automated scrapes, integrate data into POS systems, or sync with analytics tools for market insights. The API handles pagination, concurrency, and rate limits for large-scale operations while ensuring secure access via API keys. This makes it a powerful tool for keeping restaurant listings, menus, and pricing constantly up to date.
The Pickupp scraper is a specialized tool designed to scrape Pickupp restaurant data for business intelligence, competitor analysis, and menu tracking. Using the Pickupp data scraping service, it collects structured information such as restaurant details, delivery options, ratings, and menu items via automated crawling. The Pickupp menu scraper navigates restaurant listings, extracts item descriptions, prices, and promotions, and returns them in machine-readable formats like JSON or CSV. The Pickupp restaurant scraper can be customized for different regions, including the Pickupp scraper Singapore, to target specific locations. For seamless workflows, Pickupp API integration allows you to extract real-time Pickupp data directly into dashboards or POS systems, enabling instant access to updated food listings and operational insights.
Businesses use the Pickupp scraper to scrape Pickupp restaurant data for competitive pricing, menu optimization, and delivery trend analysis. The Pickupp data scraping service helps restaurants and aggregators monitor market changes and identify top-performing items. Using a Pickupp menu scraper, companies can track seasonal dishes, promotions, and customer preferences to adjust their strategies. The Pickupp restaurant scraper offers valuable insights into delivery times, fees, and availability, making it ideal for the Pickupp scraper Singapore market. With Pickupp API integration, brands can extract real-time Pickupp data and integrate it with sales analytics. Such Pickupp data extraction supports the development of a comprehensive Food Dataset and powers applications through a robust Food Data Scraping API.
Using a Pickupp scraper or Pickupp data scraping service to scrape Pickupp restaurant data is generally legal if it complies with local laws and the platform’s terms of service. Businesses should ensure the Pickupp menu scraper only accesses publicly available information without bypassing security. The Pickupp restaurant scraper is best used for market research and analysis, particularly in the Pickupp scraper Singapore market, with respect for intellectual property. When applying Pickupp API integration to extract real-time Pickupp data, it’s important to follow Pickupp’s API guidelines. Responsible Pickupp data extraction ensures compliance while still creating valuable Food Dataset resources and enabling ethical use of a Food Data Scraping API for analysis and automation.
To scrape Pickupp restaurant data, you can use the Pickupp scraper or partner with a Pickupp data scraping service for advanced capabilities. A Pickupp menu scraper can capture detailed menu items, prices, and availability, while the Pickupp restaurant scraper gathers location and rating information. The Pickupp scraper Singapore version targets regional data for local insights. Through Pickupp API integration, you can extract real-time Pickupp data into your systems for instant analysis. Automated Pickupp data extraction tools feed a Food Dataset, which can be enriched via a Food Data Scraping API for analytics, delivery optimization, or competitive research. Scheduling regular extractions ensures your business decisions are based on the latest market updates.
If you need more than the Pickupp scraper, several Pickupp data scraping service providers can scrape Pickupp restaurant data alongside other delivery platforms for broader market insights. Beyond the Pickupp menu scraper, multi-platform solutions combine Pickupp restaurant scraper capabilities with those of the Pickupp scraper Singapore for regional targeting. APIs like Pickupp API integration allow you to extract real-time Pickupp data in sync with competitor data. Alternative Pickupp data extraction tools can build a richer Food Dataset by pulling from multiple marketplaces. Using a Food Data Scraping API, you can integrate, filter, and analyze delivery platform data to improve pricing strategies, menu planning, and customer engagement.
Our data solutions offer flexible input options to suit various business needs, enabling seamless integration for analytics and automation. You can connect through APIs, upload CSV or Excel files, or integrate cloud storage such as Google Drive, Dropbox, or AWS S3. For advanced workflows, direct database connections via MySQL, PostgreSQL, or MongoDB are supported, ensuring efficient data ingestion. Real-time streaming inputs allow continuous updates, while batch uploads handle large datasets with ease. Custom connectors can be developed to integrate with niche platforms, ensuring compatibility with any data source. Whether pulling structured datasets from an internal ERP or unstructured feeds from scraping services, our system processes and normalizes data quickly—turning raw information into actionable insights without disrupting your existing workflows.
import requests
import json
import pandas as pd
from bs4 import BeautifulSoup
# -------------------------------
# CONFIGURATION
# -------------------------------
BASE_URL = "https://www.pickupp.io" # Base URL for the platform
OUTPUT_FILE = "pickupp_restaurants.csv"
# -------------------------------
# FUNCTION: Extract restaurant data
# -------------------------------
def extract_restaurant_data(restaurant):
return {
"Name": restaurant.get("name"),
"Brand": restaurant.get("brand"),
"Outlet": restaurant.get("outlet_name"),
"Address": restaurant.get("address", {}).get("street"),
"City": restaurant.get("address", {}).get("city"),
"PostalCode": restaurant.get("address", {}).get("postal_code"),
"Country": restaurant.get("address", {}).get("country"),
"Rating": restaurant.get("rating"),
"ReviewCount": restaurant.get("review_count"),
"Cuisines": ", ".join(restaurant.get("cuisines", [])),
"MinOrder": restaurant.get("min_order"),
"DeliveryFee": restaurant.get("fees", {}).get("delivery_fee"),
"IsOpen": restaurant.get("is_open_now"),
"LeadTime": restaurant.get("lead_time_min"),
"MenuURL": restaurant.get("source_page")
}
# -------------------------------
# MAIN SCRIPT
# -------------------------------
if __name__ == "__main__":
# Load the provided JSON data
data = {
"scrape_metadata": {
"platform": "Pickupp",
"country": "SG",
"currency": "SGD",
"query": {
"search_term": "chicken rice",
"delivery_postal_code": "069542",
"date": "2025-08-14",
"time": "20:30"
},
"executed_at": "2025-08-14T14:05:12Z",
"source_url": "https://www.pickupp.io",
"pagination": { "page": 1, "per_page": 25, "total_results": 3 }
},
"records": [
{
"restaurant_id": "pickupp_102938",
"name": "Hainan Delight",
"brand": "Hainan Delight",
"outlet_name": "Marina Bay",
"slug": "hainan-delight-marina-bay",
"cuisines": ["Singaporean", "Chicken Rice"],
"rating": 4.7,
"review_count": 1345,
"is_open_now": True,
"lead_time_min": 28,
"min_order": 12.0,
"fees": { "delivery_fee": 2.5, "platform_fee": 0.6, "service_fee": 0.0 },
"fulfillment": ["delivery", "pickup"],
"delivery_zones": [
{ "postal_prefix": "01-08", "min_order": 15.0, "fee": 3.0 },
{ "postal_prefix": "09-16", "min_order": 20.0, "fee": 4.2 }
],
"address": {
"street": "10 Bayfront Ave, #01-11",
"postal_code": "018956",
"city": "Singapore",
"country": "SG"
},
"coordinates": { "lat": 1.2832, "lng": 103.8600 },
"opening_hours": {
"mon_fri": "10:30-22:00",
"sat_sun": "10:30-21:00"
},
"badges": ["Top Seller", "Quick Delivery"],
"promotions": [
{
"type": "bundle",
"title": "Family Set - Save 12%",
"code": "FAM12",
"valid_until": "2025-09-15"
}
],
"menu": [
{
"category_id": "cat_rice",
"category_name": "Signature Rice",
"items": [
{
"item_id": "pck_001",
"name": "Classic Hainan Chicken Rice",
"description": "Poached chicken, fragrant rice, chili sauce, ginger paste, cucumber.",
"image_url": "https://cdn.pickupp.example.com/images/classic-hainan.jpg",
"price": 7.5,
"discount_price": 6.8,
"in_stock": True,
"spicy_level": 0,
"allergens": ["Soy"],
"nutrition": { "kcal": 560, "protein_g": 36, "carb_g": 62, "fat_g": 18 },
"options": [
{
"group_name": "Portion Size",
"required": True,
"max_select": 1,
"choices": [
{ "name": "Regular", "price_delta": 0.0 },
{ "name": "Large", "price_delta": 3.0 }
]
},
{
"group_name": "Add-ons",
"required": False,
"max_select": 2,
"choices": [
{ "name": "Extra Chicken", "price_delta": 2.5 },
{ "name": "Extra Rice", "price_delta": 1.2 },
{ "name": "Boiled Egg", "price_delta": 1.0 }
]
}
],
"popularity_rank": 1,
"last_seen_price": { "value": 7.5, "seen_at": "2025-08-10T08:45:00Z" }
},
{
"item_id": "pck_002",
"name": "Roasted Chicken Rice",
"description": "Crisp roasted chicken, signature gravy, steamed rice.",
"image_url": "https://cdn.pickupp.example.com/images/roasted-chicken.jpg",
"price": 8.2,
"in_stock": True,
"spicy_level": 0,
"allergens": ["Soy"],
"options": [],
"popularity_rank": 3
}
]
},
{
"category_id": "cat_sides",
"category_name": "Sides & Extras",
"items": [
{
"item_id": "pck_101",
"name": "Cucumber Salad",
"description": "Fresh cucumber with light sesame dressing.",
"price": 3.0,
"in_stock": True,
"allergens": ["Sesame"]
},
{
"item_id": "pck_102",
"name": "Chicken Soup (Small)",
"description": "Clear chicken broth with spring onion.",
"price": 2.2,
"in_stock": True,
"allergens": []
}
]
}
],
"updated_at": "2025-08-14T13:50:05Z",
"source_page": "https://www.pickupp.io/hainan-delight-marina-bay"
},
{
"restaurant_id": "pickupp_209384",
"name": "Spice Haven",
"brand": "Spice Haven",
"outlet_name": "Tiong Bahru",
"slug": "spice-haven-tiong-bahru",
"cuisines": ["Indian", "North Indian"],
"rating": 4.4,
"review_count": 489,
"is_open_now": False,
"lead_time_min": 40,
"min_order": 18.0,
"fees": { "delivery_fee": 3.8, "platform_fee": 0.5, "service_fee": 0.0 },
"fulfillment": ["delivery"],
"address": {
"street": "56 Tiong Bahru Rd",
"postal_code": "163056",
"city": "Singapore",
"country": "SG"
},
"coordinates": { "lat": 1.2861, "lng": 103.8283 },
"opening_hours": { "mon_sat": "11:00-22:30", "sun": "11:00-21:30" },
"badges": ["Spicy Choice"],
"promotions": [],
"menu": [
{
"category_id": "cat_mains",
"category_name": "Mains",
"items": [
{
"item_id": "pck_201",
"name": "Butter Chicken",
"description": "Creamy tomato gravy, tender chicken, served with rice or naan.",
"image_url": "https://cdn.pickupp.example.com/images/butter-chicken.jpg",
"price": 12.5,
"in_stock": True,
"spicy_level": 1,
"allergens": ["Dairy"],
"options": [
{
"group_name": "Side",
"required": True,
"max_select": 1,
"choices": [
{ "name": "Steamed Rice", "price_delta": 0.0 },
{ "name": "Garlic Naan", "price_delta": 1.5 }
]
}
],
"popularity_rank": 2
}
]
}
],
"updated_at": "2025-08-13T21:10:30Z",
"source_page": "https://www.pickupp.io/spice-haven-tiong-bahru"
},
{
"restaurant_id": "pickupp_334455",
"name": "Green Bites",
"brand": "Green Bites",
"outlet_name": "Clarke Quay",
"slug": "green-bites-clarke-quay",
"cuisines": ["Healthy", "Salads"],
"rating": 4.2,
"review_count": 224,
"is_open_now": True,
"lead_time_min": 22,
"min_order": 10.0,
"fees": { "delivery_fee": 2.2, "platform_fee": 0.5, "service_fee": 0.0 },
"fulfillment": ["delivery", "pickup"],
"address": {
"street": "3 River Valley Rd, #02-06",
"postal_code": "179024",
"city": "Singapore",
"country": "SG"
},
"coordinates": { "lat": 1.2907, "lng": 103.8485 },
"opening_hours": { "mon_fri": "08:00-20:00", "sat_sun": "09:00-18:00" },
"badges": ["Eco-Packaging"],
"promotions": [
{
"type": "percentage",
"title": "15% OFF first order",
"code": "WELCOME15",
"valid_until": "2025-10-01"
}
],
"menu": [
{
"category_id": "cat_bowls",
"category_name": "Bowls",
"items": [
{
"item_id": "pck_401",
"name": "Avocado Protein Bowl",
"description": "Quinoa, avocado, grilled chicken, mixed greens, seeds.",
"image_url": "https://cdn.pickupp.example.com/images/avocado-bowl.jpg",
"price": 11.0,
"in_stock": True,
"allergens": ["Tree Nuts"],
"nutrition": { "kcal": 480, "protein_g": 28, "carb_g": 42, "fat_g": 22 },
"options": [],
"popularity_rank": 1
}
]
}
],
"updated_at": "2025-08-14T09:05:47Z",
"source_page": "https://www.pickupp.io/green-bites-clarke-quay"
}
]
}
print(f"Processing {len(data['records'])} restaurants...")
results = []
for idx, restaurant in enumerate(data['records'], 1):
print(f"[{idx}/{len(data['records'])}] Extracting data from: {restaurant['name']}")
restaurant_data = extract_restaurant_data(restaurant)
if restaurant_data:
results.append(restaurant_data)
if results:
df = pd.DataFrame(results)
df.to_csv(OUTPUT_FILE, index=False)
print(f"Data saved to {OUTPUT_FILE}")
else:
print("No data extracted.")
The Pickupp scraper can be integrated into multiple business systems to scrape Pickupp restaurant data and enhance operational efficiency. Through the Pickupp data scraping service, restaurants, delivery platforms, and market analysts can feed real-time data directly into POS systems, CRMs, and analytics dashboards. The Pickupp menu scraper enables automatic menu synchronization, price updates, and promotion tracking. By connecting the Pickupp restaurant scraper with order management platforms, businesses can optimize delivery logistics. For localized insights, the Pickupp scraper Singapore version supports region-specific targeting. With Pickupp API integration, users can extract real-time Pickupp data into cloud databases or BI tools, enabling predictive analysis, competitive monitoring, and better decision-making—all while keeping menu, pricing, and delivery information continuously updated.
Running the Pickupp scraper via the Real Data API allows businesses to scrape Pickupp restaurant data quickly and reliably. The Pickupp data scraping service executes targeted extractions based on cuisine, location, or delivery preferences, returning structured JSON for easy integration. Using the Pickupp menu scraper, the actor retrieves complete menu details, promotions, and ratings, while the Pickupp restaurant scraper captures delivery zones and operational hours. The Pickupp scraper Singapore version ensures region-focused scraping for local market research. With Pickupp API integration, you can extract real-time Pickupp data for automated syncing with sales dashboards, mobile apps, or ERP systems. This setup supports large-scale Pickupp data extraction, enabling creation of a robust Food Dataset for use in a Food Data Scraping API.
You should have a Real Data API account to execute the program examples.
Replace
in the program using the token of your actor. Read
about the live APIs with Real Data API docs for more explanation.
import { RealdataAPIClient } from 'RealDataAPI-client';
// Initialize the RealdataAPIClient with API token
const client = new RealdataAPIClient({
token: '' ,
});
// Prepare actor input
const input = {
"categoryOrProductUrls": [
{
"url": "https://www.amazon.com/s?i=specialty-aps&bbn=16225009011&rh=n%3A%2116225009011%2Cn%3A2811119011&ref=nav_em__nav_desktop_sa_intl_cell_phones_and_accessories_0_2_5_5"
}
],
"maxItems": 100,
"proxyConfiguration": {
"useRealDataAPIProxy": true
}
};
(async () => {
// Run the actor and wait for it to finish
const run = await client.actor("junglee/amazon-crawler").call(input);
// Fetch and print actor results from the run's dataset (if any)
console.log('Results from dataset');
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
console.dir(item);
});
})();
from realdataapi_client import RealdataAPIClient
# Initialize the RealdataAPIClient with your API token
client = RealdataAPIClient("" )
# Prepare the actor input
run_input = {
"categoryOrProductUrls": [{ "url": "https://www.amazon.com/s?i=specialty-aps&bbn=16225009011&rh=n%3A%2116225009011%2Cn%3A2811119011&ref=nav_em__nav_desktop_sa_intl_cell_phones_and_accessories_0_2_5_5" }],
"maxItems": 100,
"proxyConfiguration": { "useRealDataAPIProxy": True },
}
# Run the actor and wait for it to finish
run = client.actor("junglee/amazon-crawler").call(run_input=run_input)
# Fetch and print actor results from the run's dataset (if there are any)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)
# Set API token
API_TOKEN=<YOUR_API_TOKEN>
# Prepare actor input
cat > input.json <<'EOF'
{
"categoryOrProductUrls": [
{
"url": "https://www.amazon.com/s?i=specialty-aps&bbn=16225009011&rh=n%3A%2116225009011%2Cn%3A2811119011&ref=nav_em__nav_desktop_sa_intl_cell_phones_and_accessories_0_2_5_5"
}
],
"maxItems": 100,
"proxyConfiguration": {
"useRealDataAPIProxy": true
}
}
EOF
# Run the actor
curl "https://api.realdataapi.com/v2/acts/junglee~amazon-crawler/runs?token=$API_TOKEN" \
-X POST \
-d @input.json \
-H 'Content-Type: application/json'
productUrls
Required Array
Put one or more URLs of products from Amazon you wish to extract.
Max reviews
Optional
Integer
Put the maximum count of reviews to scrape. If you want to scrape all reviews, keep them blank.
linkSelector
Optional String
A CSS selector saying which links on the page (< a> elements with href attribute) shall be followed and added to the request queue. To filter the links added to the queue, use the Pseudo-URLs and/or Glob patterns setting. If Link selector is empty, the page links are ignored. For details, see Link selector in README.
includeGdprSensitive
Optional Array
Personal information like name, ID, or profile pic that GDPR of European countries and other worldwide regulations protect. You must not extract personal information without legal reason.
sort
Optional String
Choose the criteria to scrape reviews. Here, use the default HELPFUL of Amazon.
RECENT
,HELPFUL
proxyConfiguration
Required Object
You can fix proxy groups from certain countries. Amazon displays products to deliver to your location based on your proxy. No need to worry if you find globally shipped products sufficient.
extendedOutputFunction
Optional String
Enter the function that receives the JQuery handle as the argument and reflects the customized scraped data. You'll get this merged data as a default result.
{
"categoryOrProductUrls": [
{
"url": "https://www.amazon.com/s?i=specialty-aps&bbn=16225009011&rh=n%3A%2116225009011%2Cn%3A2811119011&ref=nav_em__nav_desktop_sa_intl_cell_phones_and_accessories_0_2_5_5"
}
],
"maxItems": 100,
"detailedInformation": false,
"useCaptchaSolver": false,
"proxyConfiguration": {
"useRealDataAPIProxy": true
}
}