소개하기 "자모조립소"는 Mac 환경과 Windows 환경 간의 한글 파일명 인코딩 차이를 해결하기 위한 웹 기반 도구입니다. 이 도구는 사용자가 파일을 업로드하면 한글 파일명의 자소가 분리되지 않도록 인코딩합니다. 이 웹페이지는 파일을 서버로 전송하지 않고, 모든 처리를 사용자의 브라우저 상에서 직접 수행합니다. 파일명 인코딩 차이 이해하기 Mac과 Windows 환경에서 한글 파일명을 다르게 인코딩하는 문제는 두 운영 체제가 사용하는 문자 인코딩 방식의 차이에서 기인합니다. Mac은 NFD (Normalization Form Decomposition) 방식을 사용해 한글 자모를 분리하여 저장하는 반면, Windows는 NFC (Normalization Form Composition)를 사용해 한글 자..
Preview 새로운 게시글 알림 봇, Open API를 이용한 업데이트 등 다양한 기능을 할 수 있는 텔레그램 봇을 여러 개 운영하고 있다. 봇을 더 사용자 친화적으로 사용할 수 있는 방법이 없을까 고민하던 중 메시지마다 경험치를 부여하여 채팅을 할수록 레벨업을 하는 기능을 구현해 보았다. 단체 채팅방에서 사용하면 재미있는 기능이며, 텔레그램 메시지 핸들러 사용을 위한 python과 서버 구축을 위한 MySQL을 통해 구현하였다. [동작환경] Raspberry pi 3+ python 3.8 pip install 일반 알림만을 제공하는 Cron데몬을 사용하는 텔레그램 봇과는 다르게 사용자와 상호 작용을 해야 하기 때문에 코드가 서버 상에서 24시간 동작해야 한다. 메시지 갱신여부, 종류 판단(텍스트인지,..
원격지에서 라즈베리파이의 서버 정보를 가져오기 위한 방법을 소개한다. python으로 작성하며, 원하는 곳으로 데이터를 전송할 수 있다. [동작환경] Raspberrypi 3B+ python 3.8 가져오는 정보는 라즈베리파이 CPU 정보, 메모리 사용량, CPU 온도, 업타임(Uptime)을 가져오도록 했다. import platform from collections import OrderedDict from datetime import timedelta import os class Sysinfo: def __init__(self): self.model_name = None self.result = '' #CPU Info def getinfo(self): cpu_core = 0 with open('/p..
라이엇 게임즈는 공식 홈페이지에서 롤 api를 통해 게임 정보와 유저 정보를 제공한다. https://developer.riotgames.com/ Riot Developer Portal About the Riot Games API With this site we hope to provide the League of Legends developer community with access to game data in a secure and reliable way. This is just part of our ongoing effort to respond to players' and developers' requests for data and developer.riotgames.com 라이엇 계정이 있다면 개..
(1)편의 게시판 크롤링에 이은 텔레그램 봇 제작기입니다. 1. 토큰(Token) 발급받기 먼저, 텔레그램 봇의 토큰을 발급받기 위해 @BotFather에게 말을 겁니다. /newbot (새로운 봇 생성) 부터 시작하여 봇 이름 생성, username을 생성하여 토큰을 발급받습니다. 토큰은 000000000:AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 형태로 되어 있습니다. 발급받은 토큰은 작성한 봇의 권한을 가지게 되므로 외부로의 유출에 주의하시기 바랍니다. 2. 간단한 Echo 봇 작성 토큰을 발급했으니 간단한 봇을 작성해 보겠습니다. 먼저 telegram bot 사용을 위해 모듈을 설치해 줍니다. $pip install python-telegram-bot --upgrade 또는 ..
환경 라즈베리파이 3B(crontab) 파이썬 3.5 제작에 앞서 크롤링하려는 웹페이지마다 로봇 배제 표준(robots.txt)을 명시하는 페이지들이 있다. 이는 웹 사이트에 로봇이 접근하는 것을 방지하기 위한 규약으로, 일반적 접근 제한에 대한 설명을 기술한다. https://ko.wikipedia.org/wiki/%EB%A1%9C%EB%B4%87_%EB%B0%B0%EC%A0%9C_%ED%91%9C%EC%A4%80 허가된 영역, 자원만을 크롤링하는 것을 권장한다. 제작하려는 스크립트는 새 글이 등록되었을 때 텔레그램 메신저로 알림이 오도록 하는 것이다. 필요한 모듈을 설치해 준다. sudo pip3 install requests # http request sudo pip3 install bs4 # Be..