전체 글 9

[초딩도 할 수 있는 파이썬] 파이썬으로 엑셀 문서를 읽고 저장하기

엑셀 문서를 다룰 때 쓰는 파이썬 모듈 - pandas, openpyxl, xlwings, win32com 파이썬으로 엑셀 문서를 다룰 수 있는 모듈은 꽤 여러가지가 있다. 필자가 아는 것만해도 pandas + openpyxl, xlwings, win32com 등 이미 여러개이다. xlwings는 엑셀 프로그램에서 vba와 직접 연동할 때 유용하고, win32com은 엑셀 프로그램을 직접 열어서 제어할 때 유용하다. 보통 win32com을 활용해서 엑셀 문서를 읽고 쓸 일이 별로 없는데, 간혹 보안이 걸려있거나 암호화되어있어 다른 접근으로 문서 내용 확인이 안 될때 문서를 직접 열어서 데이터를 가져오는 방식으로 활용할 수 있다. 이 글에서는 가장 범용적으로 쉽게 활용할 수 있는 pandas를 활용해 엑셀..

[초딩도 할 수 있는 파이썬] 파이썬으로 요일, 휴일, 공휴일 가져오기

날짜와 요일을 알려주는 모듈 - datetime 파이썬으로 현재 날짜 및 시간을 가져올 때는 datetime이라는 모듈의 datetime 클래스를 사용한다. 1. datetime.now()를 하면 현재 날짜 및 시간이 나온다. 2. datetime.now().year은 현재 연도, datetime.now().month는 현재 달, datetime.now().day는 오늘 날짜를 알려준다. 매 달 마지막 날짜를 알려주는 모듈 - calendar 2022년 10월의 마지막 날은 31일이다. 매달 마지막 날은 바뀌는데 이는 어떻게 알 수 있을까? 이 때 calendar라는 모듈의 monthrange를 사용하면 된다. 그럼 특정 날짜의 요일은? datetime 모듈의 date 클래스를 활용하면 된다. date(..

[초딩도 할 수 있는 파이썬] ModuleNotFoundError: No module named ~~ 에러가 뜨는 경우

ModuleNotFoundError 가 나는 이유 두가지 다른 사람들 파이썬 코드를 따라하다가보면 종종 ModuleNotFoundError: No module named ~~~ 같은 에러가 뜨는 경우가 있다. 보통 위와같은 에러가 나는 경우는 2가지이다. 1. 해당 모듈이 설치되어 있지 않다. 2. 해당 모듈이 설치되어있으나 불러오지를 못한다. 사실 1번은 해결이 어렵지 않다. pip install [모듈명] 혹은 conda install [모듈명] 해서 설치하면 된다. 문제는 저렇게 설치했는데도 여전히 에러나는 경우다. 경로가 꼬여서 현재 사용중인 python과 설치한 모듈이 서로 다른 위치에 있어 인식하지 못하는 경우다. 이를 해결하기 위해선 우선 현재 사용중인 python이 어느 위치에 있는지 파악..

[초딩도 할 수 있는 파이썬] 티스토리 자동 로그인하기

티스토리 로그인 과정 살펴보기 티스토리 로그인 과정을 한 번 살펴보자. 우선 https://www.tistory.com/auth/login 여기로가면 다음과 같은 화면을 만난다. "카카오계정 로그인" 버튼을 누르면 이런 화면이 나오고 카카오메일 아이디와 비밀번호를 입력하고 로그인 버튼을 누르면 로그인이 된다. 간혹 2단계 인증이 뜨는 경우가 있는데, 2단계 인증은 생략가능하므로 꺼진 상태로 로그인해보자. 2단계 인증을 켠 상태로 자동로그인할 수 있는 방법이 없는 것은 아니다. 그 경우는 티스토리로부터 직접 api를 발급받아 이용해야하는데 별도의 api 발급 절차를 거치고 훨씬 복잡하기 때문에 추후에 다루도록 할 예정이다. selenium 모듈을 활용한 크롬 브라우저 제어환경 설정 그럼 다시 돌아가서, 우..

[초딩도 할 수 있는 파이썬] 강추 무료 학습 사이트 TOP 3

직접 코딩해보면서 무료로 학습할 수 있는 서비스들 프로그래밍을 처음 접하는 사람들은 어떻게 시작해야할 지 참 막막하다. 나 또한 그랬다. 취업하고 코딩을 시작한 케이스인데, 파이썬에 C에 C++에 모두 독학으로 해야했다. 책도 보고 무료 강의도 보고 했지만, 역시 가장 효율적인건 직접 코딩을 해보면서 학습할 수 있는 사이트들이었다. 다행히 "대 코딩 전성시대"에 관련 서비스들은 많았고, 무료로도 접근할 수 있는 서비스들이 많았다. 내가 써봤던 것들 중 몇군데를 소개하고자한다. 1. 프로그래머스 - 파이썬 입문 | 프로그래머스 스쿨 (programmers.co.kr) 파이썬 입문 강의가 무료로 제공되고 직접 코딩하면서 학습할 수 있다. 또한 코딩테스트 연습 섹션에서 코딩테스트 연습도 해볼 수 있다. 개인적..

[초딩도 할 수 있는 파이썬] 네이버 많이 본 TV연예 뉴스 가져오기

네이버 많이 본 TV연예 뉴스 1순위 가져오기 이번에는 약간 난이도를 높여서 네이버 TV연예 페이지에서 우측에 있는 많이 본 TV연예 뉴스를 가져와보자. [초딩도 할 수 있는 파이썬] 네이버 금융에서 코스피 지수 가져오기에서 했던 방식 그대로 1순위 제목을 가져오려면 다음과 같이하면 된다. [초딩도 할 수 있는 파이썬] 네이버 금융에서 코스피 지수 가져오기 네이버 금융에서 코스피 지수를 가져와보자. 위에서보면 네이버 금융 페이지 주소는 https://finance.naver.com/sise/sise_index.naver?code=KOSPI 임을 알 수 있고, 화면 중간에 2290.00이라는 오늘자 코스피 지.. pythontips.tistory.com 1. 웹페이지 주소는 https://entertain..

[초딩도 할 수 있는 파이썬] 네이버 금융에서 코스피 지수 가져오기

네이버 금융 사이트 html 긁어오기 네이버 금융에서 코스피 지수를 가져와보자. 위에서보면 네이버 금융 페이지 주소는 https://finance.naver.com/sise/sise_index.naver?code=KOSPI 임을 알 수 있고, 화면 중간에 2290.00이라는 오늘자 코스피 지수가 있음을 알 수 있다. 우선 네이버 금융 페이지를 reqeusts 모듈을 이용해 가져오고, BeautifulSoup을 이용해 파싱하기 좋은 객체로 만들자. 사이트 가져오는 방법은 다음 참조. [초딩도 할 수 있는 파이썬] 네이버 웹페이지 가져오기 파이썬에서 특정 웹페이지 정보를 가져와서 분석하는 작업은 다음 두가지 단계로 이뤄진다. 순서 하는 일 모듈 1 웹페이지 정보를 가져온다. import requests 2 ..

[초딩도 할 수 있는 파이썬] 네이버 웹페이지 가져오기

웹페이지 정보를 분석하는 일반적인 순서 파이썬에서 특정 웹페이지 정보를 가져와서 분석하는 작업은 다음 두가지 단계로 이뤄진다. 순서 하는 일 모듈 1 웹페이지 정보를 가져온다. import requests 2 해당 웹페이지를 분석한다. from bs4 import BeautifulSoup 웹페이지 정보를 가져오는 모듈 - requests 우선 1번부터 살펴보자. import requests naver = requests.get("https://www.naver.com") 위와같이하면 naver 객체에 네이버 웹페이지 정보가 모두 담긴다. 내용확인은 naver.text를 출력해보면 된다. 만약 다른 웹페이지 내용을 가져오고 싶다면 requests.get에 네이버 주소를 해당 주소로 변경하면 된다. nave..

파이썬을 활용한 자동화 팁 정리

파이썬 실력의 대부분은 모듈활용능력 파이썬은 기본 문법을 배우고나면 모듈과의 싸움이다. 확장성이 좋은 언어이다보니 다양한 사람들이 다양한 목적으로 여러 모듈들을 만들어놓았고, 우리는 그것을 잘 가져다 쓰기만하면 된다. 문제는 남이 만들어 놓은 것을 가져다쓰려해도 기본적인 이해는 필요하다. 또한 내가 필요로 하는 부분을 지원하는 모듈이 있는지도 확인이 필요하다. 고속 계산을 위한 numpy, 표나 테이블을 효율적으로 활용하기 위한 pandas, 데이터 시각화를 위한 matplotlib 및 seaborn 뿐 아니라, 다양한 업무 자동화, 엑셀 자동화, 주식 및 코인 자동매매 등을 위한 모듈들은 이미 똑똑한 사람들이 다 만들어 두었다. 이를 잘 활용만해도 파이썬으로 할 수 있는 일은 무궁무진하다. 우리가 컴퓨..