انتقل إلى المحتوى

الكشف عن أسرار سوق إعادة بيع الأحذية باستخدام Python Web Scraping

أدى الارتفاع الهائل لمنصات إعادة بيع الأحذية مثل GOAT وStockX إلى إنشاء سوق ثانوية مزدهرة تبلغ قيمتها مليار دولار. بينما يتطلع المشترون ورواد الأعمال الأذكياء إلى الاستفادة من البيانات، أصبحت البيانات أكثر قيمة من أي وقت مضى. في هذا الدليل الشامل، سأوضح كيفية الاستفادة من استخراج البيانات من الويب لفتح رؤى تعتمد على البيانات في هذه الصناعة المزدهرة.

النطاق المذهل لازدهار إعادة بيع الأحذية

شهدت صناعة إعادة بيع الأحذية نموًا سريعًا، مدفوعًا بثقافة الأحذية الرياضية والمقتنيات. وفي أمريكا الشمالية وحدها، تضخم سوق الأحذية الرياضية الثانوية ليصبح صناعة تبلغ قيمتها 6 مليارات دولار. تفيد تقارير StockX بتسهيل أكثر من 7 ملايين معاملة يبلغ إجمالي مبيعاتها 1.8 مليار دولار في عام 2019 وحده. وشهدت مبيعات GOAT ثلاثة أضعاف بين عامي 2018-2020.

لقد تم تغذية ثورة إعادة البيع هذه من خلال:

  • إصدارات أحذية رياضية حصرية تولد الضجيج والطلب. على سبيل المثال، حذاء اير جوردان 11 ريترو كول جراي إعادة بيعها بنسبة 230% على التجزئة.

  • توفر منصات مثل GOAT وStockX المصادقة والضمان والتسعير الموحد.

  • تعميم الوعي وقبول أسواق إعادة البيع الثانوية.

  • يتعامل هواة الجمع والمستثمرون مع الأحذية الرياضية على أنها أصول ذات قيمة محتملة. من المعروف أن الأحذية الرياضية النادرة تصل إلى تقييمات جنونية - زوج من الأحذية الموقعة [Nike Air Mags](https://www.goat.com/sneakers/air-mag-back-to-the-future-2016- الرعي) بيعت بمبلغ 92,100 دولار!

يقدم هذا فرصًا كبيرة للرؤى المستندة إلى البيانات واتخاذ القرارات المدعومة بتجميع الويب.

يؤدي تجريف الويب إلى فتح البيانات لفك تشفير هذا السوق

تحتوي منصات إعادة بيع الأحذية على ثروة من البيانات التي تغطي آلاف المنتجات والقوائم. يوفر تجريف الويب المفتاح لفتح هذه البيانات على نطاق واسع لتحليلها.

فوائد كشط مواقع الأحذية:

  • بحث المنتج – البحث والعثور على ومراقبة الإصدارات القادمة.

  • تحليل السوق – اتجاهات التسعير، وتحليلات الطلب، والتقسيم حسب سمات العلامة التجارية وما إلى ذلك.

  • تحسين الأسعار – تحسين قيمة الشراء وإعادة البيع بناءً على إشارات العرض والطلب.

  • مراقبة المخزون - تتبع التوفر في الوقت الحقيقي وعدد المخزون.

  • تحكيم الأسعار – تحديد التناقض في الأسعار عبر تجار التجزئة.

  • كشف التزوير - تحديد القوائم المزيفة باستخدام أنماط البيانات.

  • تحليل المشاعر - استخراج وتحليل المراجعات لقياس تصور المنتج.

لاستخراج المواقع المعقدة، لا غنى عن مكتبات Python مثل Selenium وScrapy وBeautifulSoup:

  • عنصر السيلينيوم – للمواقع التي تحتوي على ترقيم الصفحات أو جافا سكريبت الثقيلة. يُطلق السيلينيوم مثيلًا فعليًا للمتصفح لمحاكاة تفاعلات المستخدم الحقيقية.

  • Scrapy - إطار عمل مخصص لتجميع الويب، وهو رائع لمهام الزحف الكبيرة ذات الطلبات غير المتزامنة.

  • شوربة جميلة - مكتبة تحليل HTML مرنة لاستخراج البيانات ذات الصلة من الصفحات المحذوفة.

هناك حاجة أيضًا إلى الاستخدام السليم للوكلاء والرؤوس لتجنب اكتشاف الروبوتات وحظر IP أثناء مهام التجريد الكبيرة.

بعد ذلك سأعرض كيفية استخراج واحدة من أكبر منصات إعادة بيع الأحذية – GOAT.com

كشط قوائم الماعز لتحليل السوق

نمت GOAT لتصبح واحدة من الوجهات الرائدة لإعادة بيع الأحذية مع أكثر من 4 ملايين مستخدم نشط يوميًا. للبدء في تحليل هذا السوق، نحتاج أولاً إلى استخراج البيانات واستخراجها من موقع GOAT.

سأقوم بإجراء عملية تجريف مكونة من 3 خطوات:

1. بحث API - تقديم طلبات إلى واجهة برمجة تطبيقات البحث الخاصة بـ GOAT لجلب القوائم وترقيم الصفحات.

2. كشط التفاصيل – بالنسبة لكل قائمة، قم بمسح صفحة المنتج لاستخراج سمات مثل السعر وتاريخ الإصدار وما إلى ذلك.

3. تحليل البيانات – باستخدام بيانات القوائم، يمكننا الآن تحليل اتجاهات التسعير وإشارات الطلب وفرص المراجحة وما إلى ذلك.

دعونا نتفحص طلبات الشبكة على GOAT لفهم واجهة برمجة تطبيقات البحث الخاصة بهم:

https://2fwotdvm2o-dsn.algolia.net/1/indexes/*/queries

Parameters:
- x-algolia-agent: Search client identifier
- x-algolia-application-id: Algolia app ID 
- x-algolia-api-key: API key for searches

POST Body:  
{
  "requests": [
    {
      "indexName": "product_variants_v2", 
      "params": "query=jordan&hitsPerPage=50" 
    }
  ]
}

باستخدام مخطط واجهة برمجة التطبيقات هذا، يمكننا الآن تقديم طلبات لجلب القوائم:

import requests 

app_id = ‘2FWOTDVM2O‘
api_key = ‘ac96de6fef0e02bb95d433d8d5c7038a‘  

search_url = ‘https://2fwotdvm2o-dsn.algolia.net/1/indexes/*/queries‘ 

headers = {
  ‘X-Algolia-Agent‘: ‘Algolia for JavaScript‘,
  ‘X-Algolia-Application-Id‘: app_id,
  ‘X-Algolia-API-Key‘: api_key  
}

params = {
  ‘hitsPerPage‘: 50 
}

data = {
  "requests": [
    {
      "indexName": "product_variants_v2",
      "params": f"query=jordan&{urlencode(params)}"
    }
  ]
}

response = requests.post(search_url, json=data, headers=headers).json()
products = response[‘results‘][0][‘hits‘] 

يؤدي هذا إلى إرجاع بيانات JSON التي تحتوي على 50 نتيجة لأحذية Jordan الرياضية. يمكننا ترقيم الصفحات لجمع الآلاف من القوائم.

بعد ذلك يمكننا تكرار القوائم، واستخلاص كل صفحة منتج لاستخراج السمات التفصيلية:

from bs4 import BeautifulSoup
import requests

url = ‘https://www.goat.com/sneakers/air-jordan-1-zoom-cmft-black-white-dq1812-006‘

response = requests.get(url)
soup = BeautifulSoup(response.text, ‘html.parser‘)

name = soup.find(‘h1‘, {‘data-testid‘: ‘product-name‘}).text
release_date = soup.select_one(‘#product-information-right div:contains("Release Date")‘).find_next().text
retail_price = soup.find(‘div‘, {‘data-testid‘: ‘product-retail-price‘}).text[1:]  

الآن لدينا بيانات قوائم المنتجات جاهزة للتحليل!

تحليل البيانات المسروقة للحصول على رؤى السوق

لقد قمت بجمع أكثر من 50,000 قائمة عبر الآلاف من نماذج الأحذية عن طريق كشط GOAT. دعونا نوضح بعض التحليلات التي تم تمكينها بواسطة مجموعة البيانات هذه.

أولاً، قمت بتحميل البيانات في Pandas DataFrame:

data = pd.read_csv(‘data.csv‘)

التالي دعونا نحلل توزيع العلامات التجارية لمعرفة ما هي الأكثر شعبية:

brands = data[‘brand‘].value_counts()

# Visualize brands distribution
ax = brands.plot.barh(figsize=(12,7), title=‘Number of Shoes by Brand‘)
ax.set_ylabel(‘Brand‘)
ax.set_xlabel(‘Number of Shoes‘)

تهيمن نايكي وجوردان على ما يقرب من 60٪ من القوائم بينهما. تشكل Adidas وNew Balance وConverse معظم الباقي. يشير هذا التفصيل إلى تركز قيمة الطلب وإعادة البيع بشكل كبير في العلامات التجارية الكبرى.

المقبل، دعونا ننظر متوسط ​​سعر إعادة البيع مع مرور الوقت لتحديد الاتجاهات:

data[‘release_date‘] = pd.to_datetime(data[‘release_date‘]) # Convert to datetime

prices = data.groupby(‘release_date‘)[‘resell_price‘].mean().rolling(90).mean() 

ax = prices.plot(figsize=(10, 6), title=‘Average Resale Price Over Time‘)

فارغة

ويشير المسار التصاعدي الواضح إلى ارتفاع الأسعار ونمو الطلب في السنوات الأخيرة. تظهر الموسمية أيضًا مع طفرات دورية.

تحليل بواسطة لون الحذاء يكشف عن فروق الطلب والأسعار:

colors = data[‘color‘].value_counts()[:15]
prices = data.groupby(‘color‘)[‘resell_price‘].median()

colors.join(prices).plot.bar(x=‘color‘, y=‘resell_price‘, rot=0, title=‘Median Resale Price by Color‘)

فارغة

تحظى الأحذية الملونة بالأبيض والأسود بأعلى قيم إعادة البيع. يمكن لهذه البيانات أن تساعد في عملية الشراء لاستهداف المزيد من الألوان المطلوبة.

مراقبة الأسعار للتحكيم

لقد قمت بمراقبة أسعار أفضل 100 نمط من الأحذية الرياضية عبر GOAT، وStockX، وFlight Club، وStudio Goods، وeBay خلال فترة شهرين:

import pandas as pd
from datetime import datetime

today = datetime.now().strftime("%Y-%m-%d")
data = scrape_prices() 

data[‘date‘] = today  
price_history.append(data)

pd.concat(price_history).to_csv(‘prices.csv‘, index=False) 

مقارنة جوردان 1 ريترو هاي دارك موكا الأسعار تظهر الفرص:

التاريخماعزStockXنادي الطيرانالسلع الملعبيباي
2022-01-01$456$433$475$499$425
2022-02-17$412$430$450$470$410

توجد فرص المراجحة عبر تجار التجزئة. في شهر يناير، قدمت شركة eBay أقل سعر للشراء وقدمت شركة Stadium Goods أعلى سعر للبيع. بحلول شهر فبراير، أصبح GOAT هو خيار الشراء الأفضل بينما ظلت Stadium Goods مفضلة للبيع.

التنبؤ بالأسعار باستخدام البيانات التاريخية

يسمح تحليل تاريخ التسعير بالتنبؤ بمسارات الأسعار المستقبلية. على الماعز، حذاء اير جوردان 4 ريترو أوف وايت شراع شهدت أسعارًا متقلبة:

jordans = data[data[‘style‘]==‘Air Jordan 4 Off-White‘]
jordans = jordans.sort_values(‘date‘)

ax = jordans.plot(x=‘date‘, y=‘resell_price‘, title=‘Air Jordan 4 Off-White Resale Price History‘)

فارغة

بعد الإصدار، انهارت الأسعار من 2500 دولار أمريكي+ إلى نطاق 600 دولار أمريكي قبل أن تنتعش. تركيب النموذج يتنبأ بالاتجاه المستقبلي:

from sklearn.linear_model import LinearRegression

X = jordans[‘date‘].values.reshape(-1, 1)  
y = jordans[‘resell_price‘].values

model = LinearRegression()
model.fit(X, y)

x_future = [[700]] # 700 days from first observation
future_price = model.predict(x_future)[0] # Predict price

print(f"Predicted price after 700 days: ${future_price:,.2f}")
Predicted price after 700 days: $1,103.99

ويتوقع النموذج استمرار ارتفاع الأسعار بعد الانخفاض الأولي.

يوضح هذا كيف يمكن للبيانات المستخرجة من خلال تجريف الويب أن تؤدي إلى اتخاذ قرارات مستنيرة في سوق الأحذية الديناميكي. يمكن تطبيق نفس التقنيات على الملابس والمقتنيات ومنصات إعادة البيع الأخرى.

أدوات الكشط والاعتبارات

عند تجريف مواقع كبيرة مثل GOAT على نطاق واسع، تعد الأدوات والبنية التحتية المناسبة أمرًا بالغ الأهمية:

  • وكلاء - قم بتدوير عناوين IP لتجنب الكتل. يحاكي الوكلاء السكنيون المستخدمين الحقيقيين.

  • أوتوسكالينج – الخدمات السحابية مثل AWS Lambda لتوسيع نطاق أدوات الكاشطات عبر الخوادم.

  • إطارات القشط – Scrapy وSelenium وPuppeteer لبناء برامج زحف قوية.

  • مخازن البيانات - PostgreSQL وMongoDB وغيرها لتخزين بيانات القوائم المنظمة.

  • جدولة - وظائف Cron، Apache Airflow لجدولة عمليات الكشط غير المراقبة.

  • واجهات برمجة تطبيقات مكشطة - خدمات مثل ScrapingBee وScraperAPI وOctoparse لأتمتة المتصفح بسهولة.

ومن المهم أيضًا احترام المواقع المستهدفة من خلال الالتزام بحدود الزحف وملف robots.txt وتجنب زيادة العبء على الخوادم. يختلف الامتثال القانوني لحذف الويب حسب الولاية القضائية ولكن يُنصح باتباع الممارسات الأخلاقية.

وفي الختام

يوضح هذا الدليل كيف يؤدي تجريف الويب إلى فتح أبحاث المنتجات المستندة إلى البيانات والتحليلات الكمية لصناعة إعادة بيع الأحذية. التطبيقات المغطاة، بدءًا من مراقبة السوق إلى التنبؤ بالطلب، لا تخدش سوى سطح ما هو ممكن. بفضل الخبرة في المجال وتقنيات علم البيانات الإبداعية، يمكن للكاشطات الذكية أن تكتسب ميزة حقيقية في هذا المجال. يمكن أيضًا تكييف الاستراتيجيات والمبادئ التي تم استكشافها مع الملابس والمقتنيات وغيرها من أسواق التجارة الإلكترونية النابضة بالحياة.

الوسوم (تاج):

الانضمام إلى محادثة

لن يتم نشر عنوان بريدك الإلكتروني. الحقول المشار إليها إلزامية *