크롤링을 하기전에 크롤링에 필요한 모듈을 두가지 설치해 줘야한다
terminal 창에 아래와 같이 입력해서 모듈을 다운 받도록 한다
pip install requests
pip install beautifulsoup4
# requests 는 html 문서를 파싱할 웹 사이트에 접속할 때 사용하는 모듈
# beautifulsoup4 는 html 문서에서 데이터를 가져올 때 사용하는 모듈
import requests
from bs4 import BeautifulSoup
# import를 해줌으로써 다운 받은 모듈을 사용한다
# https://basicenglishspeaking.com/daily-english-conversation-topics/
# 위의 사이트에서 단어 75개를 가져올것이다
def getSubject():
subjects = [] # 일단 크롤링 데이터를 넣어줄 빈 List를 만들어준다
request = requests.get("https://basicenglishspeaking.com/daily-english-conversation-topics/") # 웹 사이트 가져오기
html = request.text # 가져온 자료들중 텍스트만 따로 html에 저장해준다
soup = BeautifulSoup(html, "html.parser") # BeautifulSoup(파싱할 HTML소스, 파싱에 사용될 파서)
divs = soup.findAll("div", {"class":"thrv-columns"}) # 가장 큰 범위의 파싱 소스를 divs에 저장해준다
for div in divs: # 그중에서 a 태그를 가지고 있는 링크만 가지고 와서 links에 저장
links = div.findAll("a")
for link in links: # 가져온 텍스트들을 사전에 만들어준 빈 list subjects에 넣어준다
subjects.append(link.text)
return subjects
if __name__ == "__main__": # 파이썬의 프로그램 시작점을 만듭니다.
subjects = getSubject()
print("총 {} 개의 대화를 찾았습니다.".format(len(subjects)))
for i in range(len(subjects)):
print("{0:2d}. {1:s}".format(i+1, subjects[i]))
'프로그래밍 공부 > Python' 카테고리의 다른 글
Python 크롤링 공부 1-2 (0) | 2020.06.12 |
---|