본문 바로가기

전체 글135

[DAY 13] BeautifulSoup, 쿼리스트링, 슈도코드 등 어제에 이어 웹 스크래핑 실습이 계속되었다. 그 과정에서 나온 것에 대해 정리해 본다. BeautifulSoup 데이터 분석, 수집을 하는 과정에서 사용하지만 데이터 분석 도구나 데이터 수집 도구가 아니다. HTML Parser이다. 파싱이란 문장의 구성이나 구문 분석으로 의미있는 단위를 떼어내는 과정, 쉽게 말해 문자열에서 필요한 데이터를 추출하는 행위를 말한다. 원하는 웹페이지에 접근하여 HTML 데이터를 받아 온 후 그것을 가공하여 원하는 데이터를 사용하는데 그 때 사용하는 것이 BeautifulSoup이다. 쿼리스트링(Query String) 쿼리스트링은 사용자가 웹으로 데이터를 보내는 가장 간단하면서도 많이 쓰이는 방식이다. URL의 뒤에 데이터를 함께 전달한다. 형식은 위와 같이 URL 뒤에 .. 2023. 1. 11.
[DAY 12] API, 로봇 배제 표준, FinanceDataReader 등 API를 제공하는 이유, 로봇 배제표준, FinanceDataReader에 대해 공부하고 웹 스크래핑 실습을 했다. 키워드 : API, robots.txt, 라이브러리, FinanceDataReader, 웹 스크래핑 API를 제공하는 이유 - 허가된 계정에게만 데이터를 제공하기 위해 - 누가 사용했는지 알기 위해 - 유료로 데이터를 판매하는 사이트는 용량 등에 따라 과금을 위해 - 부동산 실거래가 등 실시간 제공 데이터의 경우 - 안정성을 위해 : 특정 사이트에 무리하게 네트워크 요청을 보내면 서버에 무리가 간다. - API용 서버를 따로 두게 되면 요청이 몰릴 경우에도 운영하고 있는 서비스의 서버에 무리를 주지 않는다. 로봇 배제 표준 웹사이트에 로봇이 접근하는 것을 방지하기 위한 규약으로, 웹크롤링 .. 2023. 1. 10.
[DAY 11] pandas 기초 - DataFrame, Series, Indexing 등 오늘은 pandas 기초에 대해 공부했다. 키워드 : pandas, DataFrame, Series, rows & columns, Indexing, 요약통계, 파일 저장 & 로드 pandas Python 라이브러리로, 데이터 조작 및 분석을 할 때 사용한다. 데이터 구조를 표현하는 객체인 DataFrame과 Series라는 클래스 객체를 이해해야 pandas를 다루는 데 문제 없을 것이다. DataFrame과 Series의 이해 DataFrame은 2차원 리스트 구조이며 수학적으로는 행렬로 표현할 수 있다. - 2차원 리스트 구조 예시 : [[1, 2, 3], [4, 5, 6]] Series는 1차원 리스트 구조이며 수학적으로는 벡터로 표현할 수 있다. - 1차원 리스트 구조 예시 : [1, 2, 3] .. 2023. 1. 10.
[Python 이메일 발송] 파일 첨부하여 Gmail 보내기 (SMTP) 파이썬 smtplib 라이브러리와 Gmail 계정을 이용하여 파일을 첨부한 메일을 전송해보자. 사전 준비 파이썬 코드를 통해 Gmail을 보내기 위해선 "IMAP 사용" 설정이 필요하다. 설정 방법 1. 설정 진입 : 메일 보낼 계정으로 Gmail 접속 후 우측 상단 톱니바퀴 - 모든 설정 보기 2. 전달 및 POP/IMAP -> IMAP 사용 체크 -> 변경사항 저장 IMAP 사용 설정은 메일 계정의 외부 접속에 대한 보안 설정 과정으로 필수이다. 생략하고 진행하게 되면 로그인 시도가 차단되었다는 보안 메일을 받게 된다. 인터넷에서 메일을 송수신할 때는 SMTP(Simple Mail Transfer Protocol)이라는 규약을 사용한다. 파이썬 프로그램(Client)와 메일 Server, Server.. 2023. 1. 8.
[예외처리] Exception Handling - try, except, else, finally, raise 예외처리란 코드의 에러를 처리하는 문법, 방법을 말한다. "세상에 완벽한 프로그램은 없다"라는 말이 있다. 누구든 파이썬으로 코드를 작성하고 프로그램을 실행하다 보면 에러를 만나게 되어 있는데 그런 예외 상황을 대처하기 위해 예외처리를 하는 것이다. 예외처리의 기본 구문은 아래와 같다. try: 예외가 발생할 수 있는 코드 except: 예외가 발생했을 경우 실행되는 코드 예외처리를 하지 않은 예시를 보자. print(1/0) print('python') # 실행 결과 ZeroDivisionError: division by zero 첫번째 줄에서 에러가 발생하고 두번째 줄은 실행되지 않는다. 프로그램은 에러를 출력하며 즉시 종료되는 것이다. 예외처리를 통해 에러가 발생하더라도 프로그램이 종료되지 않도록 .. 2023. 1. 7.
반응형