파이썬은 여러가지 패키지들이 있어 개발자가 구현하기 원하는 기능들을 쉽게 구현해줄 수 있도록 해줍니다.
아래 소스는 특정 인터넷 사이트의 url의 페이지 내용을 가져올 수 있도록 해줍니다.
import requests from bs4 import BeautifulSoup # 가져오기 원하는 url 주소 url = "https://www.naver.com" response = requests.get (url) if response.status_code == 200: # 에러가 발생되지 않으면 html = response.text soup = BeautifulSoup (html, 'html.parser') print (soup) |
위에서 “requests.get”이나 “BeuatifulSoup”은 requests 패키지와 beuatifulsoup4 패키지에서 지원되는 함수로서 파이썬에 설치가 되어 있어야 사용할 수 있는데, 만약 설치가 되어 있지 않다면
pip install requests
pip install bueatifulsoup4
위의 명령을 명령 프롬프트 창에서 실행시키면 설치가 됩니다.
위의 코드를 실행시키면 Naver 홈페이지의 내용이 출력이 됩니다.
아시다시피 Naver 홈페이지 내용은 엄청난 양의 html 페이지로 일일이 보여드릴 수가 없네요.
beuatifulsoup4 패키지는 다양한 함수를 이용해서 가져온 html 페이지 내용을 처리할 수 있도록 해줍니다.
"print (soup)" 대신 "print (soup.title)"을 실행시키면 가져온 페이지의 title 부분만 추출해서 보여줄 수 있습니다.
D:\MyPyWork\sample1>python test1.py <title>NAVER</title> |
"print (soup)" 대신 "print (soup.title.string)"을 실행시키면 html의 title 태그를 뺀 내용만 보여줄 수 있습니다.
D:\MyPyWork\sample1>python test1.py NAVER |
"print (soup)" 대신 "print (soup.p)"을 실행시키면 html의 p 태그 부분만 추출하여 보여줄 수 있습니다.
D:\MyPyWork\sample1>python test1.py <p class="dsc">선거 후보자에 대해 자동완성을 제공하지 않습니다. <span class="dsc_inner">기간 : 4월 2일 0시 ~ 4월 15일 18시까지</span> <a class="link" href="#">자세히보기</a> </p> |
현재 보여준 것은 BeuatifulSoup 패키지로 할 수 있는 일부분만 보여준 것입니다.
'파이썬 (Python) > 파이썬 실전예제' 카테고리의 다른 글
[파이썬] 주가정보을 조회하기 코드에서 주식종목 수정기능 및 런타임 오류처리 추가 (0) | 2021.06.27 |
---|---|
[파이썬] 관심주식종목 목록에 종목 추가/삭제가능 및 선택한 주가정보을 조회하기 (네이버 증권 사이트 이용) (0) | 2021.06.27 |
[파이썬] 네이버 증권 사이트에서 특정 종목 주가 보기 (0) | 2021.06.27 |