برنامه نویسی

بر بازی Web Scraping مسلط شوید: داده ها را با پایتون تسخیر کنید، سوپ زیبا و درخواست ها!

خوب، خوب، خوب، چه کسی آماده است که یک استاد خراش وب شود! قدرت Python، Beautiful Soup و Requests را در آغوش بگیرید تا با هم دنیای شگفت انگیز استخراج داده را فتح کنیم. بیایید درست شیرجه بزنیم و جایگاه خود را در تالار مشاهیر خراش دادن وب به دست آوریم!

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

پیش نیازها:

  1. آرزوی سوزان برای تبدیل شدن به یک متخصص خراش دادن وب
  2. دانش اولیه پایتون
  3. پایتون 3.x روی رایانه وفادار شما نصب شده است

  4. یک ویرایشگر کد که جرقه شادی می دهد، مانند Visual Studio Code یا Sublime Text.

مرحله 1: سوپ زیبا و درخواست ها را به آرسنال خود احضار کنید

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

pip install beautifulsoup4 requests
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

مرحله 2: ابزارهای Web Scraping خود را جمع آوری کنید

یک فایل پایتون جدید ایجاد کنید (به عنوان مثال، “web_scraping_quest.py”) و کتابخانه های قدرتمندی را که به تازگی نصب کرده ایم وارد کنید:

import requests
from bs4 import BeautifulSoup
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

مرحله 3: وارد قلمرو وب سایت شوید

وب سایتی را انتخاب کنید که مشتاق کشف آن هستید. برای ماجراجویی خود، در سرزمین “https://www.space.com/news” شجاع خواهیم شد و عناوین جذاب مقالات آن را کشف خواهیم کرد.

برای واکشی محتوای HTML، از کتابخانه درخواست ها برای ایجاد یک درخواست HTTP GET استفاده کنید:

url = "https://www.space.com/news"
response = requests.get(url)

# Check if the website welcomed us with open arms (status code 200)
if response.status_code == 200:
    print("Success! We've gained entry!")
else:
    print("Alas! Something went awry. Status code:", response.status_code)
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

مرحله 4: نقشه گنج HTML را با سوپ زیبا رمزگشایی کنید

ما محتوای HTML را داریم! حالا بیایید با سوپ زیبا آن را معنا کنیم. یک شیء Beautiful Soup برای تفسیر نقشه گنج HTML ایجاد کنید:

soup = BeautifulSoup(response.text, "html.parser")
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

مرحله 5: جواهرات پنهان را جستجو کنید

برای استخراج عناوین مقاله، باید عناصر HTML که آنها را نگه می دارند شناسایی کنیم. کلاه کارآگاهی خود را بگذارید، کد منبع وب سایت را بررسی کنید (روی صفحه وب کلیک راست کرده و «Inspect» یا «View Page Source» را انتخاب کنید)، و برچسب های HTML حاوی عناوین را جستجو کنید.

در “https://www.space.com/news”، عناوین در برچسب های ‘h3’ با کلاس “article-name” قرار می گیرند. برای یافتن تمام این عناصر، از متد find_all() استفاده کنید:

article_titles = soup.find_all("h3", class_="article-name")
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

مرحله 6: از پیروزی های اسکراپینگ وب خود لذت ببرید

لحظه حقیقت فرا رسیده است! عناوین مقاله‌هایی را که با موفقیت استخراج کرده‌ایم پردازش و نمایش دهید:

for i, title in enumerate(article_titles, start=1):
    print(f"{i}. {title.text.strip()}")
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

کد کامل:

import requests
from bs4 import BeautifulSoup

url = "https://www.space.com/news"
response = requests.get(url)

if response.status_code == 200:
    print("Success! We've gained entry!")
else:
    print("Alas! Something went awry. Status code:", response.status_code)

soup = BeautifulSoup(response.text, "html.parser")

article_titles = soup.find_all("h3", class_="article-name")

for i, title in enumerate(article_titles, start=1):
    print(f"{i}. {title.text.strip()}")
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

نتیجه:

براوو، قهرمان خراش دادن وب! اکنون از قدرت Python، Beautiful Soup و درخواست‌ها برای تسخیر دنیای وب اسکرپینگ استفاده کرده‌اید. با مهارت هایی که به تازگی به دست آورده اید، آماده شروع ماجراجویی های بی شماری برای استخراج داده ها هستید. فقط به خاطر داشته باشید که به شرایط خدمات هر وب سایت و فایل robots.txt احترام بگذارید تا مطمئن شوید که داده های آنها را به صورت اخلاقی و مسئولانه جمع آوری می کنید.

سفر شما به تازگی آغاز شده است و تالار مشاهیر خراش وب منتظر است! به کاوش ادامه دهید و باشد که در قلمرو خراش دادن وب به پیروزی ادامه دهید.

برای اطلاعات بیشتر، به مستندات رسمی سوپ زیبا و درخواست ها مراجعه کنید:

  1. مستندات سوپ زیبا: https://www.crummy.com/software/BeautifulSoup/bs4/doc/
  2. اسناد درخواست: https://docs.python-requests.org/en/latest/

خراش دادن وب مبارک!

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا