Data Analysis 6

[Crawling] Web API를 이용해 원하는 데이터를 요청/응답 받아보자

Web APIAPI (Application Programming Interface, 응용 프로그램 프로그래밍 인터페이스) 웹 API : 웹 애플리케이션 개발에서 다른 서비스에 요청을 보내고 응답을 받기 위해 정의된 명세이다.📌HTML 소스를 분석하는 과정 없이 웹 서버에 원하는 데이터를 요청하고 받을 수 있다! 데이터 형식 : XML, JSON   국제 우주 정거장 정보를 가져와서 세계 지도 위에 mapping 하기국제 우주 정거장의 위도와 경도를 5초 간격으로 1분 동안 수집해서 mapping  - 필요한 라이브러리 호출하기import requestsimport jsonimport time - 웹 페이지에 데이터를 HTTP로 요청하고 응답 받아서 필요한 정보 출력하기requests 함수로 웹 페이지를..

[Crawling] Selenium 이용해 Google 검색으로 원하는 정보를 크롤링 해보자

Google 검색창에 검색어 입력 후 원하는 정보 크롤링 하기 - 필요한 라이브러리 호출 하기from bs4 import BeautifulSoupfrom selenium import webdriverimport urllib.request as urimport requestsfrom selenium.webdriver.common.keys import Keysfrom selenium.webdriver.common.by import Byimport time - 원하는 데이터를 크롤링 하는 get_data() 함수 구현def get_data(): html = wd.page_source soup = BeautifulSoup(html, 'html.parser') div_lists = soup.sel..

[Crawling] Anaconda 가상 환경 설정하고 Jupyterlab 사용하기

https://www.anaconda.com/ Anaconda | The Operating System for AIDemocratize AI innovation with the world’s most trusted open ecosystem for data science and AI development.www.anaconda.com  아나콘다에서 가상 환경 설정하기- 아나콘다 버전 확인, 현재 가상 환경 리스트 확인하기 - 원하는 이름으로 새로운 가상 환경 만들기  - conda activate 명령어를 사용해 현재 위치(*) 변경하기 (가상 환경 활성화) - jupyterlab 설치하기 - jupyter lab 실행하기 (띄어쓰기 주의) - jupyter lab 실행 후 필요한 라이브러리를 pip i..

[Crawling] BeautifulSoup을 이용한 정적 웹페이지 크롤링 (3)

Try - Except 예외처리를 적용해 웹 크롤링 하기파이썬에서는 에러가 발생하면 실행을 멈추고 에러 상태가 된다. try: # 예외 발생할 수 있는 상황except: # 예외가 발생했을 때의 처리try: print("try 문 진입") 10 / 0 print("try 문 종료")except: print("예외가 발생했습니다")# 실행 결과# try 문 진입# 예외가 발생했습니다→ 예외 처리를 통해 에러를 발생시키지 않는다.    #5 주식 정보 크롤링 하기- 필요한 라이브러리 호출하기import urllib.request as urfrom bs4 import BeautifulSoup - 웹사이트 주소(URL)를 통해 HTML 소스 코드 가져오고 구조 확인하기url = 'http..

[Crawling] BeautifulSoup을 이용한 정적 웹페이지 크롤링 (2)

웹 페이지에서 이미지 가져오기- 웹 사이트에 접속해 마우스 우클릭으로 이미지 주소 가져오기url = 'https://www.python.org/static/img/python-logo@2x.png' - 이미지를 가져오기 위한 코드 작성# requests 라이브러리로 이미지 파일을 위한 응답 객체 호출import requestsimport os# 반환된 값을 확인해 이미지 파일의 주소 상태 확인# 정상 응답 : html_image = requests.get(url)# 이미지 주소에서 이미지 파일명만 추출하기img_file_name = os.path.basename(url)# 이미지 파일을 받을 폴더 생성os.makedirs(folder)# 이미지 파일의 경로를 만들고 저장with open('./img/' ..

[Crawling] BeautifulSoup을 이용한 정적 웹페이지 크롤링 (1)

정적 웹페이지URL 주소를 입력하는 것만으로 웹페이지의 HTML 정보를 사용할 수 있다사용자가 보고 있는 웹페이지의 모든 정보가 HTML에 포함되어 있다 ex. 인터넷 포털 페이지, 인터넷 뉴스 페이지   BeautifulSoup 라이브러리 HTML 소스 코드에서 원하는 요소를 파싱(parsing)할 때 사용하는 라이브러리데이터를 객체화 시켜 HTML로 보여준다.(Key, Value의 Dictionary 형태) from bs4 import BeautifulSoup    정적 웹페이지 크롤링의 단계(1) 웹사이트의 주소(URL)를 통해 HTML 소스 코드 가져오기(2) HTML 객체를 파싱이 가능한 형태로 변환하기(3) 객체를 select 함수를 이용해 copy한 select로 파싱하기(3) pandas ..