Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 238

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 239

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 238

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 239

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 238

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 239

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 238

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 239

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 238

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 239

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 238

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 239

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 238

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 239

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 238

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 239

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 238

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 239

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 238

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 239

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 238

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 239

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 238

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 239

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 238

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 239

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 238

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 239

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 238

Warning: preg_match(): Compilation failed: quantifier does not follow a repeatable item at offset 1 in C:\xampp\htdocs\blog\wp-includes\class-wp.php on line 239

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\blog\wp-includes\class-wp.php:238) in C:\xampp\htdocs\blog\wp-includes\feed-rss2.php on line 8
تپه‌نوردی با وحید! https://127.0.0.1/blog Fri, 28 Jun 2024 09:24:50 +0000 fa-IR hourly 1 https://wordpress.org/?v=6.6.1 آب رو نریزید اونجا که می‌سوزه! https://127.0.0.1/blog/?p=1096 https://127.0.0.1/blog/?p=1096#respond Wed, 08 May 2024 16:29:24 +0000 https://vahidbaghi.ir/blog/?p=1096 مقدمه

من خیلی غذا های تند دوست دارم. اگر بخوام دقیق‌تر بگم فلفل خوردن با غذا رو دوست دارم. یعنی ترجیح میدم سس فلفل یا فلفل تازه رو خودم روی غذا بریزم تا اینکه خود غذا تند باشه. نکته‌ای که وجود داره اینه که هندی ها علاوه بر فلفل، از ادویه های متعددی توی غذا هاشون استفاده میکنن. در واقع از دید ذائقه یک ایرانی، دارن زیاده‌روی میکنن. منظورم از ذائقه ایرانی، میانگین غذا هاست وگرنه تو جاهای مختلف ایران غذا های تند هم داریم. حالا جلوتر که در مورد معیار های تندی توضیح بدم متوجه میشید این فلفل هایی که تو ایران پیدا میشه شوخیه!

چرا دوست داریم بسوزیم؟

حالا چرا بعضی ها چیز های تند دوست دارن؟

روی زبان شما پروتئینی به نام TRPV1 وجود دارد. کپسایسین موجود در فلفل تند با TRPV1 واکنش نشان می دهد و سیگنال های لازم را به مغز شما ارسال می کند. مغز شما سیگنال احساس گرما را دریافت می کند و به عنوان پاسخی به این احساس، “اندورفین” تولید می‌کند. [منبع]

به بیان ساده، چون باعث تولید اندورفین‌ (مسکن‌ طبیعی بدن) میشه. متن زیر رو که از این لینک انتخاب کردم، مثال خوبی برای این موضوع آورده :

به‌ عنوان مثال اگر در حال دویدن در جنگل باشید و مچ پای شما پیچ بخورد، ممکن است با افزایش اندورفین روبه‌رو شوید که به شما کمک می‌کند با وجود جراحت، لنگان لنگان از جنگل بیرون بیایید. اندورفین می‌تواند توضیح برخی رفتارهایی باشد که در شرایط عادی نمی‌توانیم آن‌ها را انجام دهیم ولی در شرایط اضطراری آن‌ها را انجام می‌دهیم. مثلا وقتی در حال فرار از یک خطر هستیم و سرعت دویدن ما از هر زمان دیگری بیشتر می‌شود.

یه کرمی که خوردن چیز های تند داره اینه که آدم دوست داره درجه های تندی بالاتر رو تجربه کنه ببینه چی میشه!

معیار سنجش تندی چیه؟

مقیاس اسکویل روش سنجش میزان تندی فلفل تند است که واحد حرارتی آن اسکویل با نماد SHU تعیین می شود در سال ۱۹۱۲ توسط داروسازی به نام ویلبر اسکوویل اختراع شد. علت تندی فلفل ماده ای به نام کپسایسین (Capsaicin) است. کپسایسین یک ماده بی رنگ و تحریک کننده است. در انواعی از فلفل ها مانند فلفل سبز این ماده در آوندهای درون فلفل وجود دارد. کپسایسین ارتباط خطی بین غلظت و مقیاس اسکویل نشان می دهد. [منبع].

برای اینکه این مقیاس رو خوب متوجه بشید چند تا مثال میزنم.

فلفل هالاپینو (jalapeno) : درجه تندیش بین ۲۵۰۰ تا ۸۰۰۰ اسکویله. [منبع]

فلفل کاین (cayenne pepper) : همون فلفل قرمز تند خودمونه که درجه تندیش بین ۳۰ تا ۵۰ هزار اسکویله [منبع].

واسابی (Wasabi) : در واقع فلفل نیست و بهش ترب ژاپنی میگن ولی تنده و درجه تندیش مشابه هالاپینو چیزی در حدود ۲۵۰۰ تا ۸۰۰۰ اسکویله. [منبع]

نودل تریپل (3x) اسپایسی سامیانگ : این رو فودبلاگر ها برای چالش ها میخورن که درجه تندیش حدود ۱۳۲۰۰ اسکویله. [منبع]

وقتی سوختیم چیکار کنیم؟

حالا اگر یه فلفل تند خوردیم، چیکار کنیم که تندی فلفل کم بشه؟ باید کاری کنیم که میزان تماس کپسایسین با گیرنده های زبان کم بشه. در ادامه لیستی از توصیه ها رو که از این لینک انتخاب کردم رو بررسی میکنم.

استثنائاً آب رو نریزید اونجا که می‌سوزه!

یکی از بدترین کار هایی که میشه انجام دادن اینه که آب بخورید. ساختار کپسایسین آبگریزه و در آب حل نمیشه و وقتی آب میخورید، اولش شاید یه ذره خنکتون کنه ولی بعدش با پخش کردن کپسایسین باعث میشه بخش بزرگتری از دهانتون بسوزه. بنابراین همیشه آب رو نریزید اونجا که میسوزه! تو ویدئو بعضی از فودبلاگر های ایرانی دیده بودم که یخ میذارن روی زبونشون که به همین دلیلی که گفتم کار اشتباهیه.

لبنیات بخورید

از اونجایی که کپسایسین چربی‌دوسته (lipophilic)، بنابراین خوردن شیر و لبنیات می‌تونه باعث کاهش اثر کپسایسین بشه. در واقع لبنیات دارای پروتئینی به نام کازئین هستند که به کپسایسین متصل میشن و نمیذاره به گیرنده های زبان ما اتصال پیدا کنه. اینکه وقتی دهنتون داره میسوزه میگن روش غذا بخور هم برای همینه. چون اون غذا بالاخره چربی داره و از پخش شدن بیشتر کپسایسین جلوگیری میکنه.

لیمو بزن!

تو بعضی از ویدئوهای یوتیوب، افرادی که فلفل تند می‌خورند، بلافاصله بعدش لیموترش می‌خورند. حالا دلیلش چیه؟ توضیحاتی که در ادامه می‌نویسم رو از این لینک و این لینک ترجمه کردم.

آب لیموترش با خاصیت اسیدی خود، می‌تواند بر احساس تندی ناشی از کاپسایسین (ترکیب تند موجود در فلفل) اثر بگذارد. اگرچه افزودن آب لیمو میزان واقعی کاپسایسین را در غذا تغییر نمی‌دهد، اما باعث می‌شود این ترکیب قبل از رسیدن به دهان، شروع به تجزیه شدن کند. در نتیجه، هنگامی که غذا به دهان می‌رسد، مقدار کپسایسین فعال و قادر به تحریک گیرنده‌های درد کمتر است. بنابراین، احساس تندی و سوزش کاهش می‌یابد.

علاوه بر این، قند موجود در آب لیموترش می‌تواند در خنثی کردن تندی نقش داشته باشد. سیستم رتبه بندی اسکوویل اتفاقا بر همین اساس عمل میکنه. فلفل رو انقدر با محلولی از آب و شکر رقیق میکنن که دیگه احساس تندی ایجاد نکنه. در واقع این محلول رو به تعدادی تستر میدن و اگر زبون هیچ کدومشون رو نسوزوند، یعنی کامل خنثی شده. البته روش های آزمایشگاهی هم وجود داره که هزینه‌ش بیشتره [منبع]. در مجموع، آب لیموترش از دو طریق تجزیه زودهنگام و خنثی‌سازی توسط قند می‌تونه احساس تندی را کاهش دهد، هرچند بر میزان واقعی کاپساییسین تأثیری ندارد.

تندترین فلفل جهان!

من کرمم گرفته بود که فلفل کارولینا (Carolina Reaper) یا فلفل دم عقربی رو پیدا کنم. درجه تندی این فلفل چیزی در حدود ۱.۵ تا ۲ میلیون اسکویله! البته فلفل Pepper X از کارولینا تندتره ولی بعد از کارولینا معرفی شده و کارولینا طعم بهتری هم داره. یه بار دیگه اعداد مثال های بالا رو با این عدد مقایسه کنید که متوجه بشید چقدر تنده. یه مثال دیگه هم میزنم که حرفی نباشه. فلفل هابانرو (Habanero) که بازم تو ایران راحت پیدا نمیشه درجه تندیش بین ۱۰۰ تا ۳۵۰ هزار اسکویله.

بازار های تهران رو زیاد گشتم تا فلفل کارولینا رو پیدا کنم. از بازارچه چینی های خیابون آبان تا فروشگاه های اینترنتی. وقتی در مورد فلفل کارولینا تو گوگل سرچ می‌کنی، تعداد زیادی سایت می‌بینی که بذر این فلفل رو میفروشن ولی تقریبا هیچ کدومشون حتی بذرش رو موجود ندارن. حتی یه سایتی پیدا کردم که نشا این فلفل رو میفروخت ولی بازم ناموجود بود. بهشون هم پیام دادم ولی کلا جوابی ندادن. خلاصه به این راحتی ها نه بذرش و نه خودش پیدا نمیشه. در نتیجه، تصمیم گرفتم از آمازون انگلیس سفارش بدم. برای سفارش از آمازون هم از ایرانیکارت کمک گرفتم. سایت های دیگه‌ای هم وجود داشت ولی خب بالاخره یکی رو باید انتخاب می‌کردم.

من جایی ندیدم کسی تجربه سفارش از آمازون با ایرانیکارت رو بذاره و تصمیم گرفتم مراحل کار رو اینجا یه توضیح مختصری بدم. چون خودم دوست داشتم قبلش یه جا یه تجربه‌ای میخوندم که ببینم مراحل کار چه جوریه. از آمازون چند تا کشور میشه به واسطه ایرانیکارت خرید کرد که من دیدم آمازون انگلیس هم قیمتش معقول‌تره و هم اون چیزی که میخواستم رو موجود داشت. گزینه خرید از آمازون انگلیس رو زدم و لینک محصول (این لینک) رو قرار دادم و مبلغش رو پرداخت کردم. قیمت ۱۰ عددش اون موقع که سفارش دادم ۴.۵ پوند بود و هزینه نهایی که پرداخت کردم ۶۵۴ هزار تومن بود.

همون شبی که مبلغ رو پرداخت کردم، بعد از چند ساعت وضعیت به خریداری شد تغییر پیدا کرد. زمانی که محصول به دفتر مرکزیشون در اصفهان برسه، وضعیت به انجام شده تغییر پیدا میکنه. این فرآیند ۳۵ روز طول کشید. بعدش به پست تحویل دادن و بسته بعد از ۴۲ روز از ثبت سفارش به دست من رسید. وقتی به پست تحویل میدن، براتون یه پیامک میاد که به پنل مراجعه کنید و داخل تیکتی که براتون باز شده کد رهگیری پست رو قرار میدن که بتونید پیگیری کنید.

یه ایرادی که به نظرم مراحل کار داره اینه که جزئیات رو خیلی به اطلاع شما نمیرسونن. چون زمان انتظار طولانیه، یه چیزی باید بذارن که کاربر engage بشه. من دوست داشتم مراحل زیر رو ببینم :

-آیا فروشنده ارسال کرده یا نه؟ چون ممکنه فروشنده لفتش بده و دیر ارسال کنه

-آیا به دفترشون در انگلیس رسیده؟

-آیا از دفتر انگلیس به سمت ایران ارسال شده؟

-از گمرک رد شده؟

من خب تجربه سفارش از سایت های دیگه‌ رو نداشتم. نمیدونم بقیه چه جوری هستند.

حالا بریم سراغ بسته تحویلی. بسته‌ای که از پست تحویل من دادن این شکلی بود :

وقتی بازش کردم، بسته اصلی فروشنده بود :

وقتی این بسته رو باز کردم، محتویاتش این بود که ۱۰ تا دونه فلفل کارولیناست. وزنش حدود ۱۵ گرمه :

زمانی که برای اولین بار بازش کردم یه عطر خیلی قوی و تندی داشت. این فلفل عطر میوه‌ای داره. مثل فلفل سبز و … نیست که عطر گیاهی طور داشته باشه. نمیدونم چه جوری توصیفش کنم که عطر و طعم میوه‌ای رو متوجه بشید. خیلی تازه به نظر میرسه. با اینکه خشکش کرده ولی هنوز رطوبت داره.

اولین کاری که کردم این بود که یه تیکه خیلی کوچیک از نوکش کندم و گذاشتم روی زبونم. بعد از چند ثانیه سوزشش شروع شد. چون اندازه خیلی کوچیکی برداشته بودم، تندیش قابل تحمل بود. بعد که احساس کردم میتونم تحملش کنم، قورتش دادم. وقتی قورتش دادم گلوم رو تا معده سوزند و رفت :)))

بعد یه دونه‌ش رو با آسیاب به خوبی پودر کردم و ریختم داخل یه سس گوجه ۵۵۰ گرمی و خوب هم زدم. یه ذره از سسه خوردم و واقعا آتیش گرفتم. این فلفله اصلا شوخی نداره 🙂

من نودل 3x مرگ رو هم خورده بودم. اون موقع که این نودل رو خوردم، چون حالت روکم‌کنی داشت تا ۱۰ دقیقه بعدش هیچی نخوردم. اما تندیش به مرور از بین رفت و بالاخره ول کرد. اما این فلفله رو که خوردم واقعا ول نمیکرد. تا چند لیوان شیر نخوردم ول نکرد. نمیدونم چند لیتر سس گوجه نیازه که به تندی گالری سید داوود برسه ولی میدونم با ۵۵۰ گرم قضیه حل نمیشه!

پ.ن. تصویر پیش‌نمایش این پست با https://mann-e.com تولید شده.

]]>
https://127.0.0.1/blog/?p=1096/feed 0
یک متن تصادفی! https://127.0.0.1/blog/?p=1104 https://127.0.0.1/blog/?p=1104#respond Thu, 02 May 2024 12:55:00 +0000 https://vahidbaghi.ir/blog/?p=1104 این پست برای تست کراولر گوگل نوشته شده است و ارزش دیگری ندارد. می‌خوام بررسی کنم که آیا گوگل متن زیر رو میتونه کراول کنه یا نه!



این متن با استفاده از تکنیک زیر تولید شده که هدفش اینه که جلوی scrape محتوای سایت رو بگیره. البته راه دور زدن داره ولی خب کار رو سخت میکنه دیگه!

https://github.com/schoenbergerb/noscrape

]]>
https://127.0.0.1/blog/?p=1104/feed 0
تپه‌نوردی یک کوماندو در تپه‌های توپیالند! https://127.0.0.1/blog/?p=1048 https://127.0.0.1/blog/?p=1048#respond Mon, 15 Jan 2024 18:12:52 +0000 https://vahidbaghi.ir/blog/?p=1048 دو تا از کانال‌های یوتیوبی که دنبال می‌کنم و خیلی دوست‌شون دارم، Mia Plays و Kouman هستند. توی این پست قراره ویدئوهای کانال کومان رو بررسی کنم. وقتی داشتم این پست رو می‌نوشتم، ۱۳۹ تا ویدئو توی کانال کومان بود که ۱۱۴ تاش رو بررسی کردم. بقیه ویدئوها فقط قسمت‌های کوتاهی از ویدئوهای اصلی بودن که توی بخش Shorts گذاشته شده بودن. توی آخرین ویدئو یعنی «ویدیوهای دیده نشده از کومان!» اعلام کردند که قراره استودیو رو ببرن یه جای دیگه و الان مشغول اسباب‌کشی هستند. نوشتن این پست رو از مدت‌ها قبل شروع کرده بودم و کم‌کم داشتم تکمیلش می‌کردم. حالا بریم سراغ اصل قضیه!

مدت زمان ویدئوها

مجموع کل ویدئوها 121980 ثانیه یا ۲۰۳۳ دقیقه یا حدودا ۳۴ ساعته. ویدئو «بهترین شکلات دنیا رو پیدا کردیم!!!» با مدت زمان ۲۷ دقیقه، طولانی‌ترین ویدئو کومانه. توی این ویدئو شکلات اختصاصی کومان هم معرفی میشه که من منتظرم ایران برسه که ما هم بتونیم تستش کنیم. ویدئو «ولاگ گرونترین چیکن برگر!» هم با مدت زمان ۱۲ دقیقه، کوتاه‌ترین ویدئو کومانه.

نمودار زیر مدت زمان هر کدوم از ویدئوها رو بر حسب دقیقه نشون میده. محور عمودی اسم و تاریخ انتشار ویدئوها و محور افقی هم مدت زمان بر حسب دقیقه رو نشون میده. ویدئوها به ترتیب زمان انتشار (از پایین به بالا) مرتب شدند. یعنی هر چقدر از بالا به سمت پایین نمودار حرکت کنیم ویدئوها قدیمی‌تر میشن. میانگین مدت زمان همه ویدئو ها هم ۱۷ دقیقه است.

ساعت انتشار ویدئوها

نمودار زیر نشون می‌ده بیشتر ویدیوها، تو چه ساعت‌هایی از روز منتشر شدن. اون اعداد روی دایره ساعت شبانه‌روز رو نشون می‌دن (از صفر تا 23) و اون اعداد روی خطوط، یعنی ۱۰، ۲۰، ۳۰ و ۴۰ تعداد ویدیوها رو تو هر ساعت نشون می‌دن. همونطور که از نمودار هم مشخصه، بیشتر ویدئوها بین ساعت ۱۱ تا ۱۴ به وقت ایران منتشر شدن.

اگر منطقه زمانی رو Canada/Pacific بذاریم نمودار به صورت زیر میشه که نشون میده بیشتر ویدئوها در ساعت ۱۲ شب تا ۳ صبح به وقت کانادا منتشر شدن.

نمودار زیر هم نشون میده ویدئو ها در چه روز هایی از هفته و چه ساعاتی از شبانه‌روز منتشر شدن. محور افقی که روز های هفته و محور عمودی هم ساعات شبانه‌روز رو نشون میده. مثلا از نمودار زیر میشه متوجه شد بیشترین تعداد ویدئو، جمعه ها ساعت ۱۲ ظهر به وقت ایران منتشر شده.

نمودار زیر نشون میده فاصله زمانی بین انتشار ویدئو ها چقدر بوده. مثلا نمودار زیر نشون میده فاصله بین «ویدئوهای دیده نشده از کومان!» و ویدئو قبلیش ۸ روز بوده. یا مثلا اولین ویدئویی که منتشر کردند طبیعتا چون قبلش ویدئویی وجود نداشته، توی نمودار زیر مقدارش صفره. بیشترین وقفه زمانی هم برای ویدئو «آیا هر چیزی ترشی میشه؟ مثلا سوسیس» بوده که با فاصله ۱۳۳ روز از ویدئو قبلیش منتشر شده. به صورت میانگین هم فاصله بین ویدئو ها ۷ روز بوده.

کومان چه رنگیه؟

به نظرتون فیلم ها رنگ دارند؟ آره دارند! یه چیزی وجود داره به نام MovieBarcode که به شما اجازه میده فضای رنگی هر فیلم رو با یک نگاه متوجه بشید. مثلا تصویر زیر MovieBarcode فیلم ماتریکس رو نشون میده :

حالا چه جوری ساخته میشه؟ میان از هر ثانیه فیلم، رنگ غالب (رنگی که از همه بیشتر توی اون ثانیه تکرار شده) رو به دست میارن و این کار رو برای تمام ثانیه های فیلم انجام میدن و رنگ ها رو با همون ترتیب زمانی فریم های فیلم کنار هم قرار میدن. در نتیجه، یک عکس به دست میاد که رنگ غالب تو کل فیلم رو میشه با یک نگاه متوجه شد. در مورد این موضوع توی این لینک بیشتر میتونید بخونید.

حالا من اومدم با استفاده از این کد، این کار رو با تمام ویدئو های کومان انجام دادم. حالا ۱۱۴ تا MovieBarcode داریم. بعدش اومدم این ۱۱۴ تا عکس رو به همون ترتیب زمان انتشار به هم دیگه چسبوندم (از چپ به راست و از بالا به پایین) که یعنی اولین ویدئو گوشه بالا سمت چپه و آخرین ویدئو گوشه پایین سمت راسته. نتیجه عکس زیر شد :

کومان بیشتر در مورد چی حرف زدن؟

تو این بخش قصد دارم ابر کلمات دیالوگ هایی که تو ویدئوهای کومان گفته شده رو ترسیم کنم. ابر کلمات چیه؟ هر چقدر اندازه فونت یه کلمه توی ابر کلمات بزرگتر باشه، یعنی تعداد تکرار اون کلمه توی متن بیشتر بوده. تصویر زیر ابر کلمات عنوان ویدئو های کومان رو نشون میده :

تصویر زیر ابر کلمات تمام زیرنویس های ویدئو های کومان رو نشون میده. بیشتر از نصف ویدئو ها خودشون زیرنویس داشتند و برای اون تعدادی که نداشتند از این سایت استفاده کردم که براشون زیرنویس تولید کنم.

دلیل اینکه کلمه «میا» خیلی تو دیالوگ ها تکرار شده دو تا چیزه. اولیش اینه که زیاد پیش میاد که کوروش با پشت صحنه (یعنی میا) صحبت میکنه و اون رو خطاب میکنه. دومیش هم اینه که توی زیرنویس هایی که خود کومان برای ویدئوهاش قرار داده، اسم کسی که دیالوگ رو گفته نوشتند :

توی سایتی که بالاتر گفتم و به کمکش برای قسمت هایی که زیرنویس نداشتند، زیرنویس تولید کردم، ابزار های دیگه‌ای هم داره و آنالیز های مختلفی از فیلم میده. یکی از اون آنالیز ها موضوع فیلمه. بر اساس دیالوگ هایی که رد و بدل میشه تشخیص میده موضوع فیلم چیه و چند تا اسم رو پیشنهاد میده. ابر کلمات موضوعات ویدئو ها رو تو تصویر زیر میتونید مشاهده کنید :

کی از همه بیشتر جلوی دوربین بوده؟

یکی از ویژگی هایی که سایت videoindexer.ai داره اینه که چهره هایی که توی هر ویدئو حضور دارند رو شناسایی میکنه و میگه توی چند درصد از اون ویدئو حضور داشتند. البته توی این کار خطا داره و ممکنه دو زاویه مختلف از یک نفر رو دو تا چهره متمایز در نظر بگیره. من به صورت دستی سعی کردم این خطا رو به صفر نزدیک کنم. یعنی اومدم و اون چهره هایی که متعلق به یک نفر بوده ولی دو نفر در نظر گرفته رو اصلاح کردم.

شاید بگید که توی ویدئوهای کومان همیشه کوروش و ایمان جلوی دوربین میشینن و میا هم فقط گاهی از اوقات جلوی دوربین حضور پیدا میکنه. بنابراین چهره جفتشون باید به صورت مساوی در ویدئو دیده بشه. اما اگر دقت کرده باشید گاهی از اوقات دوربین فقط روی کوروش یا فقط روی ایمان فوکوس میکنه. یا مثلا زمانی که ولاگ دارند یا یه بازی رو انجام میدن دیگه هر جفتشون جلوی دوربین نیستند.

نمودار زیر نشون میده که توی ۵۵.۲۶ درصد ویدئو ها (۶۳ ویدئو) چهره کوروش بیشتر جلوی دوربین بوده و توی ۴۴.۷۴ درصد ویدئو ها (۵۱ ویدئو) چهره ایمان بیشتر جلوی دوربین بوده. نمودار زیر بر اساس زمان انتشار ویدئو ها از چپ به راست و از بالا به پایین مرتب شده. یعنی اولین ویدئو گوشه بالا سمت چپه و آخرین ویدئو گوشه پایین سمت راسته.

این اختلاف ممکنه فقط در حد چند ثانیه باشه ولی به هر حال حتی ۱ ثانیه هم بیشتر باشه، یعنی اون چهره ۱ ثانیه بیشتر جلوی دوربین بوده.

آپدیت : من خیلی تلاش کردم این پست رو براشون بفرستم که ببینن ولی نشد. به روش های مختلف براشون فرستادم. حتی ایمیل کردم ولی انگار تمایل ندارن حتی این پست رو ببینن. تو توییتر، افراد مختلف هم تگشون کردن که این پست رو ببینن ولی اهمیتی ندادن. من انتظار تخیلی نداشتم. انتظار نداشتم مثلا تو یه ویدئو کومان در موردش صحبت کنن یا حتی ریتوییتش کنن یا هر چیز دیگه‌ای … صرفا دوست داشتم این پست رو فقط ببینن. حتی انتظار نداشتم لایک کنن یا کامنت بذارن. هیچی! فقط می‌خواستم کاری که به عنوان یه طرفدار انجام دادم رو ببینن.

]]>
https://127.0.0.1/blog/?p=1048/feed 0
از دوغ چیلی تا آبمیوه گوجه فرنگی! (گردشی در سوپرمارکت های اسنپ) https://127.0.0.1/blog/?p=1036 https://127.0.0.1/blog/?p=1036#respond Sun, 07 Jan 2024 12:16:05 +0000 https://vahidbaghi.ir/blog/?p=1036 من کلا خیلی علاقه دارم محصولات عجیب و غریب رو تست کنم. چند وقت پیش دیدم یه محصولی وجود داره به نام دوغ چیلی فلفلی با گوجه فرنگی هراز و خب اولین کاری که انجام دادم این بود که تو سوپرمارکت اسنپ بگردم ببینم جایی داره که سفارش بدم یا نه. هیچ سوپرمارکتی نداشت. حتی تو جاهای مختلف شهر که داشتم راه میرفتم بازم سرچ کردم که ببینم توی اون محدوده وجود داره یا نه. کلا هیچ جایی نداشت! تو گوگل که سرچ کنید، سایت های متفرقه زیادی میاره ولی اونایی که من چک کردم ناموجود بودند.

بعد در حین جستجو دیدم یه چیزی به نام دوغ لیموناد و آبمیوه گوجه فرنگی سن‌ایچ هم داریم. تو ویدئو کومان هم دیدم بیسکویت توریستی آناتا هم داریم که تا مرحله نیمه نهایی مقایسه بالا رفت و من حتی اسمش رو هم نشنیده بودم. تو ویدئو قبلی کومان هم چیپس ها با طعم های عجیب رو داشتند تست میکردند (البته هیچ کدوم تو ایران پیدا نمیشه). اگر جمله اول این پست رو دوباره بخونید متوجه میشید که دیگه داشتم روانی میشدم که نمیتونم اینها رو تست کنم! این شد که گفتم تو کل سوپرمارکت های اسنپ تهران میگردم ببینم کجا این موارد بالا رو داره. نکته هم اینه که مثلا دیجی‌کالا بعضی از این ها رو داره و بعضی رو نداره. حوصله طی شدن روند پردازش کالا دیجی‌کالا رو هم نداشتم. یا مثلا خیلی مسخره میشه که یه دونه دوغ یا شکلات بزنی از یه سایتی برات بیارن. حضوری خرید کردن برام ساده تر بود فقط آدرس میخواستم. بعد گفتم حالا که دارم دیتای سوپرمارکت ها رو جمع میکنم، فقط دنبال ۴ تا محصول خاص نگردم. اطلاعات بیشتری استخراج کنم. یه اسکریپت گذاشتم و با سرعت پایین (که اختلالی در سایت به وجود نیاره) در طول ۳ روز دیتا رو جمع کردم. حالا بریم یکسری تحلیل ریز روی این دیتا داشته باشیم.

کدوم سوپرمارکت بیشترین تنوع رو تو هر دسته بندی داره؟

جدول زیر نشون میده برای هر دسته‌بندی (مثلا شیر، شکلات و …) کدوم سوپرمارکته که بیشترین تنوع رو داره. مثلا وقتی یه سوپرمارکتی ۲۰ مدل شیر داره و بقیه سوپرمارکت ها ۵ مدل دارند، این یعنی سوپرمارکت مورد نظر ما بیشترین تنوع رو تو دسته‌بندی شیر داره.

دسته بندینامتعداد محصولمحلهلینک سوپرمارکت
چایسوپرمارکت سنتر هدایت (شریعتی)112دروسLink
بستنی و فالودهسوپرمارکت تست پالیز145بوستان ولایتLink
چیپس، پفک، پاپکورنباران P.O.S (همواره تخفیف)268شهرک گلستانLink
ویفرسوپرمارکت سنتر هدایت (شریعتی)97دروسLink
آدامس و خوشبوکننده دهانسوپرمارکت هدایت (دروس)168دروسLink
دوغسوپرمارکت کوهسار( بلوار ارتش)50شهرک البرزLink
کیک و کلوچهسوپرمارکت تست پالیز161بوستان ولایتLink
آب معدنی، طعمدار و گازدارسوپرمارکت هدایت (دروس)119دروسLink
بیسکویتسوپرمارکت سنتر هدایت (شریعتی)233دروسLink
شکلاتسوپرمارکت میلاد (اقدسیه)271كاشانکLink
پنیرسوپرمارکت خورشید (دروازه شمیران)184دروازه شميرانLink
شیرسوپرمارکت کوهسار( بلوار ارتش)119شهرک البرزLink
آجیل، چیپس میوهسوپرمارکت تابستان 93 (امیر کبیر)90گلستان شرقیLink
آبنبات و تافیسوپرمارکت سنتر هدایت (شریعتی)51دروسLink
شربتسوپرمارکت کوهسار( بلوار ارتش)39شهرک البرزLink
کشکسوپرمارکت سنتر هدایت (شریعتی)23دروسLink
آبمیوهسوپرمارکت کوهسار( بلوار ارتش)283شهرک البرزLink
فرآورده های قهوهسوپرمارکت میلاد (اقدسیه)281كاشانکLink
نوشیدنی انرژیزاسوپرمارکت شبانه روزی گلدن استور (ساقدوش-هروی)83مبارك آباد – حسين آبادLink
پاستیل و مارشمالوسوپرمارکت یاران دریان رشیدی (بلوار کاج)98گلستان شرقیLink
کرهسوپرمارکت تست پالیز32بوستان ولایتLink
نوشابهسوپرمارکت هدایت (دروس)112دروسLink
خامهسوپرمارکت تست پالیز36بوستان ولایتLink
ماستوال مارکت نازی آباد (همواره تخفیف)94نازی آبادLink
دمنوشسوپرمارکت شبانه روزی گلدن استور (ساقدوش-هروی)58مبارك آباد – حسين آبادLink
ماءالشعیرسوپرمارکت کوهسار( بلوار ارتش)123شهرک البرزLink
غلات برشته و صبحانهسوپرمارکت جام جم (جردن)85امانيهLink
لبنیات گیاهیسوپرمارکت میلاد (اقدسیه)28كاشانکLink
عرقیاتسوپرمارکت سنتر هدایت (شریعتی)28دروسLink
سایر تنقلاتسوپرمارکت آتی (آتی ساز)17سعادت آبادLink
آلوچه و لواشکسوپرمارکت تابستان 93 (امیر کبیر)33گلستان شرقیLink

پرتکرار ترین محصول تو هر دسته بندی چیه؟

جدول زیر نشون میده تو هر دسته بندی، کدوم محصوله که بیشتر سوپرمارکت ها اون رو دارند.

دسته بندینام محصولتعداد سوپرمارکت ها
چایچای ممتاز هندوستان گلستان (500 گرم)537
بستنی و فالودهبستنی ویفرنا زعفرانی میهن 75 گرمی449
چیپس، پفک، پاپکورناسنک کرانچی تند و آتشین چی توز 95 گرمی611
ویفرویفر کرم دار کاراملی رنگارنگ مینو 14 گرمی575
آدامس و خوشبوکننده دهانآدامس نعنا بدون قند بایودنت 12 عددی447
دوغدوغ بدون گاز نعنایی گرمادیده عالیس 1.5 لیتری485
کیک و کلوچهکیک کشمشی درنا 70 گرمی546
آب معدنی، طعمدار و گازدارآب گازدار کریستال 1 لیتری368
بیسکویتبیسکویت کرم دار ساقه طلایی مینو 192 گرمی593
شکلاتکرم کاکائو فرمند 40 گرمی476
پنیرپنیر لبنه پرچرب کاله 350 گرمی583
شیرشیر پرچرب مدت دار میهن 200 میلی لیتری466
آجیل، چیپس میوهبادام زمینی سرکه‌ای مزمز 35 گرمی592
آبنبات و تافیتافی شیری رویتال دراژه (40 گرم)200
شربتشربت آلبالو سن ایچ (780 میلی لیتر)337
کشککشک مایع شیشه ای سمیه (650 گرم)504
آبمیوهنوشیدنی گازدار لیموناد زمزم 1 لیتری521
فرآورده های قهوهپودر قهوه فوری گلد نسکافه (100 گرم)525
نوشیدنی انرژیزانوشیدنی انرژی زا MFP هایپ 250 میلی لیتری609
پاستیل و مارشمالوپاستیل میوه ای ماری شیبا 90 گرمی353
کرهکره حیوانی شکلی 50 گرمی467
نوشابهنوشابه پرتقالی فانتا 1.5 لیتری736
خامهخامه نیم چرب پاک 100 گرمی418
ماستماست همزده پرچرب سون کاله 2.2 کیلوگرمی370
دمنوشدمنوش نعنا کیسه ای مهرگیاه (14 عدد)179
ماءالشعیرماءالشعیر لیمو بهنوش (330 میلی لیتر)547
غلات برشته و صبحانهغلات صبحانه شکلاتی بالشتی چی فلکس چی توز 90 گرمی429
لبنیات گیاهیشیرفندق بدون قند نیچرلین (یک لیتر)160
عرقیاتگلاب ربیع 430 میلی لیتری390
سایر تنقلاتنی شیر موزی جادویی پیکولا (5 عدد)129
آلوچه و لواشکلواشک پذیرایی چندمیوه خشکپاک (300 گرم)244

کدوم سوپرمارکت ها بیشترین محصولات خاص رو داشتند؟

اول باید محصول خاص رو تعریف کنم. منظور از محصولات خاص، محصولاتی هستند که کمتر سوپرمارکتی اونها داره. نحوه پیدا کردنشون هم اینجوریه که اول تعداد تکرار هر محصول رو تو تمام سوپرمارکت ها پیدا میکنیم. یعنی بعد از این مرحله مثلا متوجه میشیم ۵۰۰ تا سوپرمارکت ساقه طلایی رو داشتند. یا مثلا فقط ۱ سوپرمارکت، بیسکویت فلان رو داشته. الان اینجا بیسکویت فلان، یه محصول خاصه. چرا؟ چون بین تمام سوپرمارکت های موجود در اسنپ، فقط همین یه دونه سوپرمارکت بوده که این بیسکویت رو داشته.

حالا اون محصولاتی که فقط در ۱ سوپرمارکت موجود بودند رو انتخاب میکنم و یه جایی ذخیره میکنم. مثلا فرض کنید ۳۰۰۰ تا محصول پیدا شده که فقط ۱ سوپرمارکت اون رو داشته. حالا میخوام بدونم کدوم سوپرمارکت، بیشترین تعداد از این محصولات خاص رو داشته. چون تعداد کل سوپرمارکت هایی بررسی شده ۷۱۹ تا بوده. خب وقتی ۳۰۰۰ تا محصول پیدا شده که فقط ۱ سوپرمارکت اونها رو داشته، یعنی سوپرمارکت هایی وجود دارند که چند تا از این ۳۰۰۰ محصول خاص رو به فروش میرسونن. جدول زیر سوپرمارکت هایی رو نشون میده که بیشترین تعداد محصولا خاص رو داشتند :

کد سوپرمارکتنام سوپرمارکتتعداد محصول خاصمحلهلینک
0jnqngسوپرمارکت هدایت (دروس)288دروسLink
0jjr8gباران P.O.S (همواره تخفیف)205شهرک گلستانLink
0gko1mسوپرمارکت تست پالیز179بوستان ولایتLink
3de5rwسوپرمارکت شکلات نیکا (اکباتان)90اكباتانLink
0wz5gvسوپرمارکت کامو (سردار جنگل شمالی)75المهدیLink
pvqjr5سوپرمارکت مریم (امازاده جعفر)52باغ فيضLink
3xrz69سوپرمارکت ون مارت (تهرانپارس)47تهران پارس غربیLink
3×1974سوپرمارکت میلاد (اقدسیه)45كاشانکLink
0jjrlqسوپرمارکت دیدمارکت (باشگاه انقلاب)43آراراتLink
0mj1eqسوپرمارکت جردن قدیم (جردن)41امانيهLink
09y64yسوپرمارکت یاران دریان لوکس (گیشا)41كوی نصرLink
0rvdvvسوپرمارکت آتی (آتی ساز)40سعادت آبادLink
3d7jygسوپرمارکت فرهنگیان(بهارستان)37ایرانLink
37y94nسوپرمارکت خورشید (دروازه شمیران)37دروازه شميرانLink
0wwxo8سوپرمارکت کوهسار( بلوار ارتش)33شهرک البرزLink
0m1wxvسوپرمارکت 49 (نارمک)31هفت حوضLink
حالا اگر به جای محصولاتی که فقط ۱ سوپرمارکت اونها رو داره، محصولاتی رو انتخاب کنیم که از بین ۷۱۹ سوپرمارکت، حداکثر ۱۰ تا سوپرمارکت اون محصول دارند، نتیجه به صورت زیر میشه :
کد سوپرمارکتنام سوپرمارکتتعداد محصول خاصمحلهلینک
0jnqngسوپرمارکت هدایت (دروس)694دروسLink
0gko1mسوپرمارکت تست پالیز475بوستان ولایتLink
3×1974سوپرمارکت میلاد (اقدسیه)421كاشانکLink
0jjrlqسوپرمارکت دیدمارکت (باشگاه انقلاب)405آراراتLink
0wwxo8سوپرمارکت کوهسار( بلوار ارتش)339شهرک البرزLink
0rvdvvسوپرمارکت آتی (آتی ساز)331سعادت آبادLink
0nvxm8سوپرمارکت فامیلی مارکت (قیطریه)322قيطريهLink
37y94nسوپرمارکت خورشید (دروازه شمیران)272دروازه شميرانLink
0jjr8gباران P.O.S (همواره تخفیف)260شهرک گلستانLink
09y64yسوپرمارکت یاران دریان لوکس (گیشا)257كوی نصرLink
0mj1eqسوپرمارکت جردن قدیم (جردن)253امانيهLink
0mjzxrسوپرمارکت بلوط دروس (دولت)237دروسLink
3756e2سوپرمارکت شبانه روزی گلدن استور (ساقدوش-هروی)229مبارك آباد – حسين آبادLink
p6zj9gسوپرمارکت سنتر هدایت (شریعتی)221دروسLink
0l6xenسوپرمارکت گاندی (ونک)215کاووسیهLink
3d7jygسوپرمارکت فرهنگیان(بهارستان)214ایرانLink
0m1w9oسوپرمارکت قیطریه (بلوار صبا)207حكمتLink
0wz5gvسوپرمارکت کامو (سردار جنگل شمالی)202المهدیLink
0gky1mسوپرمارکت جام جم صنایع (میدان ارتش)197اراجLink
pz962oسوپرمارکت یاران دریان توانیر (عباسپور)197توانیرLink
0m1wxvسوپرمارکت 49 (نارمک)192هفت حوضLink
pvl67xسوپرمارکت امیران (ازگل)190ازگلLink
31qon7وال مارکت استاد معین (همواره تخفیف)189استاد معينLink

کدوم سوپرمارکت ها محصولات گرون‌تری دارند؟

احتمالا دیدید که بعضی محصولات تو سوپرمارکت های مختلف قیمت های متفاوتی دارند. با توجه به اینکه معمولا محصولات سوپرمارکت ها کارخونه‌ای هستند، بنابراین قیمت مصرف کننده دارند. اما چون سوپرمارکت ها محصولات رو انبار میکنن و در طول زمان میفروشن، ممکنه قیمت قدیم و جدید با هم متفاوت باشه. یه سوپرمارکت ممکنه به دلیل فروش زیادی که داره مرتب محصولات جدید رو بگیره و خب همیشه قیمتش به‌روز باشه و در مقابل ممکنه یه سوپرمارکت به دلیل فروش کم، محصول ۱ سال پیش رو با همون قیمت ۱ سال پیش بفروشه.

جدول زیر سوپرمارکت هایی رو نشون میده که قیمت محصولاتشون در مقایسه با سایر سوپرمارکت ها بیشتر بوده. ستون تعداد محصول گرانتر هم نشون میده قیمت چند تا از محصولاتشون در مقایسه با سایر سوپرمارکت ها بیشتر بوده.

کد سوپرمارکتنام سوپرمارکتتعداد محصول گرانترمحلهلینک
37y94nسوپرمارکت خورشید (دروازه شمیران)328دروازه شميرانLink
097o9dسوپرمارکت یاران دریان صبا (جردن)294امانيهLink
32rnw2سوپرمارکت یاران دریان رشیدی (بلوار کاج)251گلستان شرقیLink
0jjyx9سوپرمارکت دریا (پونک)197المهدیLink
0jnqngسوپرمارکت هدایت (دروس)183دروسLink
09y64yسوپرمارکت یاران دریان لوکس (گیشا)182كوی نصرLink
0jjr8gباران P.O.S (همواره تخفیف)137شهرک گلستانLink
3kj6kkسوپرمارکت یاران دریان آذربایجان 2 (بلوار فردوس)132سازمان برنامه جنوبیLink
0wqd2vسوپرمارکت آهنگری (توحید)120توحيدLink
0njny2سوپرمارکت خانواده (خیابان قزوین)112سليمانی-تيموریLink

حالا با همین فرمون بالا، فروشنده هایی که قیمت محصولاتشون از بقیه کمتره رو هم پیدا کردم.

کد سوپرمارکتنام سوپرمارکتتعداد محصول ارزانترمحلهلینک
0gko1mسوپرمارکت تست پالیز940بوستان ولایتLink
0mjz9oتست چین استور(همواره تخفیف)458شهرک گلستانLink
0rvdvvسوپرمارکت آتی (آتی ساز)167سعادت آبادLink
0jjrlqسوپرمارکت دیدمارکت (باشگاه انقلاب)149آراراتLink
0wwxo8سوپرمارکت کوهسار( بلوار ارتش)138شهرک البرزLink
3de5rwسوپرمارکت شکلات نیکا (اکباتان)129اكباتانLink
pojryvتست کیان(همواره تخفیف)128شهرک گلستانLink
pz9nxoسوپر مارکت یاران دریان هایپر مرکزی دارآباد (میدان داراباد)127دارآبادLink
0mjzxrسوپرمارکت بلوط دروس (دولت)116دروسLink
3×1974سوپرمارکت میلاد (اقدسیه)111كاشانکLink

چند تا طعم چیپس داریم؟

اول بریم سراغ طعم های مختلف چیپس. طعم های مختلف چیپس ها عبارتند از :

پنیر دودی، نمکی، کچاپ، سرکه‌ای، پیاز و جعفری، پنیری، عسل و خردل، فلفلی، پنیر ناچوز، فلفل سیاه، موسیر، خامه سبزیجات، ماست و ریحان، لیمویی، باربیکو، پنیر چدار و خامه ترش، سس آلفردو، چیلی، فلفل هالوپینو، سس سالسا، قارچ و خامه، لیمو و خامه، سرکه بالزامیک، پیتزایی، پنیر ایتالیایی، کنجدی، پنیر فرانسوی، سیر و سبزیجات، مرغ سوخاری پیاز و آویشن، نمک دریایی، پاپریکا، پیاز فلفل و گوجه، پیاز و خامه ترش، ماست و سبزیجات، لیمو ترش و فلفل سیاه، پیاز و سبزیجات، مرغ سوخاری، خامه و قارچ، پنیر و پیاز، باربیکیو دودی، مرغ، مرغ پیاز و آویشن، لیموفلفلی، سس ترش و پیاز، ماست خیار و نعنا

طعم های زیادی داریم ولی شاید همه‌ طعم هایی که تو کل مغازه ها داریم توی این لیست نباشند. چون بر اساس دیتای ۳ روز پیش سوپرمارکت اسنپه و حتی ممکنه یه سوپرمارکتی امروز یه طعم جدید بیاره.

دوغ چیلی رو کجا داره؟

دوغ چیلی رو تو کل سوپرمارکت های اسنپ فقط سوپرمارکت مگامارت (شاهین شمالی) داره که اون هم معلوم نیست الان موجود داشته باشه یا نه.

https://snapp.express/supermarket/-z-p4qklj

خودم دو نوع دوغی که خیلی دوست دارم یکی دوغ مخصوص کباب و دیزی و یکی هم دوغ یخچالیه که اینا رو هم با همون منطق تست کنیم ببینیم چیه امتحان کردم.

آب گوجه فرنگی؟!

آب گوچه فرنگی هم چیز عجیبی بود. من نشنیده بودم. کلا همین ۵ تا سوپرمارکت تو تهران دارند. من تو کامنت های دیجی‌کالا خوندم که نوشته بودند انگار توی ته‌مونده ظرف رب آب چرخونده باشی. این رو به عنوان کامنت منفی گفته بود ولی من بیشتر مشتاق شدم امتحانش کنم 🙂

کد سوپرمارکتنام سوپرمارکتنام محصولمحلهلینک
pz9nxoسوپر مارکت یاران دریان هایپر مرکزی دارآباد (میدان داراباد)آب گوجه فرنگی سن ایچ (750 میلی لیتر)دارآبادLink
0jnqngسوپرمارکت هدایت (دروس)آب گوجه فرنگی طبیعی (500 میلی لیتر)دروسLink
0nvxm8سوپرمارکت فامیلی مارکت (قیطریه)آب گوجه فرنگی تکدانه (یک لیتر)قيطريهLink
3deg57سوپرمارکت هایپر مارکت یار (تجریش)آب گوجه فرنگی و فلفل سن ایچ (750 میلی لیتر)دربندLink
p8okkrسوپرمارکت تهرانتو (بوکان)آب گوجه فرنگی طبیعی (یک لیتر)امامزاده قاسمLink

]]>
https://127.0.0.1/blog/?p=1036/feed 0
الملک، تحلیل لحظه‌ای بازار مسکن https://127.0.0.1/blog/?p=1010 https://127.0.0.1/blog/?p=1010#respond Mon, 18 Dec 2023 12:10:13 +0000 https://vahidbaghi.ir/blog/?p=1010 در این پست قصد دارم سایت الملک (almelk.com) رو که حاصل کار چند تا از دوستانم است، به شما معرفی کنم. امکانات این سایت هم برای افرادی که قصد معامله ملک دارند و هم برای مشاوران املاک که می‌خواهند با داده‌های به‌روز، اطلاعات املاک محدوده خود را پایش کنند، مناسب است. با ثبت‌نام در این سایت، یک روز فرصت دارید تا امکانات مختلف آن را آزمایش کنید. در ادامه، امکانات متنوع آن را شرح می‌دهم.

آمار و تحلیل لایت

توی این قسمت می‌تونید با ۲۰ فیلتر مختلف، املاک سراسر کشور را فیلتر کنید تا به ملک مورد نظر خود برسید. البته یک فیلتر هم برای زمان است که می‌تونید با اون بازه زمانی رو مشخص کنید؛ در مجموع ۲۱ فیلتر در اختیار دارید. در تصویر زیر می‌تونید این فیلترها را مشاهده کنید :

در بخش آمار و تحلیل لایت بعد از فیلتر کردن موارد دلخواه، می‌تونید نتایج زیر رو مشاهده کنید :

تعداد آگهی های فیلتر شده

تعداد آگهی های شخصی و املاکی (یعنی چند تا رو املاکی ها گذاشتند و چند تا رو یه شخص گذاشته)

-تعداد آگهی های عکس دار

-تعداد آگهی های نقشه دار (یعنی آگهی هایی که اطلاعات مختصات مکانی ملک روی نقشه وجود داره)

یکی دیگه از ویژگی هایی که این بخش داره نمودار میانگین قیمت در محله های مختلف رو نشون میده. مثلا توی تصویر زیر می‌تونید ببینید که کمترین قیمت برای محله جی و بیشتر قیمت برای حصار بوعلی و زعفرانیه است. یا مثلا تو محله ونک ۱۶۹ آگهی وجود داره که میانگین قیمت فروش هر متر تو این منطقه ۱۳۲ میلیون تومن و میانه قیمت ۱۲۸ میلیون تومنه. این اطلاعات بستگی به فیلتر هایی داره که انتخاب کردید. مثلا من فروش مسکونی رو انتخاب کردم. می‌تونید رهن یا اجاره رو هم انتخاب کنید.

تحلیل نقشه‌ای

توی این قسمت همون ۲۰ تا فیلتر رو داریم، با این تفاوت که اطلاعات رو روی نقشه به شما نشون میده. یعنی میتونید نقشه حرارتی هر کدوم از موارد زیر رو مشاهده کنید :

-تعداد آگهی ها

-قیمت فروش هر متر

-قیمت رهن هر متر

-میانگین مساحت خانه ها

-تعداد آژانس املاکی آگهی دهنده

-میانگین سال ساخت

مثلا در تصویر زیر من تعداد آژانس های املاکی آگهی دهنده رو انتخاب کردم :

همونطور که در تصویر بالا مشاهده می‌کنید در تهران و مشهد بیشترین آژانس های املاکی، بیشترین تعداد تبلیغات رو گذاشتند. با زوم کردن روی هر قسمت از نقشه میتونید این اطلاعات رو در مورد محله های مختلف در سراسر کشور مشاهده کنید.

آمار آژانس املاک

تو این قسمت هم اون ۲۰ تا فیلتر رو داریم با این تفاوت که اطلاعات آژانس های املاکی در شهر و محله انتخابی رو نشون میده. در تصویر زیر ابر کلمات اسامی آژانس های املاکی زعفرانیه تهران رو میتونید مشاهده کنید. هر چی سایز فونت بزرگ باشه یعنی اون املاکی تعداد آگهی های بیشتری رو توی این محله گذاشته :

در تصویر زیر می‌تونید ببینید در طول یک ماه گذشته، املاکی های زعفرانیه چه تعداد آگهی رو قرار دادند :

اون قله ها در نمودار بالا به ترتیب برای تاریخ های ۲۹ آبان، ۵ آذر، ۱۲ آذر و ۱۹ آذر ۱۴۰۲ هستند.

در تصویر زیر هم می‌تونید جدول اطلاعات همین املاکی ها رو مشاهده کنید که ستون های این جدول عبارتند از :

-نام آژانس

-لینک آژانس

-تعداد آگهی

-میانگین تعداد عکس

یکی از قسمت های جذاب این بخش (آمار آژانس املاک) نمودار فعالیت املاکی هاست. یعنی نشون میده کدوم املاکی، چه تعداد آگهی در مورد فروش/اجاره/رهن ملک مسکونی/تجاری/اداری/زمین گذاشته. ستون هایی که داره عبارتند از :

-نام آژانس املاک

-لینک آژانس

-تعدا آگهی آپارتمان

-تعداد آگهی زمین و کلنگی

-تعداد آگهی خانه و ویلا

-تعداد آگهی دفتر کار و مطب

-تعداد آگهی مغازه و غرفه

-تعداد آگهی صنعتی، کشاورزی و تجاری

علاوه بر این، این جدول به تفکیک مشاور هم وجود داره. یعنی مثلا آقا یا خانم فلانی از آژانس املاکی فلان چند تا آگهی در کدوم بخش گذاشته. این اطلاعات میتونه برای املاکی ها خیلی کاربردی باشه.

آمار و تحلیل لایو جامع

در این بخش همون اطلاعات بخش های قبلی رو به صورت جامع با تنوع نمودار های بیشتر داریم. یعنی یک محله یا شهر رو جستجو می‌کنید و به صورت یکجا تمام اطلاعات رو به شما نمایش میده و نمودار های متنوع تری هم نسبت به بخش های قبلی داره که در نتیجه، میتونید یک تحلیل جامع از منطقه مورد نظرتون داشته باشید. نمودار هایی که در این بخش وجود داره عبارتند از :

-جدول مشخصات آگهی ها : همه اطلاعات آگهی نظیر عنوان، لینک، قیمت هر متر، مساحت، سال ساخت، تعداد اتاق و … وجود داره

-تعداد آگهی بر حسب دسته‌بندی کلی و آگهی دهنده : این نمودار نشون میده توی هر دسته بندی (فروش/اجاره/رهن ملک مسکونی/تجاری/اداری/زمین) چند تا آگهی رو شخص گذاشته و چند تا رو مشاور املاک. تو نمودار زیر سبز پررنگ تعداد آگهی های شخصی و سبز کمرنگ تعداد آگهی های مشاور املاک رو تو هر دسته بندی نشون میده.

-نمودار قیمت فروش و رهن هر متر : تو این بخش میانگین و میانه قیمت فروش و رهن هر متر رو در کل کشور یا محدوده مورد نظر شما نشون میده. مثلا کمترین قیمت فروش برای ایوان مشهد و بیشترین برای الهیه تهران بوده.

از این دیتا نمودار زیر هم وجود داره که به تفکیک نشون میده تو هر دسته بندی چه تعداد آگهی هایی وجود داشته :

-فعالیت مشاورین املاک : دقیقا اطلاعات بخش آمار آژانس املاک رو اینجا هم میتونید مشاهده کنید.

و کلی نمودار و نقشه دیگه که من به همین مواردی که تا الان گفتم اکتفا میکنم.

تاریخچه قیمت : توی این بخش تاریخچه چند ماهه تغییرات قیمت رو میتونید مشاهده کنید. مثلا نمودار زیر تاریخچه ۴ ماه گذشته قیمت هر متر ملک در زعفرانیه رو نشون میده :

جستجو و ثبت گوش به زنگ

یکی از مهم ترین ویژگی های این سایت گوش به زنگه. فرض کنید دنبال یه خونه با ویژگی های خاص هستید. میتونید توی این بخش یک آلارم تنظیم کنید که هر زمان که اون خونه با ویژگی های مورد نظر شما پیدا شد یک پیام در ربات تلگرام الملک برای شما ارسال بشه. هر ۵ دقیقه دیوار رو چک میکنه که اون مورد مد نظر شما رو پیدا کنه. این ویژگی هم برای آژانس های املاک میتونه جذاب باشه هم مشتری ها. املاکی ها میتونن تو منطقه خودشون گوش به زنگ تنظیم کنن و هر موقع خونه مورد نظر مشتری پیدا شد، بهشون اطلاع داده بشه.

]]>
https://127.0.0.1/blog/?p=1010/feed 0
نقشه Dead Drop های جهان https://127.0.0.1/blog/?p=1006 https://127.0.0.1/blog/?p=1006#respond Wed, 13 Dec 2023 11:04:48 +0000 https://vahidbaghi.ir/blog/?p=1006 توی فیلم ها دیدید که مثلا یه نفر یه کتاب که داخلش اطلاعاتی مخفی شده رو تو یه ایستگاه اتوبوس میذاره و یه نفر دیگه اون رو برمیداره؟ به این روش dead drop میگن! حالا یه نفر به نام Aram Bartholl چند سال پیش یه پروژه ای رو شروع کرده به نام USB dead drop

تو این روش یه فلش درایو رو داخل دیوار، سنگ یا … قرار میدن و هر کسی میتونه اطلاعاتی رو داخلش بریزه یا برداره. تا الان 2236 فلش درایو که حجمشون به 69073 گیگابایت میرسه به این شبکه اضافه شده. مشخصات تمام dead drop ها رو میتونید در سایتش مشاهده کنید : https://deaddrops.com

حالا نکته بامزه چیه؟ تو ایران فقط یه dead drop داریم! حالا خودتون بخونید توی توضیحاتش چی نوشته

http://www.deaddrops.com/db/?page=view&id=1542

این توییت رو ۷ سپتامبر ۲۰۲۲ نوشتم :

https://twitter.com/vahidbaghi95/status/1567563254175600641

]]>
https://127.0.0.1/blog/?p=1006/feed 0
مرکز هندسی (centroid) تهران کجاست؟ https://127.0.0.1/blog/?p=990 https://127.0.0.1/blog/?p=990#respond Mon, 11 Dec 2023 11:26:33 +0000 https://vahidbaghi.ir/blog/?p=990 من چند سال پیش توییت زیر رو در توییتر دیدم و دقیقا مثل ایشون، کک به تنبونم انداخت که برم ببینم مرکز شهر تهران کجاست؟ اما اون زمان درگیر کار های مختلف بودم و بعدش هم که درگیر سربازی بودم و این قضیه به فراموشی سپرده شد.

https://twitter.com/polfosol/status/1245055111824576514

توصیه می‌کنم ایشون رو فالو کنید چون مطالب خوبی می‌نویسن. اما برای اینکه هم پیوستگی مطالب حفظ بشه و هم لازم نباشه توضیحات عالی ایشون رو بازنویسی کنم، محتوای توییت ایشون رو عینا در ادامه می‌نویسم که بعدش بریم سراغ کار اصلی خودمون.

محتوای توییت :

این توییتِ مربوط به چندروز پیش (اسکرین‌شات: http://bit.ly/twSCRSH) کک به تنبونم انداخت که برم ببینم واقعا مرکز ایران کجاست. لذا در این رشته‌توییت میخوام یه توضیحاتی بدم درمورد اینکه اصلا مرکز چیه و چه‌جوری محاسبه میشه. مرکز یک دایره از تمام نقاط روی دایره فاصله‌ی یکسانی داره. برای یک شکل متقارن مثل مربع هم مرکز تقارن خیلی تعریف ساده‌ای داره. اما برای شکل‌های نامتقارن و اجق‌وجق مرکز یعنی چی؟ طبق تعریف ریاضیاتی، مرکز (centroid) یک شکل اون نقطه‌ایه که برابره با میانگینِ تمام نقاط روی شکل.

به بیان فیزیکی، فرض کنید یه شکل «مسطح» رو به صورت افقی بذاریم رو نوک مداد. اگر نقطه‌ی تماس مرکز شکل باشه، اون وقت تعادل خودش رو می‌تونه حفظ کنه. راه ساده برای محاسبه‌ی مرکز شکل اینه که به این‌صورت از یه نخی آویزونش کنیم و امتداد نخ رو رسم کنیم. با آویزون کردنش از دو نقطه، مرکزش به‌دست میاد.

اما فرمول ریاضیش ممکنه پیچیده به نظر بیاد چون توش انتگرال داره. اینجاست که واقعا انتگرال به‌کار آدمیزاد میاد و باید لعنت فرستاد بر اونهایی که با حذف انتگرال ازبرنامه درسی، جوانان ما رو ازمحاسبه‌ی مرکز شکل‌ها محروم کرده و به فساد سوق دادن. به هرحال، فرمول ریاضیش اینه:

موسسه ملی ژئودتیک آمریکا (NGS) در اوایل قرن ۲۰ یه بررسی انجام داد برای تعیین مرکز این کشور. اینجا جزئیاتش رو توضیح داده:

https://ngs.noaa.gov/PUBS_LIB/GeoCenter_USA1.pdf

درواقع کاری که انجام دادن کمابیش همونی بود که گفتم. نقشه رو روی کاغذ درآوردن و بعد با آویزون کردن مرکزش رو پیدا کردن. اما یه مشکلی تو این روش هست که توضیح خواهم داد. به هرحال، طبق این محاسبه مرکز آمریکا شد یه جایی طرفای داکوتای جنوبی. بعد رفتن تو اون نقطه یه لوح یادبود زدن و به این صورت امامزاده و زیارتگاه درست کردن:

مشکلش اینه که زمین کرویه و وقتی که نقشه‌ی کشورا رو میخوان رو کاغذ مسطح رسم کنن اون بالاش پهن میشه و کلا چیزی که رو کاغذ دوبعدی میاد اونی نیست که واقعا باید باشه. علاوه‌براین، آلاسکا و هاوایی از اون تیکه‌ی اصلی آمریکا جدان و نمیشه نقشه‌ی یکپارچه ازش درآورد. این شکل‌ها رو ببینید:

بعدها با ابزارهای محاسباتی پیشرفته‌تر و نقشه‌های دقیق‌تر، محاسباتی برای تعیین مرکز کشورها انجام گرفت. این صفحه‌ی ویکی‌پدیا یه لیستی از مراکز کشورها رو آورده:

https://en.wikipedia.org/wiki/Geographical_centre

اما متاسفانه کشور ما تو اون لیست غایبه و لذا کس نخارد پشت من جز ناخن انگشت من. بریم برای محاسبه. چون شکل کشور ما نسبت به مثلا شیلی یا ژاپن زیاد اجق‌وجق نیست، ساده‌ترین کار اینه که وسطِ طول و عرض جغرافیاییش رو حساب کنیم. عرض جغرافیایی ایران از حدود ۲۵ تا ۴۰ درجه گسترده شده و طول جغرافیاییش از ۴۴ تا ۶۳ درجه. لذا میانگینِ این دو میشه بین نائین و میبد:

https://www.google.com/maps?q=+32.42,+53.683&z=5&t=h

خب واضحه که این روش خطای زیادی داره. حالا خوشبختانه یه ابزار قوی دراختیار ما هست به اسم Mathematica، که باهاش میشه انتگرال عددی رو با تقریب خیلی خوبی روی سطح‌های اجق‌وجق محاسبه کرده و نقطه وسط نقشه رو پیدا کرد. کدش رو به این صورت نوشتم:

با محاسبه میانگین انتگرال روی سطح دوبعدی، مختصات دقیق مرکز ایران میشه اینجا که نقطه‌ایه در شمال‌شرقی اردکان و میبد:

http://maps.google.com/maps?q=+32.5686,+54.3011&z=5&t=h

اما همون‌طور که گفتم، نقشه‌ی یک کشور وقتی از سطح کره‌ی زمین روی یک سطح دوبعدی میاد، یه سری پهن‌شدگی و جمع‌شدگی داره که خطا ایجاد می‌کنه.

این نکته رو هم درنظر بگیرید که ایران نسبت به آمریکا خیلی کوچکتره و بالطبع خمیدگیش روی سطح کره‌ی زمین خیلی کمتره. لذا این خطای تسطیح نقشه‌ی ایران قاعدتا خیلی کمه. ولی برای اینکه دلمون آروم بگیره میگیم سگ خورد. بدون تسطیح نقشه، همون میانگین انتگرالِ سطح سه‌بعدی رو حساب می‌کنیم:

با این روش، نقطه‌ای که محاسبه میشه یک مختصات سه‌بعدی داره. اون عدد سوم که تو نتیجه‌ی آخر ملاحظه می‌کنید ارتفاعشه. پس با تقریب خوبی میشه گفت که دیگه این محاسبه دقیقه و مو لای درزش نمیره. مرکز ایران می‌افته روستای پَتکستان در حوالی اردکان:

https://www.google.com/maps?q=+32.5247,+54.4659&z=5&t=h



تا اینجای کار توضیحات ایشون بود. بنابراین متوجه شدید که این کار چه جوری انجام میشه. حالا من میخوام همین کار رو برای شهر تهران انجام بدم. اول باید مرز شهر تهران رو پیدا کنم که از فایل GeoJson زیر استفاده کردم :

https://github.com/yassermzh/iran-map/blob/master/maps/tehran_iran_admin.geojson

این فایل با ۴۱۳۹ نقطه، مرز تهران رو نشون میده که به صورت زیره :

با استفاده از کتابخونه shapely توی پایتون نقطه زیر رو به عنوان نقطه مرکزی تهران پیدا کردم :

https://map.ir/lat/35.725472/lng/51.391983/z/12

]]>
https://127.0.0.1/blog/?p=990/feed 0
معمای سریال Person of Interest https://127.0.0.1/blog/?p=955 https://127.0.0.1/blog/?p=955#respond Fri, 24 Nov 2023 08:28:40 +0000 https://vahidbaghi.ir/blog/?p=955

داستان از جایی شروع شد که تو قسمت ۲ فصل ۴ سریال Person of Interest یه معما مطرح میشه و پاسخش باعث شد که به فکر انجام این پروژه بیفتم. مطالبی که در ادامه در مورد این معما میگم به هیچ وجه اسپویل سریال نیست. اینجوری نیست که این معما با یه چیز مهم در قسمت های بعدی مرتبط باشه. توی همون قسمت در حد ۵ دقیقه تاریخ مصرف داره.

به تصویر زیر که یک صحنه از این سریاله توجه کنید :

اینجا یه شماره تلفن پیدا میکنن و زمانی که باهاش تماس می‌گیرن، می‌بینن کلا چنین شماره‌ای در شبکه وجود نداره. بعد حدس می‌زنن که این نقاطی که بین اعداد وجود داره نشان دهنده علامت ضرب باشه. اگر این ضرب رو انجام بدید نتیجه به صورت زیر میشه :

950✖641✖6701 = 4,080,573,950

با یه عدد ۱۰ رقمی روبه‌رو هستیم. بعد متوجه میشن که این عدد یک مختصات جغرافیایی رو داره نشون میده. این مختصات رو نشون میده :

latitude = 40.805

longitude = 73.950

این مختصات یه جایی توی قرقیزستانه. اما جریان این سریال توی آمریکا داره اتفاق میافته و اگر 73.950 رو به منفی 73.950 تغییر بدیم میشه یه جایی توی نیویورک.

حالا ایده‌ای که به سرم زد این بود که این کار رو برای شماره موبایل های ایران انجام بدم و ببینم چه لوکیشن هایی داخلش پیدا میشه. یعنی چی؟ مثلا شماره زیر رو در نظر بگیرید :

9123456789

صفر اولش رو در نظر نمی‌گیرم. 912 هم که ثابته و تغییر نمیکنه. برای ۷ رقم بعدش هم باید جایگشت k شی از n شی رو محاسبه کنیم که n میشه ۱۰ و k میشه ۷. تعداد جایگشت های بدون تکرار برابر است با :

604800

بدون تکرار یعنی چی؟ یعنی تو 7 رقم آخر یه شماره، از هر عدد فقط یکی وجود داره. مثلا شماره های زیر رو نداریم:

9123456111

9123456788

اگر بخوایم عدد تکراری هم داشته باشیم، میشه 10 میلیون حالت مختلف که پردازش کردنش سخت نیست ولی خب طول میکشه و من می‌خوام بدون تکرارش رو بررسی کنم. اگر کسی می‌خواد اون 10 میلیون حالت رو محاسبه کنه می‌تونه خودش دست به کد بشه و اگر کدنویسی بلد نیست و به پاسخش نیاز داره می‌تونه در قالب پروژه به من بگه براش انجام بدم!

اولین کاری که انجام دادم این بود که پیش شماره های اپراتور های مختلف رو پیدا کنم که از مطلبی که این سایت نوشته پیدا کردم.

پیش شماره های همراه اول :

990,991,992,993,994,911,912,913,914,915,916,917,918

پیش شماره های ایرانسل :

930,933,935,936,937,938,939,901,902,903,904,905,941,900

پیش شماره های رایتل :

920,921,922

در مجموع ۳۰ تا پیش شماره داریم. ممکنه پیش شماره های دیگه‌ای هم وجود داشته باشه ولی من فقط این پیش شماره ها رو می‌خوام بررسی کنم. حالا مختصات رو چه جوری از این شماره ها استخراج کنیم؟ دقیقا مثل همین کاری که تو سریال انجام شد، منم میام ۳ رقم اول رو در ۳ رقم دوم و در ۴ رقم آخر ضرب میکنم. مثلا اگر شماره زیر رو داشته باشیم :

9123456789

ضربش به صورت زیر میشه :

912✖345✖6789 = 2,136,090,960

من ضرب به شکل بالا رو برای تمام جایگشت های هر پیش شماره محاسبه کردم و نتیجه این ضرب، یک عدد 8 یا 9 یا 10 رقمی شد. از این سه حالت خارج نبود. برای هر حالت من به یک شکل مختصات رو استخراج میکنم که در ادامه توضیح میدم. لطفا شرط هایی که میذارم رو با دقت بخونید. چون این مسئله رو با شرط های مختلف میشه به شکل های مختلف بررسی کرد. من تمام شرط هایی که مد نظرمه رو توضیح میدم. پس با دقت بخونید.

اعداد 8 رقمی : مثلا فرض کنید نتیجه یه ضربی شده 21,361,909. حالا اگر بخوایم lat و long ما حداقل 2 رقم اعشار داشته باشند، مختصات ما به صورت زیر میشه :

latitude = 21.36

longitude = 19.09

شاید این سوال براتون پیش بیاد که چرا قبل از اعشار رو 2 رقم در نظر گرفتی؟ دلیلش اینه که lat تمام نقاط در ایران حدودا بین 24 تا 40 و long حدودا بین 43 تا 63 قرار داره. همونطور که می‌بینید، کلا قبل از اعشار ما دو رقم رو داریم و از اونجایی که من میخوام lat و long های داخل ایران رو پیدا کنم، کلا فرض میکنم قبل از اعشار 2 رقم رو داریم. نکته دیگه‌ای هم که وجود داره اینه که رنج lat میتونه بین منفی 90 تا 90 و رنج long میتونه بین منفی 180 تا 180 باشه. پس هر عدد سه رقمی رو هم نمی‌تونیم به عنوان lat و long در نظر بگیریم و تو ایران هم که فقط 2 رقمی داریم. پس چه کاریه؟ کلا 2 رقمی در نظر میگیرم. خلاصه اینکه قبل از اعشار رو 2 رقم و بعد از اعشار رو حداقل 2 رقم در نظر می‌گیرم.

اعداد 9 رقمی : فرض کنید نتیجه یه ضربی شده 213,619,096. با این شرط که lat و long حداقل 2 رقم اعشار داشته باشه، دو حالت زیر رو می‌تونیم داشته باشیم.

مختصات اول :

latitude1 = 21.36

longitude1 = 19.096

مختصات دوم :

latitude2 = 21.361

longitude2 = 90.96

اینجا هم می‌بینید دیگه؟ اگر قبل از اعشار رو 2 رقم و بعد از اعشار رو حداقل 2 رقم در نظر نگیرم، حالت های دیگه‌ای هم به وجود میاد که ما ازش صرف نظر می‌کنیم. نکته دیگه‌ای که وجود داره اینه که من فرض میکنم قراره همه ارقام این عدد مصرف بشه. یعنی چی؟ یعنی شما نمی‌تونید بگید 2 رو از ابتدای عدد نادیده میگیرم و lat و long زیر رو به دست بیارید :

latitude = 13.61

longitude = 90.96

من میخوام دقیقا مثل فیلم، همه ارقام مصرف بشه. وگرنه از این ارقام مختصات متنوعی رو میشه استخراج کرد که شرایط مسئله من رو نداشته باشه. مثلا 1 رقم اعشار داشته باشه. یا قبل از اعشار long یه عدد سه رقمی باشه.

اعداد 10 رقمی : فرض کنید نتیجه یه ضربی شده 2,136,090,960. سه حالت زیر رو می‌تونیم داشته باشیم:

مختصات اول :

latitude1 = 21.36

longitude1 = 9.0960

مختصات دوم :

latitude2 = 21.360

longitude2 = 9.0960

مختصات سوم :

latitude3 = 21.3609

longitude3 = 9.60

اینجا یه حالت خاص به وجود اومده. اگر اون 2 رقم قبل از اعشاری که انتخاب میشه مثلا 09 باشه، خب 0 قبل از 9 حساب نمیشه و اینجا عدد ما یک رقمی شد که مهم نیست. با اون شرطی که گذاشتم، خود به خود حذف میشه.

پس تا الان با الگوریتم کار آشنا شدید. مرحله بعدی چیه؟ برای تمام ۳۰ تا پیش شماره‌ای که بالاتر گفتم، به روشی که گفتم، ضرب رو انجام بدیم و بعد به روشی که گفتم مختصات رو استخراج کنیم. من تو اینترنت کمی سرچ کردم تا رنج lat و long ایران رو پیدا کنم که به این سایت رسیدم که نوشته :

Latitude from 25.2919 to 39.6482 and longitude from 44.7653 to 61.4949

تقریبا ۱.۵ میلیون نقطه توی این رنج پیدا شد. با وجود اینکه رنج خوبی رو گفته بود ولی بخش هایی از شمال غرب و جنوب شرق کشور داخل این رنج نیست. من یه مقدار رنج رو بزرگتر کردم که در نتیجه ۲ میلیون نقطه پیدا شد که اگر هیت‌مپ این نقاط رو رسم کنیم به این صورت میشه :

توی عکس بالا هر چقدر به سمت قرمز بریم یعنی تعداد lat و long های بیشتری توی اون نقاط وجود داشته. هر چقدر هم به سمت رنگ سبز بریم، یعنی تعداد lat و long های کمتری توی اون نقاط وجود داشته. اما بهتره که نقاط خارج از نقشه ایران رو ازش حذف کنم. تعداد نقاط خیلی زیاده و واقعا هم همه نقاط رو نیاز نداریم بررسی کنیم که آیا داخل ایرانه یا نه! بنابراین من به صورت دستی بخش هایی از مرکز و خارج از مرز های ایران رو حذف کردم و بقیه نقاط رو با استفاده از سرویس Reverse Geocoding نشان بررسی کردم که داخل ایرانه یا نه. سرویس های دیگه‌ای هم برای این کار وجود داره ولی تجربه ای که داشتم، سرعت API نشان بیشتر از بقیه بوده.

کار های دیگه ای هم می شد انجام داد. مثلا به کمک کتابخونه های Shapely و GeoPandas و json مرز ایران میشد کار مشابهی رو انجام داد ولی من از این روش استفاده کردم. البته این کتابخونه ها نکاتی دارن (از نظر سرعت) که الان نمیخوام در موردش بحث کنم.

نتیجه عکس زیر شد:

تصویر زیر هم هیت مپ هر کدوم از این 30 تا پیش شماره است :

حالا سوال پیش میاد که چرا هر چی به سمت جنوب ایران میریم، تعداد این نقاط بیشتر میشه؟ از شمال به جنوب مقدار latitude تغییر میکنه (کم میشه) :

گفتم که رنج latitude ایران بین حدود ۲۴ تا ۴۰ قرار داره. اگر به نحوه به دست آمدن latitude از اون نتیجه ضرب ارقام توجه کنید، می‌بینید که همیشه و در هر حالتی، حداقل ۴ رقم اول اون عدد میشه latitude. چرا؟ چون الگوریتمی که تعریف کردیم داره به این شکل عمل میکنه. به نمودار زیر توجه کنید :

این نمودار داره تعداد تکرار latitude های مختلف رو نشون میده. همونطور که می‌بینید، هر چقدر به سمت شمال می‌ریم تعداد تکرار latitude ها داره کم میشه.

حالا اگر خودمون بخوایم چنین معمایی رو طراحی کنیم باید چیکار کنیم؟ فرض کنید میخوام با لوکیشن برج میلاد این کار رو انجام بدم. لوکیشن برج میلاد اینه :

latitude = 35.74477071243827

longitude = 51.375508002753214

اول میخواستم از lat و long فقط ۴ رقم اول (۲ رقم قبل اعشار و ۲ رقم بعد اعشار) رو انتخاب کنم. بعد توی تست ها دیدم روی بعضی لوکیشن ها جواب میده و روی بعضی جواب نمیده. برای حل مشکل اومدم به صورت زیر عمل کردم تمام حالت ها رو امتحان می‌کنم :

-4 رقم اول lat رو به 4 رقم اول long بجسبون و سه تا عامل ضرب رو پیدا کن

-4 رقم اول lat رو به 5 رقم اول long بجسبون و سه تا عامل ضرب رو پیدا کن

-4 رقم اول lat رو به 6 رقم اول long بجسبون و سه تا عامل ضرب رو پیدا کن

.

.

-5 رقم اول lat رو به 4 رقم اول long بجسبون و سه تا عامل ضرب رو پیدا کن

-5 رقم اول lat رو به 5 رقم اول long بجسبون و سه تا عامل ضرب رو پیدا کن

-5 رقم اول lat رو به 6 رقم اول long بجسبون و سه تا عامل ضرب رو پیدا کن

.

.

برای این لوکیشن برج میلاد که قرار دادم اعداد زیر رو پیدا کرد که هیچ کدوم شبیه شماره موبایل نیستند :

125.859.3329
859.125.3329

یا مثلا همین کار رو برای میدون ولیعصر انجام دادم و اعداد زیر رو خروجی داد :

173.249.8291
249.173.8291
498.865.8291
519.830.8291
830.519.8291
865.498.8291
180.827.2399
827.180.2399

کدش رو تو این لینک قرار دادم. توی این کد یکی باید مقدار lat و long رو تغییر بدید. همچنین می‌تونید رنج اعداد رو عوض کنید. من عدد اول و دوم رو فرض کردم ۳ رقمیه و عدد چهارم ۴ رقمی. مثلا میتونید رنج عدد اول رو از 900 شروع کنید که سریع تر یه چیزی شبیه شماره موبایل پیدا کنه. حتی می تونید تعداد ارقامی که در هم ضرب میشن رو تغییر بدید. مثلا 2 رقم اول در 4 رقم بعدی و در 4 رقم بعدیش ضرب بشه. من به این شکل تونستم چیزی شبیه به شماره موبایل پیدا کنم ولی برای اینکه مزاحمتی برای شخص مربوطه ایجاد نشه نخواستم شماره ای توی این پست بذارم.

]]>
https://127.0.0.1/blog/?p=955/feed 0
آیا پربازدید های دیجی‌کالا پرفروش هم هستند؟ https://127.0.0.1/blog/?p=951 https://127.0.0.1/blog/?p=951#respond Thu, 16 Nov 2023 12:41:39 +0000 https://vahidbaghi.ir/blog/?p=951 داشتم دنبال یه محصولی تو دیجی‌کالا میگشتم و محصولات رو بر اساس حالت های مختلف مرتب می‌کردم که ببینم کدوم محصول بهتره. بعد دیدم لیست محصولات زمانی که پرفروش‌ترین رو انتخاب میکنم با زمانی که پربازدیدترین رو انتخاب میکنم خیلی متفاوته. گفتم برای دسته‌بندی موبایل و لپ‌تاپ یه بررسی انجام بدم که چند درصد محصولات پرفروش با پربازدید اشتراک دارند.

من ۳ صفحه اول هر دسته‌بندی رو انتخاب کردم. چرا؟ چون اگر کل صفحات رو بخوام بگردم که این اشتراکه میشه ۱۰۰ درصد! چون مرتب‌سازی فقط ترتیب نمایش رو عوض میکنه. اگر ۴۰۰۰ محصول داشته باشیم، فرقی نداره مرتب‌سازی بر چه اساسی باشه. سه صفحه اول به نظرم کافی بود. نتیجه اینجوری شد که تو سه صفحه اول دسته‌بندی موبایل، محصولات با مرتب سازی پرفروش‌ترین و پربازدیدترین ۵ درصد اشتراک دارند. یعنی ۵ درصد محصولات توی جفت حالت ها وجود داره. در مورد لپ‌تاپ هم ۸ درصد اشتراک وجود داشت.

بعد گفتم نمودار میانگین و میانه قیمت رو هم رسم کنم ببینم داستان از چه قراره که نتیجه عکس زیر شد:

نتیجه گیری خاصی نمیکنم. چون پارامتر های خیلی زیادی تو این زمینه دخلیه و رفتار دقیق کاربران با این نمودار مشخص نمیشه. اما از نمودار بالا به نظر میرسه آدم ها محصولات گرونتر رو بیشتر بازدید کردن تا اینکه بخرن. ممکنه دلیلش این باشه که خیلی ها از دیجی کالا فقط برای خوندن مشخصات محصولات استفاده میکنن و از بازار میخرن که خب طبیعیه که بازدید بیشتری داشته باشه. یا حتی کسی که اصلا قصد خرید نداره، صرفا برای نگاه کردن محصولات گرون و ترند روز میاد دیجی‌کالا

]]>
https://127.0.0.1/blog/?p=951/feed 0
هیت‌مپ قیمت بسته های ساعتی ایرانسل و همراه اول https://127.0.0.1/blog/?p=948 https://127.0.0.1/blog/?p=948#respond Thu, 16 Nov 2023 12:26:44 +0000 https://vahidbaghi.ir/blog/?p=948 همراه اول و ایرانسل بسته های اینترنت ساعتی دارن که ادعا میکنن در ساعات مختلف شبانه‌روز قیمتش ممکنه متفاوت باشه. بسته های ساعتی ایرانسل رو با کد دستوری *4444# و بسته های همراه اول رو با *121# میتونید ببینید. حالا که مسیر جمع کردن دیتای USSD ها برام باز شده قصد دارم در یک شبانه‌روز قیمت بسته ها رو ذخیره کنم و ببینم در ساعات مختلف چه قیمتی دارند. نتیجه تصویر زیر شد :

من تا الان در روز های مختلف که تست کردم، قیمت بسته ها همین بوده. اما ممکنه متناسب با ترافیک شبکه‌شون قیمت بازم تغییر کنه. نتیجه هم با واقعیت مطابقت داره. چون واقعا تو همچین ساعت هایی از شبانه‌روز قیمت بسته ها کمتره.

]]>
https://127.0.0.1/blog/?p=948/feed 0