آموزش Web Scraping با Python

در این پست، میخوام تجربهی ساخت یک پروژه واقعی Web Scraping با Python رو باهاتون به اشتراک بذارم. هدف ما جمعآوری داده از سایت تمرینی toscrape.com هست—سایتی که مخصوص تمرین و یادگیری scraping طراحی شده.
📦 ابزارهایی که استفاده میکنیم:
-
Python: زبان اصلی پروژه
-
BeautifulSoup: برای پارس کردن HTML و استخراج دادهها
-
requests: برای ارسال درخواست HTTP
-
logging: برای ثبت لاگهای قابل پیگیری
-
unittest: برای نوشتن تستهای خودکار و اطمینان از عملکرد درست کد
🎯 هدف پروژه
ما میخوایم اطلاعات مربوط به کتابها (عنوان، قیمت، موجودی و ...) رو از سایت books.toscrape.com استخراج کنیم و در قالب ساختیافته ذخیره کنیم. در کنار اون، ساختار پروژه رو طوری طراحی میکنیم که قابل تست، قابل گسترش و قابل نگهداری باشه.
🧪 تستپذیری
با استفاده از unittest، ما برای توابع کلیدی مثل parse_book_data و fetch_page تست مینویسیم. این باعث میشه هر تغییری در آینده با اطمینان بیشتری انجام بشه.
🧠 نکات مهم
-
همیشه قبل از scraping، قوانین سایت (robots.txt) رو بررسی کن.
-
از
loggingبرای ثبت خطاها و وضعیت اجرای برنامه استفاده کن. -
کد رو ماژولار بنویس تا در پروژههای بعدی هم قابل استفاده باشه.
در پستهای بعدی، کد کامل پروژه رو مرحلهبهمرحله بررسی میکنیم و حتی خروجیها رو به فایل CSV یا JSON ذخیره میکنیم. اگه به scraping علاقهمندی یا میخوای پروژههای دادهمحور بسازی، این سری آموزشها رو از دست نده!
🧡 با ذکادمی همراه باش!
🐈 نمونه کد
🎥 ویدئوهای مرتبط
