크롤링이란 컴퓨터 소프트웨어 기술로 웹 사이트들에서 원하는 정보를 추출하는 것을 의미한다.

1. 환경설정 : 구름IDE에서 Python 대시보드

[구름IDE 사용법] 시작하기1: 프로젝트 생성

[구름IDE 사용법] 시작하기2: 레이아웃, 빌드 및 실행

 

2. 위키백과 크롤링

BeautifulSoup : html 코드를 Python이 이해하는 객체 구조로 변환하는 Parsing을 맡고 있고, 이 라이브러리를 이용해 우리는 제대로 된 '의미있는' 정보를 추출해 낼 수 있다.

먼저 터미널창에 pip install BeautifulSoup 라이브러리 설치

from bs4 import BeautifulSoup	#라이브러리를 불러엄
from urllib.request import urlopen	#

response = urlopen('https://en.wikipedia.org/wiki/Main_Page')	#url을 불러옴
soup = BeautifulSoup(response, 'html.parser') #url에서 html.parser분석
    for anchor in soup.find_all('a'):	#a태그를 찾아서
        print(anchor.get('href', '/'))	#a태그가 있는 주소를 print 

 

3. 연예인 사진 크롤링

import os
import re
import requests
from bs4 import BeautifulSoup

def getImage(keyword,no):
    url="https://search.naver.com/search.naver?where=image&sm=tab_jum&query="+keyword
    html = requests.get(url)
    bs_html = BeautifulSoup(html.content,"html.parser")
    photowall = bs_html.find('div',{"class":"photowall"})
    img_list = photowall.find_all("img",{"class":"_img"})

    # for i in range(len(img_list)):
    for i in range(no):
        if not os.path.exists(keyword):
            os.makedirs(keyword)
        img_link = re.findall('data-source="(.+?)"',str(img_list[i]))[0]
        img_con = requests.get(img_link).content
        file = open("%s/" %keyword +keyword+str(i+1)+".jpg","wb")
        file.write(img_con)
        file.close()
        print(img_link)

getImage('아이린',50)	#아이린사진 50장 크롤링

아이린 폴더가 만들어지고 아이린 사진이 50장 저장되는것을 확인 할수 있다.

 

4. 참고 유튜브 링크

 

+ Recent posts