본문 바로가기

STUDY/홈페이지 만들기

파이썬 - 웹스크롤링 하기

오늘은 웹스크롤링을 통해 자동화하여 사진등을 스크랩 해봅시다!!

 

오늘도 구름 IDE를 사용해서 해보도록  할게요!!

 

파이썬 라이브러리중 - beautiful soup를 이용하면 간편하게 할수 있어요!!

구름 IDE에서 우선 beautiful soup를 활용하기 위해 다운을 받아야겠죠?

리눅스 계열에서 다운로드를 할때 명령어는 pip install (패키지명) 입니다!!

이번에 패키지를 다운받기 위해 pip install bs4를 쳐서 다운을 받아요!!

명령어는 구름 IDE에서 터미널 창에 치면 됩니다!

 

이제 예제를 시작해봅시다.

https://en.wikipedia.org/wiki/Beautiful_Soup_(HTML_parser)

 

Beautiful Soup (HTML parser) - Wikipedia

Beautiful Soup is a Python package for parsing HTML and XML documents (including having malformed markup, i.e. non-closed tags, so named after tag soup). It creates a parse tree for parsed pages that can be used to extract data from HTML[2], which is usefu

en.wikipedia.org

위에 주소로 들어가면 예제 코드를 가져올수 있는데요 아래에서 간단히 코드를 설명해볼게요!

이렇게 된다면 결과는 어떻게나올까요?~

이런식으로 잘 문구들이 나오게 되었네요!!

이제 다른 예제를 시작해봅시다.

예제) 네이버에서 실시간 검색어를 받아오는 방법이다.

1. 우선 html 네이버에 들어가서 f12로 개발자 모드로 들어간다.

2. 컨트롤+쉬프트 c를 누르면 각 영역별로 html코드를 확인할 수있다.

3. 실시간 검색 순위 html 특징을 통해 코드를 작성한다.

 

여기서 soup의 여러 함수들이 있는데 이 함수들의 내용들은 구글링이나 아래 주소에서 확인 할 수있다. 절대 함수들은 외우지 말자! https://www.crummy.com/software/BeautifulSoup/bs4/doc/

 

Beautiful Soup Documentation — Beautiful Soup 4.9.0 documentation

Non-pretty printing If you just want a string, with no fancy formatting, you can call unicode() or str() on a BeautifulSoup object, or a Tag within it: str(soup) # ' I linked to example.com ' unicode(soup.a) # u' I linked to example.com ' The str() functio

www.crummy.com

 

위와같이 실시간 검색어 순위의 html를 분석해서 원하는것만 작성하면 끝이다!!

아래 코드를 참고하시면 될것 같네요!!

#!/usr/bin/env python3

# Anchor extraction from HTML document

from bs4 import BeautifulSoup

from urllib.request import urlopen

f=open("파일.txt","w") #파일 오픈

with urlopen('https://www.naver.com/') as response: #네이버에 들어가기.

soup = BeautifulSoup(response, 'html.parser')

for anchor in soup.select("span.keyword"):

print(anchor.get_text()) #html문장중 텍스트만 가져오기

f.write(anchor.get_text()) #파일에 쓰기



f.close() #파일 종료

select 함수는 span 중에 class가 keyword인 것을 뽑아내는 함수였어요! 근데 class가 종종 변하는것 같으니 다시 확인이 필요합니다.

 

이번시간에는 스크롤링에 대해 배웠는데 다음시간에는 사진을 스크롤링 해보도록 하겠습니다.

 

 

 

참고: 조코딩 유투브

참고영상:youtu.be/ZTJjW7XuHIY?list=PLU9-uwewPMe2-vtJAgWB6SNhHcTjJDgEO

'STUDY > 홈페이지 만들기' 카테고리의 다른 글

웹스크롤링- 구글 이미지 다운로드받기  (0) 2020.08.02
구름IDE 사용하기  (0) 2020.08.02