Zum Hauptinhalt springen
tsecurity.de LIVE
Echtzeit-Radar & Feeds
Alle RSS Feeds
👥 Community & Social
Sichere ProgrammierungBaseline Costing Model & Velocity Measurement(23.09.2026 um 17:55 Uhr)
Sichere ProgrammierungAdd Model Spend Behind a Budget Row, Not a Browser Agent(23.09.2026 um 17:58 Uhr)
Sichere ProgrammierungPower Bi: Data Modelling, Relationships and Joins(23.09.2026 um 18:05 Uhr)
Sichere ProgrammierungBranchWatch: An open-source visual node pipeline for Git workflows(23.09.2026 um 18:05 Uhr)
Sichere ProgrammierungNot Everything Needs SSR(23.09.2026 um 18:06 Uhr)
Sichere ProgrammierungBaseline Costing Model & Velocity Measurement(23.09.2026 um 17:55 Uhr)
Sichere ProgrammierungAdd Model Spend Behind a Budget Row, Not a Browser Agent(23.09.2026 um 17:58 Uhr)
Sichere ProgrammierungPower Bi: Data Modelling, Relationships and Joins(23.09.2026 um 18:05 Uhr)
Sichere ProgrammierungBranchWatch: An open-source visual node pipeline for Git workflows(23.09.2026 um 18:05 Uhr)
Sichere ProgrammierungNot Everything Needs SSR(23.09.2026 um 18:06 Uhr)
Intelligence View
⚡ tsecurity.de Intelligence

I automated competitor price tracking with Python (saved 4 hours per week)

I automated competitor price tracking with Python (saved 4 hours per week) Was spending every Monday morning checking 23 competitor product pages. Copy URL, open tab, scroll to price, write it down. Repeat. 3 hours 47 minutes gone on…

0
↗ Quelle (dev.to)
Reagiere als Erste:r — dein Feedback zählt!




I automated competitor price tracking with Python (saved 4 hours per week)



Was spending every Monday morning checking 23 competitor product pages. Copy URL, open tab, scroll to price, write it down. Repeat. 3 hours 47 minutes gone on average.



Decided to automate it.






The manual process was killing me



Running a small e-commerce thing on the side. Needed to stay competitive on pricing. But manually checking prices across Amazon, eBay, and niche sites? Tedious as hell.



Spreadsheet had columns for:




  • Product name

  • Competitor URL

  • Current price

  • Last updated



Every. Single. Week. Manually.






First attempt: just scrape it



Thought I'd write a quick script. Grab HTML, parse price, done.




import requests
from bs4 import BeautifulSoup

url = "https://example.com/product/123"
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
price = soup.find('span', class_='price').text






Worked for maybe 3 sites. Then:




  • Amazon blocked me (User-Agent issue)

  • JavaScript rendered prices didn't show up

  • Some sites had weird HTML structures



Back to manual checking. Annoying.



Ended up fixing it in a couple of ways



Split the problem:



Amazon/eBay (big sites): Used existing scraper APIs instead of fighting detection. Thought I could beat Amazon's bot detection myself. I couldn't. ParseForge has Amazon product scrapers that handle that stuff already. Saved me from spending a week on proxy rotation.



Small sites: Basic requests + BeautifulSoup worked fine. These sites don't have serious bot detection.



Storage: Just appended to CSV. Thought about Postgres or something fancier. Then I realized weekly price checks = maybe 1,200 rows per year. CSV opens in Excel. Done.



Script looks something like:




import csv
import requests
from datetime import datetime

# Small site scraping
def get_basic_price(url, selector):
try:
response = requests.get(url, headers={'User-Agent': 'Mozilla/5.0'})
soup = BeautifulSoup(response.text, 'html.parser')
price_text = soup.select_one(selector).text
# Clean: "$19.99" -> 19.99
return float(price_text.replace('$', '').replace(',', '').strip())
except:
return None

# Amazon/big sites: use API
def get_amazon_price(product_id):
# Call scraper API here
# Returns structured data (price, title, rating, etc.)
pass

# Weekly run
products = [
{'name': 'Widget A', 'url': 'https://smallsite.com/widget-a', 'selector': '.price'},
{'name': 'Widget B', 'asin': 'B08XYZ123', 'platform': 'amazon'},
]

results = []
for product in products:
if 'asin' in product:
price = get_amazon_price(product['asin'])
else:
price = get_basic_price(product['url'], product['selector'])

results.append({
'product': product['name'],
'price': price,
'date': datetime.now().strftime('%Y-%m-%d'),
})

# Save to CSV
with open('competitor_prices.csv', 'a', newline='') as f:
writer = csv.DictWriter(f, fieldnames=['product', 'price', 'date'])
writer.writerows(results)






Now runs every Monday via cron. Takes 47 seconds instead of 4+ hours.



Couple things that made it actually work



Don't fight big sites




  • Amazon/eBay have serious anti bot stuff

  • Using existing tools (APIs, scrapers) beats debugging proxies for weeks

  • Small sites? Basic requests works fine



Error handling matters more than I thought




  • If one site fails, script continues with the rest

  • Logs failures to separate file

  • I check errors once a month (most are just temporary site changes)



CSV is good enough




  • Opens in Excel

  • Fast enough for weekly checks

  • No database maintenance






Stuff I'd change



Honestly would add:




  • Price change alerts (email when competitor drops >10%)

  • Chart generation (see trends)

  • More product categories



But current version does the job. 4 hours back per week.






Try it yourself



Basic approach:




  1. List your competitor URLs

  2. Figure out price selectors (browser inspector)

  3. Use requests for simple sites

  4. Use APIs/tools for complex sites (Amazon, eBay)

  5. Save to CSV

  6. Cron it



ParseForge has scrapers for Amazon, eBay, Walmart if you're tracking those. Handles the annoying stuff tho you still gotta clean the data yourself.



Went from manual Monday drudgery to automated. Worth the weekend it took to build.

Ähnliche Beiträge
🔍 Verwandte News

Auch interessante Nachrichten I automated competitor price tracking with Python (saved 4 hours per week)

Thematisch verwandte Begriffe: automated, competitor, price, tracking · 6 Treffer

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Zum Aktualisieren ziehen
ZERO-DAY CVE-2026-92164 | Streamlink is a CLI utility which pipes video streams from various servi…
Advisory →
TTS Reader • tsecurity.de Voice
tsecurity.de Icon
tsecurity.de App
Offline-Lesen, Eilmeldungen & 0ms Ladezeit

Installiere tsecurity.de direkt auf deinen Home-Bildschirm für das ultimative Vollbild-Magazinerlebnis ohne Browser-Leisten.

Nächster Beitrag
Themen-Radar & Intelligence Matrix
Echtzeit-Taxonomie nach Angriffsvektoren & Plattformen

tsecurity.de Live Threat Radar

🔴 LIVE RADAR
MONITORING
AKTIV
CVE-DATENBANK
LIVE
🔍
Community Radar & Live Chat
Sentinel Bot online • Live-Stream
Dein Cluster: Security Explorer
Match:
lädt…
Verbindung zum Community-Stream wird aufgebaut...
Bearbeitungsmodus — Senden überschreibt deine Nachricht
Community-Puls — was gerade passiert
lädt…
Aktivitäten deiner Analysten
lädt…
Neues Thema oder Eilmeldung einreichen

Reiche interessante Links, Zero-Days oder Debatten ein. Die Community entscheidet per Upvote über die Veröffentlichung.

Heiß diskutierte Einreichungen
🔖 Gespeicherte Artikel
📂 Keine gespeicherten Artikel vorhanden.
Zurück Ziehen Vor
Links: vorheriger Artikel Rechts: nächster Artikel unten: schließen
News NIS-2 Frühwarnung Tier-1 Intel ⏱️ 3 Min vor 10 Min
Artikeldaten werden geladen...

Zurück: vorheriger Vor: nächster
↗ Original-Quelle
Social Reaktionen Deine Reaktion zählt
Einstufung & Relevanz-Poll 0 Stimmen
In sozialen Netzwerken teilen 1-Klick