70٪ تخفیف ویژه جشنواره تابستانه توسینسو
پایان تخفیف تا:
مشاهده دوره‌ها

دوره آموزشی رایگان Web Scraping با زبان برنامه نویسی پایتون

دوره وب اسکرپینگ با پایتون به شما نحوه استخراج خودکار داده‌ها از وب‌سایت‌ها با استفاده از ابزارهایی مانند BeautifulSoup و Scrapy آموزش می‌دهد. این دوره برای جمع‌آوری و پردازش داده‌های وب مناسب است و کاربردهای زیادی در تحلیل داده‌ها دارد.

دوره آموزشی رایگان Web Scraping با زبان برنامه نویسی پایتون
مانده تا پایان تخفیف 70٪
پشتیبانی استاد
دارد
مدت زمان دوره
7 ساعت
دانلود ویدیوها
بعد از خرید
تعداد دانشجو
25 دانشجو

توضیحات دوره

دوره آموزش وب اسکرپینگ ( Web Scraping ) رایگان مهندس خورنگ یک آموزش Web Scraping جذاب و کاملا رایگان در قالب 19 ویدیوی آموزشی و در مجموع یک دوره اسکرپینگ وب 8 ساعته است . این دوره آموزشی Web Scraping رایگان با استفاده از زبان برنامه نویسی پایتون و با مثال های عملی و متنوعی از روش های جمع آوری داده از صفحات وب برای شما طراحی و در وب سایت توسینسو قرار گرفته است .

وب اسکرپینگ چیست؟

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

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

کاربردهای Web Scraping بسایر زیاد و برای هدفی خاصی میتونه این اطلاعات جمع آوری بشه. گوگل با استفاده از دانش web scraping  محتویات جدیدی رو که هر روزه داخل میلیون ها وبسایت منتشر میشن رو میخونه و دسته بندی میکنه.ما در این دوره با استفاده از کتابخانه های selenium, request, beautifulSoup  و ابزار scrapy این عمل رو انجام خواهیم داد.

آموزش web scaping با پایتون

ساختار وب اسکرپینگ

ساختار Web Scraping به گونه ای طراحی شده است که از طریق پایگاه داده های سطح وب می توان اطلاعات را استخراج کرد. Web Scraping دارای ابزارهای مختلفی می باشد که هر کدام از این ابزارهای از تعداد ربات استفاده می کنند و هر کدام از این ربات ها کاری را انجام می دهند که به عنوان مثال به شرح زیر می باشد:

  1. شناسایی HTML منحصر به فرد یک سایت
  2. استخراج و تبدیل محتوا
  3. ذخیره اطلاعات استخراج شده
  4. استخراج داده ها از طریق API ها

کاربردهای وب اسکرپینگ

فرایند Web Scraping: به فرایندی جهت استخراج محتوا و داده ها از یک وب سایت با استفاده از ربات ها گفته می شود. Web Scraping علاوه بر محتوا می توان عناصر کدهای HTML را هم استخراج کند و هر زمان که لازم باشد می توان اطلاعات را منتشر کرد.

Web Scraping در بسیاری از کسب و کارهای اینترنتی مورد استفاده قرار می گیرد تا بتوان در اولین فرصت به داده های منتشر شده جدید دسترسی پیدا کرد. از جمله کاربرد Web Scraping می توان به موارد زیر اشاره کرد:

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

Web Scraping به عنوان جزئی از برنامه های مورد استفاده برای فهرست بندی وب، استخراج وب و داده کاوی، نظارت بر تغییر قیمت آنلاین و مقایسه قیمت، جمع آوری لیست های املاک و مستغلات،نظارت بر داده های آب و هوا، تشخیص تغییر وب سایت، تحقیق،پیگیری حضور و شهرت آنلاین ،mashup وب و ادغام داده های وب مورد استفاده قرار می گیرد.

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

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

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

وب اسکرپینگ در پایتون

  • کتابخانه  Requests : کتابخانه Requests یکی از محبوب ترین کتابخانه های پایتون است. از این کتابخانه برای ارسال درخواست های HTTP/1.1 توسط python استفاده میشه.
  • کتابخانه Beautiful Soup : یک کتابخانه محبوب پایتون برای استخراج داده ها از صفحات HTML یا زنده است BeautifulSoup به یک صفحه وب محدود نیست. شما می توانید داده ها را از صفحات مختلف استخراج کنید. دانستن نحوه ی پیدا کردن داده ها در درون درخت HTML، کلید گرفتن داده های هدفمند است. این دوره به شما نشان می دهد چگونه داده های مربوط به درون درخت HTML را شناسایی کنید. سپس یک قانون تجزیه سازی برای استخراج آن با استفاده از BeautifulSoup ایجاد خواهید کرد.
  • کتابخانه Selenium : کتابخانه ی selenium برای خودکار سازی تعامل های مرورگر مورد استفاده قرار میگیره و ما با استفاده از کتابخانه سلنیوم قادر به ساختن ربات برای وب سایت ها و اینستاگرام و ... خواهیم بود.
  • فریمورک Scrapy : Scrapy یک فریمورک اپن‌سورس و توسعه‌یافته با زبان برنامه‌نویسی پایتون است که به منظور اِسکرپ کردن صفحات وب و استخراج دیتا از آن‌ها در قالبی ساختاریافته به کار گرفته می‌شود که دیتای جمع‌آوری‌شده را برای اهداف مختلفی همچون داده‌ کاوی، پردازش اطلاعات، یادگیری ماشینی و مواردی از این دست می‌توان مورد استفاده قرار داد. در سال ۲۰۰۸ فریمورک Scrapy منتشر شد و اکنون از بهترین ابزار های Web Scraping و Web Crawling محسوب می شود. Scrapy برای تازه کاران ساده و برای حرفه ای ها به اندازه کافی دارای ویژگی های مثبت است.

این دوره برای چه کسانی مناسب است؟

مخاطبین دوره:

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

پیش‌نیازهای دوره:

  • زبان برنامه نویسی پایتون
  • آشنایی با html

در پایان این دوره چه چیزهایی یاد می‌گیرید؟

آشنا شدن با 3 کتابخونه requests ، Beautiful Soup ، selenium و فریم ورک scrapy

تقریبا از هر وب سایتی می تونید اطلاعات رو استخراج کنید

آشنا شدن با نحوه ساخت ربات برای وب سایت ها و اینستاگرام

ساخت web crawler برای دنبال کردن لینک ها و بدست آوردن اطلاعات

سرفصل‌های دوره

تمامی سرفصل ها

18 درس 7
  • دوره آموزشی Web Scraping با پایتون قسمت 2 : نصب کتابخانه ها 00:11:05
  • دوره آموزشی Web Scraping با پایتون قسمت 3 : کتابخانه Requests 00:18:14
  • دوره آموزشی Web Scraping قسمت 4 : کتابخانه Beautiful Soup 00:31:28
  • دوره آموزشی Web Scraping قسمت 5 : استخراج اطلاعات از دیجی کالا 00:26:49
  • دوره آموزشی Web Scraping با پایتون قسمت 6 : آشنایی با regex 00:19:15
  • دوره آموزشی Web Scraping با پایتون قسمت 7 : استخراج فیلم و عکس 00:25:59
  • دوره آموزشی Web Scraping با پایتون قسمت 8 : کتابخانه selenium 00:15:28
  • دوره آموزشی Web Scraping با پایتون قسمت 9 : locators in selenium 00:31:38
  • دوره آموزشی Web Scraping با پایتون قسمت 10: انواع Wait 00:24:40
  • دوره آموزشی Web Scraping قسمت 11: ساخت ربات و انجام تست روانشناسی 00:30:28
  • دوره آموزشی Web Scraping قسمت 12 :اسکرول کردن، استخراج داده 00:39:15
  • دوره آموزشی Web Scraping قسمت 13 : ربات اینستاگرام بخش اول 00:29:38
  • دوره آموزشی Web Scraping قسمت 14: ساخت ربات اینستاگرام بخش دوم 00:23:17
  • دوره آموزشی Web Scraping با پایتون قسمت 15 : framework Scrapy  00:16:51
  • دوره آموزشی Web Scraping با پایتون قسمت 16 : ساخت spider 00:41:11
  • دوره آموزشی Web Scraping قسمت 17: web crawling multi web scraping 00:31:44
  • دوره آموزشی Web Scraping با پایتون قسمت 18 : Item & Pipeline 00:23:38
  • دوره آموزشی Web Scraping قسمت 19: دانلود فایل و عکس 00:23:59

جایگاه این دوره در نقشه راه

برای این دوره هنوز هیچ نقشه راهی تعریف نشده است.

گواهینامه پایان دوره

نمونه گواهینامه دوره

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

گواهینامه توسینسو چیست؟

درباره مدرس دوره

سید حسین خورنگ

سید حسین خورنگ

برنامه نویس

برنامه نویس پایتون-توسعه دهنده Back-End

2 دوره
719 دانشجو
4.6 میانگین امتیاز

هنوز برای شروع مطمئن نیستی؟

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

سوالات متداول

با مشاهده این دوره تقریبا قادر خواهید بود از 90 درصد وب سایت ها اطلاعات استخراج کنیم.

خیر ، ساز کار این گونه ربات ها متفاوت می باشند. اطلاعات این گونه سایت ها از طریق ajax گرفته میشه که اگر تو سایت نمایش داده بشه و درون کدهای html باشه رو میتونیم بگیریم ولی قبل اینکه درخواست ajax فرستاده بشه مقدور نیست چون عملا اون دیتا ها توی فرانت سایت نمی باشند و ما داریم از فرانت اطلاعات بدست میاریم.

کاربردهای متنوعی داره. هر کسی یا شرکتی با هدفی خاص اطلاعات رو جمع آوری میکنه. در حال حاضر گوگل مهمترین شرکتی هست که داره از علم web scraping استفاده میکنه. و هدفش هم اینه که بتونه محتویات جدیدی رو که هر روزه داخل میلیون ها وبسایت منتشر میشن رو بخونه و دسته بندی کنه. اطلاعاتی که شما توسط bot جمع آوری میکنید رو میتونید داخل دیتابیس ها ذخیره کنید و بعدش با استفاده از الگوریتم هایی که تعریف میکنید اون اطلاعات رو تحلیل کنید.

تقریبا با هر زبانی میشه به صورت ساده این کار رو کرد.

در زبان پایتون ابزارهای متنوعی برای این کار وجود داره اما چهارتا از معروف هاش: scrapy, selenium, request, beautifulSoup هستن.

نظرات کاربران (146)

آواتار کاربر

سلام استاد این فیلم ها فوق العاده ست و از خواستم خواهش کنم که این اموزش را همینطور رایگان نگه دارید 

آواتار کاربر

در رابطه با كساني كه ميگويند دوره قديمي شده عرض ميكنم اتفاقا دوره هاي ديگه كه نميخواهم اسمشون را بيارم قديمي هستند و فريم وركهاي قديمي و جديد در اين دوره توسط استاد محترم گفته شده و فقط اتفاقي كه افتاده اين است كه اكثر سايتها به طور طبيعي در طول زمان تغييرات دارند كه بايد خودتون لينكها و تگهاي درست را با رويكرد استاد به روز رساني كنيد.

آواتار کاربر

سلام به جناب آقاي خورنگ. واقعا از ارائه اين دوره عالي كه رايگان نيز است از شما تشكر فراوان دارم. من براي WEB SCRAPPING دوره هاي ديگه را ديده بودم كه خيلي به مشكل خوردم و بعد كه دوره شما را ديدم خيلي از مشكلاتم رفع شد.

براي شما استاد عزيز و تيم توسينسو آرزوي عزت، سلامتي و توفيق روزافزون دارم.

ارادتمند شما

آواتار کاربر

سلام،

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

آواتار کاربر

سلام و خسته نباشید میخواستم بگم این دوره تقربیا خیلی قدیمی شده و حتی وب سایت هایی که داخل دوره استفاده شدن الان خیلی فرق کردن و خیلی سخت هست که با دوره پا به پا بشه رفت در حالی که دوره مفید و استاد نسبتا خوبی داره ولی وب سایت های استفاده شده داخل ویدیو و استایل کد زنی با selenium میشه گفت قدیمی هست اگه مشکلی نیست دوره رو بی زحمت اپدیت کنید با تشکر.

آواتار کاربر
1403/04/31

سلام استاد من کلا اینجا گیر میکنم anaconda هم آوردم نشد چکار کنم.

آواتار کاربر
1402/12/09

الان دوره رو تموم کردم

در یک کلام فوق العاده بود ! 

یک دنیا ممنون استاد ❤

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

آواتار کاربر

سلام استاد ما کد را نوشتیم سکوریتی دیجی کالا نمیازه html paraser کد های اچ تی ام ال درستو بگیره و کد روی دیجی کالا کار نمیکنه ولی روی سایت های دیگه مثل ترب کار میکنه میتونید کمک کنید

آواتار کاربر

سلام و وقت بخیر . استاد من کتابخانه requests را نصب میکنم و ایمپورت کردم و تمام دستوراتم طبق آموزش نوشتم ولی با خطا مواجه میشم؟؟؟؟ دلیلش چیه؟ 

import requests

url = "https://www.tgju.org/"


response = requests.get(url)

print(response)

Error in sitecustomize; set PYTHONVERBOSE for traceback:
AttributeError: partially initialized module 're' has no attribute 'IGNORECASE' (most likely due to a circular import)
Traceback (most recent call last):
  File "D:\web scrapting\re.py", line 1, in <module>
    import requests
  File "D:\install_program\venv\lib\site-packages\requests\__init__.py", line 43, in <module>
    import urllib3
  File "D:\install_program\venv\lib\site-packages\urllib3\__init__.py", line 8, in <module>
    import logging
  File "C:\Users\majid\AppData\Local\Programs\Python\Python38\lib\logging\__init__.py", line 26, in <module>
    import sys, os, time, io, re, traceback, warnings, weakref, collections.abc
  File "D:\web scrapting\re.py", line 5, in <module>
    response = requests.get(URL)
AttributeError: partially initialized module 'requests' has no attribute 'get' (most likely due to a circular import)


آواتار کاربر

سلام وقتتون بخیر

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