स्क्रैपिंग के ज़रिए ऑस्ट्रिया में किराने के सामान की कीमतों को ट्रैक करना
(mastodon.gamedev.place)- ऑस्ट्रिया में खाद्य और ऊर्जा कीमतों का दबाव बढ़ने के बीच, सरकार द्वारा सीमित price DB की घोषणा के बाद Mario Zechner ने बड़ी चेन के online stores पर आधारित price tracking platform खुद बनाया
- पहला prototype दो बड़ी चेन के सभी products के लिए 2 घंटे में बनाया गया, और बाद में जर्मनी व स्लोवेनिया के store data, category normalization, समान products की matching, और analysis tools जोड़े गए
- 2017 से इकट्ठा किए गए anonymous रूप से उपलब्ध कराए गए data को मिलाने के बाद, दो बड़ी चेन के private-label products की कीमतें cent स्तर तक समान होने का pattern पिछले trends सहित देखा जा सका
- historical price data में एक ही दिन या 1–2 दिन के अंतर से कीमतें align होने के उदाहरण, shrinkflation, और जर्मनी की तुलना में वही products अधिकतम 40% महंगे होने के मामले सामने आए
- ऑस्ट्रिया के grocery market में discounted products का अनुपात लगभग 40% है, इसलिए list price घटाने का दावा करने पर भी rotating discounts की संरचना के कारण औसत paid amount उल्टा बढ़ सकता है
सरकार की price DB घोषणा और personal project की शुरुआत
- ऑस्ट्रिया में inflation EU average से अधिक है, और खासकर ऊर्जा और खाद्य जैसी बुनियादी जरूरतों वाली वस्तुओं में दबाव बड़ा है
- सरकार ने मई में बड़ी grocery chains के साथ मिलकर food price database बनाने की घोषणा की
- संबंधित मंत्री ने कहा कि काम का पैमाना बड़ा है, इसलिए यह autumn तक चलेगा
- scope केवल आटा, दूध जैसे 16 product groups तक सीमित है
- update frequency हफ्ते में 1 बार planned है
- Mario Zechner ने यह सुनकर दो बड़ी चेन के सभी products को target करने वाला prototype 2 घंटे में बना दिया
- platform stores के online stores को crawl करने के तरीके से काम करता है
- ज्यादातर stores के पास API है
- collected data को stores के बीच comparison संभव बनाने के लिए normalize किया जाता है
- बाद में इसे public release और analysis के योग्य format में उपलब्ध कराया जाता है
Platform का विस्तार और 2017 से price data
- शुरुआती platform के बाद जर्मनी और स्लोवेनिया के store data भी जोड़े गए
- अलग-अलग stores की अलग product categories को normalize करने और समान या मिलते-जुलते products को match करने के लिए हल्की data science techniques जोड़ी गईं
- Twitter के एक anonymous user ने दो बड़ी चेन से 2017 से crawl किया गया data उपलब्ध कराया
- Zechner ने इस data को platform में integrate किया और analysis tools जोड़े
- शुरुआती analysis में ऐसे results मिले जिन्हें energy price rise को ध्यान में रखने के बाद भी price increase काफी बड़ा माना जा सकता है
Chains के बीच price matching और simultaneous price changes
- platform बनाने से पहले पहला analysis दो बड़ी चेन द्वारा बेचे जाने वाले सबसे सस्ते private-label products की manually comparison करने के तरीके से किया गया था
- उदाहरण store private-label milk या flour जैसे products हैं
- 40 product pairs की कीमतें cent level तक बिल्कुल समान थीं
- एक NGO ने Twitter पर यह देखकर 600 product pairs पर वही analysis किया, और वही pattern दिखा
- historical data integrate होने के बाद दोनों chains में समान products के price change timing की तुलना संभव हुई
- private-label low-price products की कीमतें दोनों chains में एक ही दिन, या 1–2 दिन के अंतर से बदलकर समान price पर पहुंचने के उदाहरण दिखे
- ऐसा pattern केवल low-price private-label तक नहीं, बल्कि mid-price private-label products में भी देखा गया
- Zechner ने explicit coordination के बिना oligopoly pricing के align होने की tacit collusion की संभावना देखी
- कहा गया कि अन्य similar platforms ने भी वही pattern देखा
- कहा गया कि यह pattern inflation में तेज उछाल वाले समय से दिखने लगा
Shrinkflation और देशों के बीच price differences
- platform analysis से shrinkflation के मामले भी पहचाने गए
- इसका मतलब है कि product की quantity कम हो गई, लेकिन price समान या अधिक रहा
- उदाहरण के तौर पर laundry detergent सामने आया
- वही product जर्मनी में अधिकतम 40% सस्ता होने के मामले भी दिखे
- जर्मनी को higher average income और higher cost of living वाला देश बताया गया
- केवल ऑस्ट्रिया में बनने वाले products भी ऑस्ट्रिया के बाहर सस्ते होने के मामले हैं
- Billa को REWEDE के Austrian version के रूप में mention किया गया
- Austrian brand Red Bull के मामले में भी ऑस्ट्रिया में discount price जर्मनी के regular price से अधिक महंगा होने के उदाहरण हैं
Discount structure और ‘price cut’ का वास्तविक असर
- ऑस्ट्रिया के grocery market में discount share खासतौर पर बड़ा है
- सामान्य competitive grocery market में average लगभग 10–20% products discounted बताए गए
- ऑस्ट्रिया में यह ratio 40% बताया गया
- discounts के कारण consumers के लिए वास्तविक paid price जानना मुश्किल हो जाता है
- consumers के लिए store जाकर उस दिन के discounts देखने से पहले price जानना कठिन होता है
- chains postal discount flyers भेजती हैं, और stickers जमा कर checkout पर products पर लगाने का तरीका भी इस्तेमाल करती हैं
- apps को user information पाने के माध्यम के रूप में भी mention किया गया
- negative reporting के बाद grocery chains ने stores में यह सूचना लगाई कि “इस साल 450 products की कीमतें पहले ही घटाई जा चुकी हैं”
- total products की संख्या लगभग 22,000 बताई गई
- उस chain ने price-cut products की list machine-readable PDF के रूप में भी उपलब्ध कराई
- Zechner ने PDF के products को अपने database से match किया
- ऊपर-ऊपर से price cuts का claim सही पाया गया
- लेकिन कुछ products कई वर्षों से दोहराए जा रहे rotating price pattern का हिस्सा थे, और permanent price cuts नहीं थे
- और भी subtle cases सामने आए
- list price घटाई गई, लेकिन periodically लागू होने वाला discounted price बढ़ा दिया गया
- list price cut सच हो सकता है, फिर भी अगर consumer हर हफ्ते वही product खरीदता है, तो discount price बढ़ने के कारण average paid amount पहले से अधिक हो सकता है
1 टिप्पणियां
Hacker News की राय
मैं ऑस्ट्रिया और जर्मनी में रह चुका/चुकी हूँ, और यह 100% सच है कि ऑस्ट्रिया में सुपरमार्केट की कीमतें कहीं ज़्यादा महंगी हैं, ऑस्ट्रियाई products के लिए भी यही बात लागू होती है
वजह यह है कि जर्मन लोग कीमतों को लेकर बेहद संवेदनशील होते हैं और हमेशा तुलना करते हैं, जबकि ऑस्ट्रियाई लोग औसतन कम ध्यान देते हैं, और सुपरमार्केट इसका फायदा उठाते हैं। ऑस्ट्रिया में आबादी का घनत्व कम है और पहाड़ी इलाकों जैसे कठिन पहुंच वाले कई stores हैं, इसलिए logistics cost ज़्यादा होती है; VAT भी थोड़ा ज़्यादा है, और supermarket व logistics में unskilled labour की wages भी जर्मनी से थोड़ी अधिक हैं
साथ ही, ऑस्ट्रिया में उसी company के stores भी जर्मनी की तुलना में अधिक अच्छे दिखते हैं, shelves ज्यादा साफ-सुथरी होती हैं, और queues छोटी रहती हैं, इसलिए operating cost ज़्यादा आती है। आखिरकार, अगर उपभोक्ता जर्मनी की तरह कीमत को अधिक महत्व देते और aesthetics की कम परवाह करते, तो कीमतें नीचे आतीं; और अगर लोग थोड़ा और चलकर सस्ता supermarket ढूंढना शुरू कर दें, तब भी कीमतें गिर सकती हैं
ऑस्ट्रिया में public transport या bicycle का इस्तेमाल कहीं बेहतर है, इसलिए लोग सबसे सस्ती grocery store पर जाने के लिए जानबूझकर रास्ता नहीं बदलते। ऑस्ट्रिया के जिन इलाकों में लोग कार का इस्तेमाल करते हैं, वहाँ आबादी का घनत्व इतना कम है कि supermarkets के बीच competition भी ज्यादा नहीं है
कुछ हद तक इसकी वजह Netherlands का अधिक VAT है, लेकिन मुझे लगता है कि ज्यादातर वजह यह है कि Dutch लोग German लोगों की तुलना में ज्यादा कीमत आसानी से दे देते हैं
एक ऑस्ट्रियाई developer और consumer के तौर पर मैं इस साल भर इस issue को करीब से देखता/देखती रहा/रही हूँ, और यह बेहद frustrating है कि बिना किसी उचित वजह के हमारी जेब काटी जा रही है, फिर भी कुछ बदल नहीं रहा और किसी को परवाह नहीं है
Mario ने इस topic को लगातार पकड़े रखा और इस चिढ़ाने वाली पागलपन भरी स्थिति से तंग नहीं हुआ, यह सच में कमाल है
कंपनियों को खराब व्यवहार करने से रोकने के लिए कमरे में कोई जिम्मेदार वयस्क चाहिए। शुरुआत इस assumption से होती है कि अगर निगरानी न हो तो companies खराब व्यवहार करती हैं; यह कोई अंतिम निष्कर्ष नहीं, बल्कि test करने लायक hypothesis जैसा है
कम से कम जब कोई consequence नहीं होता, तो companies और खराब व्यवहार करती हैं, और इसलिए पहले prices बढ़ाने का “अच्छा कारण” नहीं था, लेकिन अब inflation price hikes की आड़ बन गया है
ऐसे index data projects एक क्षेत्र के तौर पर काफी संभावनाशील लगते हैं, खासकर अब जब AI और machine learning systems changes और trends को आसानी से observe करने देते हैं। सवाल यह है कि लोगों को action लेने लायक सामाजिक-वैज्ञानिक गुस्सा दिलाने के लिए पर्याप्त स्पष्ट conclusions और observations कैसे हासिल किए जाएँ
या फिर शायद हमें बस यह स्वीकार कर लेना चाहिए कि companies ऐसी technology से consumers के खिलाफ सब कुछ optimize करें, और इसके खिलाफ white-hat style resistance में इसका इस्तेमाल नहीं करना चाहिए
हालांकि जब सभी को हर साल 500 euros का Klima bonus extra दिया जाता है, तो लोग क्या उम्मीद कर रहे थे, यह भी समझ नहीं आता। यह inflation को कैसे कम करेगा, इस पर संदेह है, और लगता है grocery chains इसका फायदा उठा रही हैं
कीमतें ऊँची हों या कम, वजह हमेशा वही होती है: वही price सबसे ज्यादा पैसा कमाकर देता है
ऐसी companies जब अपनी कमाई पर असर पड़ना शुरू होता देखती हैं, तो बेहद sensitive react करती हैं। हो सकता है वह Bournvita न होकर बच्चों के लिए कोई similar milk additive रहा हो
अगर यह UK जैसा है, तो shrinkflation इतनी ज्यादा होगी कि price comparison के लिए per-gram price की जरूरत पड़ेगी। Product size घटाना और ingredients को सस्ता करना—बाहर से packaging वही दिखती है, लेकिन chocolate bar के wrapper में हवा की जगह बढ़ जाती है, ice cream cone के lid के नीचे 1cm खाली gap हो जाता है, butter container का bottom अंदर की ओर धंसा होता है, और पहले सीधी रहने वाली packaging की side अब संकरी हो जाती है
ऐसी “तरकीबें” पहले से थीं, लेकिन अब उनका इस्तेमाल बढ़ता जा रहा है। हर supermarket के पास पूरी inventory database होती है, इसलिए वे लगभग बिना cost के हर 5 मिनट में सभी products की latest price list भेज सकते हैं। Legislators expert advice नहीं लेते या लेना नहीं चाहते लगते, फिर भी शुरुआत तो शुरुआत है
समस्या यह है कि grocery stores अगर लोगों को “loyalty” card इस्तेमाल करने पर मजबूर कर दें, तो वे हर चीज़ को “promotional price” बना सकते हैं, और फिर unit price display की requirement से बच सकते हैं। वे सिर्फ ऊँचे original price का £/KG दिखाते हैं, इसलिए consumer आसानी से compare नहीं कर पाता
Aldi या Lidl में shopping करके इससे बच सकते हैं, लेकिन अगर वे भी जल्द ही loyalty-card-only prices के आकर्षण में आ जाएँ तो हैरानी नहीं होगी। बेशक वे भी shrinkflation करते रहे हैं
उदाहरण: https://www.tesco.com/groceries/en-GB/products/296117381 — “£3.00 / £10.71/kg” है, लेकिन Clubcard price £2.00 है
एक ऑस्ट्रियाई के तौर पर, price comparison प्रोजेक्ट अच्छा है, लेकिन असली बड़ी बात यह है कि समान products के आधार पर जर्मन grocery stores की कीमतें 20–40% कम हैं।
supermarket chains की सफाई ज्यादा से ज्यादा संदिग्ध लगती है। जैसे, जर्मनी की तुलना में प्रति व्यक्ति stores की संख्या ज्यादा है, या उन्हें ज्यादा महंगे ऑस्ट्रियाई distributors से खरीदना पड़ता है। बेल्जियम के फ्रांस से महंगा होने जैसी मिलती-जुलती बातें भी सुनी हैं।
स्थिति बदलनी है तो पूरे यूरोप में price comparison चाहिए।
छोटी कंपनियों के पास product selection की आजादी या opening hours जैसे क्षेत्रों में innovation की गुंजाइश तक नहीं होती, इसलिए उनके लिए entry करना ही मुश्किल है।
ऑनलाइन services और products की कीमतें collect करके देखें तो सच में बहुत दिलचस्प चीजें दिखती हैं, और आम तौर पर वे customers को नुकसान पहुंचाने वाली tricks होती हैं।
मुझे लगता है अब समय आ गया है कि EU कानून बनाकर कंपनियों को standardized API के जरिए price data उपलब्ध कराने को बाध्य करे। इससे सभी को फायदा होगा और ऐसी चालों पर रोक लगेगी।
मैंने सच में Disney World vacation packages का scraper बनाया है, और यह भी पता लगाया कि पूरी stay के दौरान सिर्फ कुछ हिस्से के लिए अलग से hotel tickets खरीदकर cheaper deals कैसे मिल सकती हैं। किसी दिन इसे vacation inflation index बनाने की योजना है।
1 - https://mousetrack.co.uk
वाकई दिलचस्प लेख था। grocery prices का आकलन करना और समय व खर्च optimize करने के लिए shopping को adjust करना बहुत थका देने वाला है, लेकिन ऐसा large-scale dataset हो तो यह काफी आसान हो सकता है।
सोच रहा हूं कि क्या अमेरिका के लिए भी ऐसा कोई similar price analysis है।
बेशक store के अंदर अलग-अलग items के margins अलग होते हैं, लेकिन लगभग सभी non-prepared और shelf-stable foods सबसे कम margin वाली category में आते हैं।
Winco, Aldi, Lidl भी बेहद कम margins के लिए जाने जाने वाले grocery retailers हैं।
पता नहीं दूसरे Mastodon servers कैसे हैं, लेकिन readability के मामले में यह server Twitter से कई light-years आगे है।
उम्मीद है किसी दिन कोई उस company और उसके product design approach में ठीक-ठीक क्या गलत था, इस पर खुलासा करने वाली किताब लिखेगा।
पहली के पास resources ज्यादा होते हैं, लेकिन दूसरी mission-oriented ज्यादा होती है।
Tweetdeck जैसा बताया जाने वाला multi-panel “advanced view” भी है।
कुछ लोग dark mode पसंद करते हैं, लेकिन e-ink devices पर पढ़ना वाकई भयानक होता है। किसी specific instance में login किए बिना theme बदली नहीं जा सकती, इसलिए मैंने इससे जुड़ा issue request खोल रखा है।
बेहतरीन thread है, और समझदार व तकनीकी रूप से सक्षम नागरिकों की ताकत दिखाता है।
मेरा अनुमान है कि कुछ नहीं होगा। जिन government regulators को इसकी निगरानी करनी चाहिए, वे शायद निष्कर्ष निकालेंगे कि कोई समस्या नहीं है। क्योंकि मुझे लगता है कि उन्हें पहले से खरीद लिया गया है ताकि politics खत्म करने के बाद वे इन्हीं retailers के lobbyists या “consultants” बन सकें।
करीब 6 साल पहले ऑस्ट्रिया की 3 बड़ी telecom companies ने बिल्कुल एक ही समय पर मिलकर prices बढ़ाए थे, और जिम्मेदार government agency ने यह कहते हुए case बंद कर दिया कि तीनों कंपनियों ने price-fixing की साजिश की, इसका कोई सबूत नहीं है और यह संयोग भी हो सकता है।
यह देश इतना भ्रष्ट है कि जड़ तक सड़ चुका है। consumer और taxpayer के तौर पर सरकार के आशीर्वाद से मुझे हर तरफ से कानूनी रूप से लूटा जा रहा है, और लगता है कई दूसरे देशों में भी ऐसा ही होगा।
एक ऑस्ट्रियाई के तौर पर मैंने यह link कुछ journalists और दोस्तों को भेजा है। सोच रहा हूं कि इसे कैसे actionable steps में बदला जाए ताकि राजनीति हरकत में आए और consumers को भी फायदा हो।