0Pricing
Python Academy · บทเรียน

การขูดข้อมูลเว็บด้วย BeautifulSoup

ทำความเข้าใจวิธีดึงข้อมูลจากเว็บไซต์โดยใช้ Python

การขูดข้อมูลเว็บด้วย BeautifulSoup เป็นบทเรียน Python Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 5 จากทั้งหมด 5 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Python Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Python Academy มีบทเรียนทั้งหมด 5 บทเรียน

บทนำเกี่ยวกับการดึงข้อมูลจากเว็บไซต์

บทนำเกี่ยวกับการดึงข้อมูลจากเว็บไซต์

การดึงข้อมูลจากเว็บไซต์คือกระบวนการดึงข้อมูลออกจากเว็บไซต์ ไลบรารี BeautifulSoup ของไพธอนช่วยให้แยกวิเคราะห์และเรียกดูเอกสาร HTML หรือ XML ได้ง่าย

ในบทเรียนนี้ คุณจะได้เรียนรู้วิธีใช้ BeautifulSoup สำหรับการดึงข้อมูลจากเว็บไซต์

การขูดข้อมูลเว็บด้วย BeautifulSoup — ภาพประกอบ 1

การติดตั้ง BeautifulSoup

การติดตั้ง BeautifulSoup

หากต้องการติดตั้ง BeautifulSoup และไลบรารี requests ที่จำเป็น ให้ใช้คำสั่งต่อไปนี้:

pip install beautifulsoup4
pip install requests

เมื่อติดตั้งแล้ว คุณสามารถนำเข้าไลบรารีเหล่านี้ในสคริปต์ไพธอนของคุณได้:

# Importing BeautifulSoup
from bs4 import BeautifulSoup
import requests

print("BeautifulSoup imported successfully")

การดึงเว็บเพจ

การดึงเว็บเพจ

คุณสามารถดึงเว็บเพจได้โดยใช้ไลบรารี requests:

# Fetching a web page
response = requests.get("https://example.com")
print(response.text)  # Outputs the HTML content

การแยกวิเคราะห์ HTML ด้วย BeautifulSoup

การแยกวิเคราะห์ HTML ด้วย BeautifulSoup

BeautifulSoup มีเมธอดสำหรับแยกวิเคราะห์และเรียกดูเอกสาร HTML:

# Parsing HTML
html_content = "<html><body><h1>Hello, World!</h1></body></html>"
soup = BeautifulSoup(html_content, "html.parser")
print(soup.h1.text)  # Outputs: Hello, World!

การค้นหาองค์ประกอบ

การค้นหาองค์ประกอบ

BeautifulSoup มีเมธอด เช่น find() และ find_all() สำหรับค้นหาองค์ประกอบ:

# Finding elements
soup = BeautifulSoup("<html><body><p class='content'>Hello!</p><p>World!</p></body></html>", "html.parser")
element = soup.find("p", class_="content")
print(element.text)  # Outputs: Hello!

การดึงลิงก์

การดึงลิงก์

คุณสามารถดึงลิงก์ทั้งหมด หรือแท็ก <a> จากเว็บเพจได้:

# Extracting links
html = "<html><body><a href='https://example.com'>Example</a></body></html>"
soup = BeautifulSoup(html, "html.parser")
links = soup.find_all("a")
for link in links:
    print(link['href'])  # Outputs: https://example.com

การดึงตาราง

การดึงตาราง

BeautifulSoup ช่วยให้ดึงข้อมูลจากตาราง HTML ได้ง่าย:

# Extracting table data
html = "<table><tr><td>Row 1</td></tr><tr><td>Row 2</td></tr></table>"
soup = BeautifulSoup(html, "html.parser")
rows = soup.find_all("tr")
for row in rows:
    print(row.text)  # Outputs: Row 1, Row 2

การจัดการองค์ประกอบที่หายไป

การจัดการองค์ประกอบที่หายไป

BeautifulSoup มีเมธอดสำหรับจัดการองค์ประกอบที่หายไปอย่างปลอดภัย:

# Handling missing elements
soup = BeautifulSoup("<html><body></body></html>", "html.parser")
element = soup.find("p")
print(element)  # Outputs: None

ข้อผิดพลาดทั่วไปในการใช้ BeautifulSoup

ข้อผิดพลาดทั่วไปในการใช้ BeautifulSoup

ต่อไปนี้คือข้อผิดพลาดที่ควรหลีกเลี่ยง:

  • ไม่ใช้ตัวแยกวิเคราะห์ HTML ที่เหมาะสม เช่น html.parser หรือ lxml
  • ดึงเนื้อหาจากเว็บไซต์ที่บล็อกหรือมีการป้องกันโดยไม่ใช้ส่วนหัวที่เหมาะสม
  • ดึงข้อมูลถี่เกินไป ซึ่งอาจทำให้ IP ของคุณถูกแบน

เราได้เรียนรู้อะไรบ้าง

เราได้เรียนรู้อะไรบ้าง

ในบทเรียนนี้ คุณได้เรียนรู้:

  • วิธีติดตั้งและนำเข้า BeautifulSoup และไลบรารีสำหรับส่งคำขอ
  • วิธีดึง แยกวิเคราะห์ และเรียกดูเนื้อหา HTML
  • วิธีดึงองค์ประกอบเฉพาะ เช่น ลิงก์และตาราง
  • วิธีจัดการองค์ประกอบที่หายไปอย่างปลอดภัย

ทำได้ดีมาก! ไปต่อยังหัวข้อถัดไปกันเลย

การขูดข้อมูลเว็บด้วย BeautifulSoup — ภาพประกอบ 11

คำถามที่พบบ่อย

บทเรียน “การขูดข้อมูลเว็บด้วย BeautifulSoup” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “การขูดข้อมูลเว็บด้วย BeautifulSoup” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Python Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Python Academy มีบทเรียนทั้งหมด 5 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “การขูดข้อมูลเว็บด้วย BeautifulSoup”

ทำความเข้าใจวิธีดึงข้อมูลจากเว็บไซต์โดยใช้ Python คุณปฏิบัติ Python Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Python Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Python Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 5 จากทั้งหมด 5 บทเรียน

บทเรียน “การขูดข้อมูลเว็บด้วย BeautifulSoup” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Python Academy นี้ได้ไหม

ได้ บทเรียน Python Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. การวิเคราะห์ข้อมูลด้วย Pandas
  2. การแสดงข้อมูลด้วย Matplotlib
  3. NumPy สำหรับการคำนวณเชิงตัวเลข
  4. การจัดการเอพีไอด้วย requests
  5. การขูดข้อมูลเว็บด้วย BeautifulSoup
← กลับไปที่ Python Academy