파이썬
[파이썬] 코랩에서 Python Rich 라이브러리를 사용하여 텍스트 출력을 예쁘게 꾸며보자
이번 포스팅에서는 파이썬의 Rich 라이브러리를 사용해서 딱딱해 보이기만 하는 콘솔 텍스트를 조금 더 예쁘게 출력하는 방법에 대해 알아보도록 하겠다. 제목은 코랩에서라고 적어놨지만 다른 일반적인 환경에서도 적용된다는 점을 알아두자. !pip install rich !python -m rich 우선, rich 라이브러리를 사용하기 위해서 위 명령어를 사용하여 rich를 설치해주고, !python -m rich 명령어로 Rich 라이브러리에 대한 설명을 확인해보자. 그럼 이렇게 Rich 라이브러리를 사용하여 나타낼 수 있는 기능들에 대해 출력해준다. 문장의 색상을 변경할 수 있으며, 밑줄, Bold체, Italic체, 하이라이트, 마크다운, 테이블 등을 사용할 수 있다고 말해주고 있다. 위 기능들을 하나하나..
[파이썬] Python Sqlite3 모듈을 사용하여 Database를 생성하고 데이터를 관리해보자
이번 포스팅에서는 파이썬 Sqlite3 모듈을 사용하여 자체 데이터베이스를 생성하고 데이터를 관리하는 방법에 대해 알아보도록 할 예정이다. Sqlite3는 파이썬에서 제공하는 모듈로써, 텍스트나 숫자와 같이 간단한 데이터를 저장하는 심플한 데이터베이스를 구축할 수 있다. 마치 MariaDB와 MYSQL의 축소형이라고 생각할 수 있다. Sqlite3에서 지원하는 자료형 파이썬 SQLite3 None NULL int INTEGER str TEXT float REAL bytes BLOB 예제에서 사용할 데이터 id (INTEGER) name (TEXT) age (INTEGER) number (TEXT) address (TEXT) 1 김상욱 22 010-4545-6767 서울특별시 종로구 세종대로 종로 1가 2..
[백준/파이썬] 1002번 문제 '터렛'
https://www.acmicpc.net/problem/1002 1002번: 터렛 각 테스트 케이스마다 류재명이 있을 수 있는 위치의 수를 출력한다. 만약 류재명이 있을 수 있는 위치의 개수가 무한대일 경우에는 -1을 출력한다. www.acmicpc.net 문제 조규현과 백승환은 터렛에 근무하는 직원이다. 하지만 워낙 존재감이 없어서 인구수는 차지하지 않는다. 다음은 조규현과 백승환의 사진이다. 이석원은 조규현과 백승환에게 상대편 마린(류재명)의 위치를 계산하라는 명령을 내렸다. 조규현과 백승환은 각각 자신의 터렛 위치에서 현재 적까지의 거리를 계산했다. 조규현의 좌표 (x1, y1)와 백승환의 좌표 (x2, y2)가 주어지고, 조규현이 계산한 류재명과의 거리 r1과 백승환이 계산한 류재명과의 거리 r..
[백준/파이썬] 1000번 문제 'A+B'
https://www.acmicpc.net/problem/1000 1000번: A+B 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 문제 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 A와 B가 주어진다. (0 a and a b and b < 10)): a, b = input().split() a = int(a) b = int(b) print(int(a) + int(b)) 우선, 값을 입력받을 변수로 a와 b를 -1로 선언 및 초기화해준다. 그리고 문제 ..
[파이썬] Python SMTP 모듈을 사용하여 Email 전송하기 / SMTPAuthenticationError : 534 오류 해결 방법
이번 포스팅에서는 파이썬 내장 모듈인 SMTP를 사용하여 프로그램으로 이메일을 전송하는 실습을 진행해볼 것이다. SMTP는 Simple Mail Transfer Protocol의 약자로, 이메일을 송/수신하는데 사용하는 TCP/IP 프로토콜이다. 쉽게 말하자면, 컴퓨터 사이에 이메일 통신을 위한 규약이라고 할 수 있다. import smtplib from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipart 우선, SMTP를 사용하기 위해 필요한 smtplib 모듈을 import한다. 그 아래에 클래스들을 보면 MIME이라는 이름을 가지고 있는데, MIME은 이메일과 함께 전송할 파일을 텍스트 형식으로 변환해주는 역할..
[Develop/파이썬] 셀레니움 크롤링(Crawling) - Tistory 포럼 자동 댓글 프로그램 문제점 개선하기
이전 포스팅을 꼭 참고해주시기 바랍니다. [Develop/파이썬] 셀레니움 크롤링(Crawling) - Tistory 포럼 자동 댓글 등록 프로그램 : https://itstory1592.tistory.com/26 [Develop/파이썬] 셀레니움 크롤링(Crawling) - Tistory 포럼 자동 댓글 등록 프로그램 개발 동기 티스토리(Tistory)는 자체적으로 포럼(Forum) 사이트를 제공함으로써 많은 블로거들의 소통 공간을 마련해주고 있다. 포럼을 한 번이라도 이용해본 유저라면 알겠지만, 티스토리 블로거 itstory1592.tistory.com 이번 포스팅에서는 지난 글에 이어 파이썬 셀레니움 라이브러리를 이용하여 개발했던 티스토리 포럼 게시글에 자동으로 댓글을 다는 프로그램의 문제점을 개선..
[파이썬] 코랩(CoLab)에서 구글 드라이브 파일(csv, txt ...) 가져오기
코랩(CoLab) 환경에서 개발을 하다보면 파일 입출력을 해야할 때가 있을 것이다. 보통 코랩을 사용하는 이유가 개발하는 장소가 유동적이기 때문에, 온라인 상에서라도 개발 환경이 변하지 않도록 가상 환경을 구축해놓는 것이다. 마찬가지로 파일 입출력의 경우에도 csv 또는 txt 파일들을 개발 환경에 계속 저장해놓을 수 없는 상황이 있을 수 있기 때문에, 코랩에서는 구글 드라이브에 파일을 저장해놓고 접근할 수 있는 모듈을 제공해준다. 이렇게 하면 개발 환경이 달라진다고 해서 파일을 계속 다운받을 필요도 없을 뿐더러, 마치 파일 입출력을 통해 DB와 비슷한 효과를 볼 수도 있다. 그럼 이제 이런 환경을 어떻게 구축하는지 알아보자. from google.colab import drive drive.mount(..
[Develop/파이썬] 셀레니움 크롤링(Crawling) - Tistory 포럼 자동 댓글 등록 프로그램
개발 동기 티스토리(Tistory)는 자체적으로 포럼(Forum) 사이트를 제공함으로써 많은 블로거들의 소통 공간을 마련해주고 있다. 포럼을 한 번이라도 이용해본 유저라면 알겠지만, 티스토리 블로거들 사이에는 소통뿐만 아니라 상호간의 맞구독이라는 문화가 존재한다. 여기서 '맞구독'이란, 블로거들끼리 서로의 블로그를 구독하고 협업(?)하는 개념이다. 구독자가 많으면 많을 수록 자신이 등록한 게시글을 보기 위해 블로그를 방문하는 이용자가 늘어날뿐만 아니라, 사람들이 이 블로그를 이만큼 구독할 정도로 신뢰도가 있다는 것을 의미하기 때문에 많은 티스토리 블로거들이 맞구독을 하기위해 본인의 블로그를 포럼에서 홍보하고 있는 상황이다. 본인 또한 포럼을 자주 이용하며, 스크린샷의 댓글처럼 다양한 블로거들의 게시글에 ..
[파이썬/Error] 셀레니움 unknown error: ChromeDriver only supports characters in the BMP 해결방법
파이썬으로 셀레니움(Selenium) 라이브러리를 사용하여 티스토리 포럼 게시글에 자동으로 댓글을 다는 프로그램을 개발하던 중에 'unknown error: ChromeDriver only supports characters in the BMP' 에러를 겪게 되었다. 아래 코드는 에러를 발생시킨 문제의 코드와 에러문구이다 for page in range(1,2): ...생략... for text_box in text_boxes: text_box.send_keys('안녕하세요😃\n저는 IT/코딩 블로그를 운영하고 있습니다~~!!\n서로 맞구독하고 소통해요 :)') text_box.submit() 그냥 읽었을 땐 'ChromeDriver는 BMP형식 내에서characters만 지원한다' 라고 하는듯하다. 무..