본문 바로가기

프로그래밍

(20)
파이썬 로그인 세션 유지하기 & 티스토리 API Access token 자동 발급 Session 유지의 필요성 오픈API의 Oauth 2.0 인증이나 기타 다른 프로그램을 만들다 보면 세션을 유지해야 하는 경우가 있다. 로그인 상태를 유지한다고 생각하면 이해가 쉽다. 특히 Oauth 인증은 API사용을 위한 ID, Key 값을 이용해서 다른 Token을 받아와야 하는 경우가 있기 때문에 세션유지를 해줘야 한다. 예전에는 그냥 로그인하고 Cookie 값을 가져다 코드에 박아 넣었지만 인증세션이 만료되면 Cookie 를 다시 확인해서 넣어줘야 되는 번거로움이 있다. 티스토리 API로 Oauth 인증방식을 사용하고 있어 세션 유지가 필요하다. Session 유지 구현 먼저 requests 를 import 해준다. 파이썬 라이브러리에 requests가 없다면 pip -install reque..
파이썬으로 홈택스 사업자등록상태조회 프로그램 만들기 회사에서 물품을 판매하거나 계약을 체결할 때 거래업체의 사업자등록번호를 조회하는 경우가 있다. 물품을 사가는 사람이 대금을 지급할 여력은 있는지 안전한 기업인지 확인을 하는 경우이다. 개인이 물건을 구입할때도 홈쇼핑이나 인터넷쇼핑몰에 등록된 사업자 등록번호를 통해 현재 사업자의 상태를 확인하기도 한다. 이럴 경우 보통 홈택스 홈페이지에서 사업자등록상태조회를 이용하게 된다. 사업자등록상태조회에서는 위의 그림과 같이 사업자의 과세유형(일반/간이)등과 사업자상태(계속/휴업/폐업) 상태를 조회 할 수 있다. 하지만 요청당 5초 제한이 걸려있고 여러개의 사업자 등록번호를 조회해야 할때 일일히 입력하면 시간이 오래 걸리는 부분이 있어 이를 자동화 했다. 통신분석 통신구간을 분석하기 위해 웹브라우저의 개발자도구를 사..
파이썬에서의 쉘 or 시스템 명령어 사용 (CMD / BASH...) 파이썬으로 프로그래밍을 하다보면 Windows 의 CMD나 Linux의 Bash 처럼 Shell 명령어를 사용해야 하는 경우가 있다. 쉘 스크립트를 따로 만들어 실행하는 방법도 있지만 파이썬 내부에서 처리를 하는게 관리 측면에서 간편할 것 같다. 파이썬에서 시스템 명령어를 사용하는 방법들을 아래와 같다. os.system() 가장 보편적으로 사용되는 방법이다. 이름에서 짐작하겠지만 C언어에 systeml() 함수와 동일한 역할은 한다. import os import subprocess os.system('echo Hello SYSTEM') 실제 파이썬 코드에서는 위 명령어를 사용하면 'Hello SYSTEM' 이란 문구가 출력되는걸 확인 할 수 있다. 예제의 경우에는 주피터 노트북을 사용해 진행했기 때문..
파이썬으로 첨부파일이 있는 gmail 보내기 업무중에 만든 뉴스센싱 결과를 메일로 보내기 위해 파이썬 코드를 작성하였다. 단순 뉴스 수집을 위한 코드 였기 때문에 내부 메일 서버를 사용하지 않고 외부에 별도의 gmail 계정을 만들어 해당 계정으로 보내도록 만들었다. 간단하게 코드의 중요 부분들을 설명하자면 먼저 gmail의 smtp 서버 설정과 사용할 계정으로 로그인을 해줘야 한다. 구글의 경우 SMTP 서비스로 587번 포트를 이용하고 있다. 계정 로그인의 경우 패스워드 유출 위험이 있으므로 별도의 앱비밀번호를 만들어 넣는것을 추천한다. 앱 비밀번호 발급은 아래 포스팅을 참고하면 된다. 구글 앱 비밀번호 발급받기 구글 앱 비밀번호 발급의 필요성 파이썬 등의 프로그래밍 언어를 이용해 메일 송수신 모듈을 구현해야 할 경우가 있다. 주로 SMTP를 ..
네이버 검색 API를 이용한 코로나, 부동산 뉴스 검색 - with Python 네이버에서는 검색 API를 제공하여 일 25,000건 한도로 검색엔진에 등록된 다음 데이터를 조회 할 수 있다. 네이버 검색 결과 컨텐츠 웹 서비스 또는 모바일 앱에 네이버 웹문서/블로그/뉴스/책/영화/카페글/지식iN/쇼핑/이미지/백과사전/전문자료 분야에 대한 검색 결과 지역 검색 ‘OO역 맛집’, ‘OO동 술집’과 같은 검색 결과를 보여주고 싶을 때 사용하며, 네이버 지역 서비스에 등록된 각 지역별 업체 및 상호 검색 결과 검색 부가 기능 검색 부가 기능으로 특정 검색어에 대해 성인검색어 여부를 알려주는 기능과 검색창에 입력된 오타를 바로 잡아주는 오타변환 기능 제공 위에서 지원하는 기능 중 검색 결과 컨텐츠의 뉴스 검색 기능을 사용하여 파이썬으로 코로나, 부동산 관련 뉴스를 검색해주는 프로그램을 만들..
네이버 Open API 로 단축 URL 생성하기 네이버 Open API 신청과 파파고 API로 번역을 하는 프로그램을 만들었었다. 2020/02/10 - [Programming/Setting] - Naver 애플리케이션 등록 (API 이용신청) Naver 애플리케이션 등록 (API 이용신청) 1. Naver Developers 접속 네이버에서 제공하는 API를 사용하기 위해서는 애플리케이션 등록이 필요하다. 네이버 디벨로퍼 페이지로 먼저 접속을 한다. (https://developer.naver.com) NAVER Developers 네이버 오.. garnetiger.com 2020/02/26 - [Programming/Project] - 네이버 파파고 API로 번역 프로그램 만들기 by Python 네이버 파파고 API로 번역 프로그램 만들기 by ..
파이썬 파일 읽기 파이썬에서 파일을 읽는 방법은 read() / readline() / readlines() 3가지 이다. 다음과 같이 총 5줄을 가지고 있는 파일을 사용해 각각 어떻게 동작하는지 보겠다. read() 함수는 파일 전체의 내용을 읽어온다. f = open("C:/test/file_read.txt", 'r') line = f.read() print(line) f.close() Line 1 Line 2 Line 3 Line 4 Line 5 readline() 함수는 한번 호출할 때마다 파일을 한줄씩 읽어온다. f = open("C:/test/file_read.txt", 'r') line1 = f.readline() line2 = f.readline() print(line1) print(line2) f.clos..
파이썬 파일 쓰기 파이썬으로 파일 쓰기를 하기 위해서는 open 함수로 파일을 생성하거나 경로를 열어준다. fw = open("C:/test/file_write.txt", 'w') 파일을 열었으면 write 함수를 이용해 파일에 입력할 내용을 넣어준다. fw.write("파이썬 파일 쓰기 테스트.") fw.close() 제대로 써졌는지 read 함수로 파일 내용을 읽어서 출력해본다. fr = open("C:/test/file_write.txt", 'r') data = fr.read() print(data) 파이썬 파일 쓰기 테스트. 마지막으로 파일 입/출력은 꼭 close 함수로 파일을 닫아준다. fr.close()