[개발일지]1일차 스파르타코딩클럽 파이썬 혼자놀기 - 이미지스크래퍼 [힙한취미코딩]

MeMilMook·2021년 9월 15일
0

Python을 시작하기 위한 에디터 설치부터
기초문법, 스크래핑까지 차근차근 배워나갔다.

파이썬 기초 문법

변수, 기본연산```

a = 3 # 3을 a에 넣는다
b = a # a를 b에 넣는다
a = a + 1 # a+1을 다시 a에 넣는다
num1 = ab # ab의 값을 num1이라는 변수에 넣는다
num2 = 99 # 99의 값을 num2이라는 변수에 넣는다

자료형

숫자형, 문자형
리스트형
딕셔너리형
리스트형

조건문

IF, ELSE로 구성

반복문

for a in list:

내장함수들

split, replace

가상환경을 통한 라이브러리(패키지)의 독립화

파이썬 에디터인 파이참은 자동으로 구성해준다.

스크래핑 기본

from bs4 import BeautifulSoup
from selenium import webdriver
import time
driver = webdriver.Chrome('chromedriver') # 웹드라이버 파일의 경로
driver.get("https://search.daum.net/search?w=img&nil_search=btn&DA=NTB&enc=utf8&q=%EC%95%84%EC%9D%B4%EC%9C%A0")
time.sleep(5) # 5초 동안 페이지 로딩 기다리기
req = driver.page_source
# HTML을 BeautifulSoup이라는 라이브러리를 활용해 검색하기 용이한 상태로 만듦
# soup이라는 변수에 "파싱 용이해진 html"이 담긴 상태가 됨
# 이제 코딩을 통해 필요한 부분을 추출하면 된다.
soup = BeautifulSoup(req, 'html.parser')
###################################
# 이제 여기에 코딩을 하면 됩니다!
###################################
driver.quit() # 끝나면 닫아주기

태그 안의 텍스트를 찍고 싶을 땐 → 태그.text
태그 안의 속성을 찍고 싶을 땐 → 태그['속성']

from bs4 import BeautifulSoup
from selenium import webdriver
스파르타온라인 파이썬 혼자놀기 패키지 - 1일차 9
import time
driver = webdriver.Chrome('chromedriver') # 웹드라이버 파일의 경로
driver.get("https://search.daum.net/search?w=img&nil_search=btn&DA=NTB&enc=utf8&q=%EC%95%84%EC%9D%B4%EC%9C%A0")
time.sleep(5) # 5초 동안 페이지 로딩 기다리기
req = driver.page_source
soup = BeautifulSoup(req, 'html.parser')
thumbnails = soup.select("#imgList > div > a > img")
for thumbnail in thumbnails:
src = thumbnail["src"]
print(src)
driver.quit() # 끝나면 닫아주기

bs4 내 select에 미리 정의된 다른방법

# 선택자를 사용하는 방법 (copy selector)
soup.select('태그명')
soup.select('.클래스명')
soup.select('#아이디명')
soup.select('상위태그명 > 하위태그명 > 하위태그명')
soup.select('상위태그명.클래스명 > 하위태그명.클래스명')
# 태그와 속성값으로 찾는 방법
soup.select('태그명[속성="값"]')
# 한 개만 가져오고 싶은 경우
soup.select_one('위와 동일')

내가 제출한 연예인 이미지 다운로드 숙제 소스

from bs4 import BeautifulSoup
from selenium import webdriver
import dload
import time

driver = webdriver.Chrome('chromedriver')
driver.get("https://search.daum.net/search?w=img&nil_search=btn&DA=NTB&enc=utf8&q=%EC%8B%A0%EB%AF%BC%EC%95%84")  # 여기에 URL을 넣어주세요
time.sleep(5)

req = driver.page_source
soup = BeautifulSoup(req, 'html.parser')

###################################
# 이제 여기에 코딩을 하면 됩니다!
###################################
thumbnails = soup.select('#imgList > div > a > img')
i = 1
for thumbnail in thumbnails:
    img = thumbnail['src']
    dload.save(img, 'imgs_homework/' + str(i) + '.jpg')
    i += 1
driver.quit() # 끝나면 닫아주기```
profile
안녕하세요. IT와 관련된 기록을 남겨놓는 velog 입니다.

0개의 댓글

관련 채용 정보