BBC λ΄μ€ κΈ°μ¬ μ λͺ© μΆμΆνκΈ°
λ§€μΌ μμΉ¨ μ μΈκ³ μ΅μ λ΄μ€λ₯Ό μλμΌλ‘ μμ§νκ³ , λ΄ μ΄λ©μΌλ‘ μλμΌλ‘ μ μ‘λ°λλ€λ©΄ μΌλ§λ νΈν κΉμ?
μ΄λ¬ν μΌμ κ°λ₯νκ² νλ κ²μ΄ λ°λ‘ μΉ ν¬λ‘€λ§μ λλ€.
μ΄λ² μμ
μμλ BBC λ΄μ€ ννμ΄μ§μμ μ΅μ κΈ°μ¬ μ λͺ©
μ μΆμΆνλ μ€μ νλ‘μ νΈλ₯Ό μ§νν΄ λ³΄κ² μ΅λλ€.
Requestsμ BeautifulSoup 볡μ΅
μΉ νμ΄μ§μμ μ μ λ°μ΄ν°(JavaScriptλ‘ μ²λ¦¬λμ§ μλ κ³ μ λ λ°μ΄ν°)λ₯Ό κ°μ Έμ¬ λλ μ£Όλ‘ requests
μ BeautifulSoup
λΌμ΄λΈλ¬λ¦¬λ₯Ό μ¬μ©ν©λλ€.
requestsλ μΉ νμ΄μ§μμ HTML μ½λλ₯Ό κ°μ Έμ€λ λΌμ΄λΈλ¬λ¦¬μ΄λ©°, BeautifulSoupλ HTML μ½λλ₯Ό λΆμν΄ νμν μ 보λ₯Ό μΆμΆν©λλ€.
requestsλ‘ BBC λ΄μ€μ μ μνκΈ°
μΉμ¬μ΄νΈμμ μ λͺ©μ μΆμΆνλ €λ©΄ λ¨Όμ requests λΌμ΄λΈλ¬λ¦¬λ₯Ό νμ©ν΄ HTML λ°μ΄ν°λ₯Ό κ°μ ΈμμΌ ν©λλ€.
μλλ BBC λ΄μ€ ννμ΄μ§μ μμ²μ 보λ΄κ³ , μ μμ μΌλ‘ μμ²μ΄ μ΄λ£¨μ΄μ‘λμ§ νμΈνλ μ½λμ λλ€.
import requests # BBC λ΄μ€ ννμ΄μ§μ μμ² λ³΄λ΄κΈ° url = "https://www.bbc.com/news" response = requests.get(url) # μμ² μ±κ³΅ μ¬λΆ νμΈ print("status_code:", response.status_code)
response.status_code
κ° 200μ΄λ©΄ μμ²μ΄ μ±κ³΅μ μΌλ‘ μ΄λ£¨μ΄μ§ κ²μ
λλ€.
BeautifulSoupμΌλ‘ HTML λ°μ΄ν° λΆμνκΈ°
μλ²λ‘λΆν° λ°μ HTML λ°μ΄ν°λ κ·Έ μ체λ‘λ 무μλ―Έν λ¬Έμμ΄μ λλ€.
μ΄ λ°μ΄ν°λ₯Ό μλ―Έ μκ² λΆμνλ €λ©΄ BeautifulSoupμ μ¬μ©ν΄μΌ ν©λλ€.
BeautifulSoupμ HTML ꡬ쑰λ₯Ό λΆμνκ³ , νΉμ νκ·Έμ λ΄κΈ΄ λ°μ΄ν°λ₯Ό μμ½κ² μΆμΆν μ μλλ‘ λμ΅λλ€.
from bs4 import BeautifulSoup import requests # BBC λ΄μ€ ννμ΄μ§μ μμ² λ³΄λ΄κΈ° url = "https://www.bbc.com/news" response = requests.get(url) # μμ² μ±κ³΅ μ¬λΆ νμΈ print("status_code:", response.status_code) # HTML λ°μ΄ν° νμ± soup = BeautifulSoup(response.text, "html.parser") # νμ΄μ§μμ h2 νκ·Έλ‘ κΈ°μ¬ μ λͺ© 10κ° μΆμΆ titles = soup.find_all('h2', limit=10) # λ²νΈ λ° κΈ°μ¬ μ λͺ© μΆλ ₯ # enumerate() ν¨μλ‘ μΈλ±μ€ λ²νΈλ₯Ό ν¨κ» κ°μ Έμ΄ for idx, title in enumerate(titles): print(f"{idx+1}. {title.text}")
μ μ½λλ h2
νκ·Έμ λ΄κΈ΄ ν
μ€νΈλ₯Ό λͺ¨λ μ°Ύμ μΆλ ₯ν©λλ€.
BBC λ΄μ€ ννμ΄μ§μμ κΈ°μ¬ μ λͺ©μ μ£Όλ‘ h2 νκ·Έλ‘ μμ±λλ―λ‘ find_all('h2')
λ‘ κΈ°μ¬ μ λͺ©μ μΆμΆν μ μμ΅λλ€.
μ΄λ² μμ μμλ Requestsλ‘ μΉ νμ΄μ§μ μμ²μ 보λ΄κ³ , BeautifulSoupμΌλ‘ HTML λ°μ΄ν°λ₯Ό λΆμν΄ BBC λ΄μ€μ κΈ°μ¬ μ λͺ©μ μΆμΆνλ λ°©λ²μ λ°°μ μ΅λλ€.
λ€μ μμ μμλ μ΄λ κ² μΆμΆν λ°μ΄ν°λ₯Ό CSV νμΌλ‘ μ μ₯νλ λ°©λ²μ λ°°μ°κ² λ©λλ€.
Guidelines
AI Tutor
Publish
Design
Upload
Notes
Favorites
Help
Code Editor
Execution Result