Prompt
How do I collect product prices from multiple retailers?
Latest observation
There are a few common ways to collect product prices from multiple retailers, depending on scale, reliability, and whether the retailers allow automated access.
1) Use official APIs when available
This is the best option.
- Many retailers, marketplaces, and affiliate programs offer APIs.
- You can query product info, price, availability, and sometimes shipping costs.
- Advantages: more stable, cleaner data, less likely to break or violate terms.
- Examples:
- Amazon Product Advertising API
- eBay APIs
- Walmart, Best Buy, Target, and others depending on region/programs
2) Use affiliate feeds or product data feeds
Some retailers provide downloadable product feeds.
- Usually CSV, XML, or JSON feeds
- Often include SKU, price, stock, and URLs
- Good for bulk price monitoring
- Common in affiliate networks like:
- Impact
- CJ Affiliate
- Rakuten
- Awin
3) Web scraping
If no API/feed exists, you can scrape the public product pages.
Typical process:
- Identify product URLs.
- Fetch HTML pages.
- Parse the price from the page.
- Normalize the data into a common schema.
- Schedule repeated collection.
Tools people use:
- Python:
requests,BeautifulSoup,lxml,scrapy - For JavaScript-heavy sites:
PlaywrightorSelenium
Important:
- Check the site’s Terms of Service and
robots.txt - Respect rate limits
- Avoid bypassing anti-bot protections
- Scraping can be fragile because page layouts change often
4) Use price comparison or data aggregation services
Some services already collect retailer pricing and offer APIs or exports.
- Good if you want speed and reliability without building everything yourself
- May cost money
- Examples depend on your region and use case
5) Set up a price tracking pipeline
A practical architecture:
- Source list: store product URLs or IDs for each retailer
- Collector: API client or scraper
- Normalizer: convert all prices to the same currency and format
- Database: save current and historical prices
- Scheduler: run hourly/daily
- Alerting: notify when a price changes or drops below threshold
Suggested fields to store:
- retailer
- product_id / SKU
- product_name
- current_price
- currency
- availability
- shipping_price
- collected_at
- product_url
6) Handle common issues
- Different currencies: convert using exchange rates if needed
- Different package sizes: normalize to unit price when comparing
- Promotions/coupons: distinguish list price vs sale price
- Dynamic pricing: capture timestamps so you know when the price was seen
- Stock/availability: price may not be meaningful if out of stock
7) Best practice recommendation
If you’re starting out:
- Use APIs/feeds where possible
- Scrape only for retailers without an official data source
- Build a small database to track history
- Monitor for changes and failures
If you want, I can also help you with:
- a Python scraper template
- a price tracking database schema
- a comparison of API vs scraping
- a step-by-step system design for collecting prices at scale
Observation history
Unlock observation history
Create a free Obsurfable account to unlock historical responses, model comparisons, and deeper brand intelligence.
How did Obsurfable measure this prompt?
Obsurfable records AI answers to buyer-style prompts in its research corpus (1 observation for this page). Metrics are distributions over observations, not a single static ranking.
Which AI systems does Obsurfable collect answers from?
OpenAI, ChatGPT, Google, Gemini, Google AI Mode, Anthropic, Claude, Perplexity, Grok, DeepSeek, Mistral, Copilot, and Meta AI.