일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- API루트
- state전역관리
- APIroutes
- nodemailer
- 비디오스트리밍
- 노드메일러
- 넥스트js
- 인스타그램앱만들기
- 넥스트JS13
- next js
- 앱비밀번호
- 페이스북개발자
- expressjs
- 웹소켓
- 비디오전송
- pyqt5
- PlanetScale
- 인스타그램API
- nextjs13
- nextjs
- 리액트
- 쿠키관리
- socketIO
- pyinstaller
- reactjs
- Nodejs
- 플래닛스케일
- mysqlworkbench
- ReactContextAPI
- ReactQuill
- Today
- Total
Timpossible history
[파이썬] 카카오톡 메세지 자동으로 보내기 본문
카카오톡 데스크 앱을 이용해서 자동으로 메세지를 보내기 위해서 여러 방면으로 알아봤지만, 당연히 카카오 open API는 이런 걸 허용할리는 없었고, 사용자의 기기를 직접 제어하는 코드를 짜야한다는 결론에 이르렀다.
동일한 메세지를 한 두개의 채팅방에 보내야하는 경우에는 상관이 없지만 방의 갯수가 늘어나면 늘어날 수록 여간 귀찮은 일이 아닐 수 없으니, 아주 편하게 자동으로 보낼 수 있을 것 같아 코드를 짜보았다.
1. 라이브러리 설치
사용자의 컴퓨터를 제어할 수 있는 라이브러리 중에는 pyautogui 같은 매우 유용한 라이브러리가 있지만, 미숙한 나의 실력 탓인지 나의 맥북에서는 잘 동작하지 않았기 때문에 여러 라이브러리를 탐색하던 중 찾게 돤 아주 좋은 라이브러리 pynput을 설치했다.
그리고 키보드를 제어할 수 있는 파이썬 keyboard 라이브러리 또한 설치해주었다.
pip3 install pynput pyperclip keyboard
2. 코드 작성
프로그램으로 만들어서 팔 것도 아니기에 그저 내가 사용할 용도로 만들었기에 간단하게 작성해보았다.
from pynput.mouse import Button, Controller as MouseController
import pyperclip
import time
import keyboard
mouse = MouseController()
# 원하는 위치로 마우스를 이동
mouse.position = (900, 150) # 첫번째 채팅창의 위치를 설정.
time.sleep(1)
# 더블 클릭 수행
mouse.click(Button.left, 2)
time.sleep(1)
text = "내가 쓰고 싶은 내용"
pyperclip.copy(text)
#보내고 싶은 채팅방의 갯수에 맞게 설정
for i in range(25):
try:
time.sleep(1)
keyboard.press_and_release('command+v')
time.sleep(1)
keyboard.press_and_release('enter')
time.sleep(1)
keyboard.press_and_release('esc')
time.sleep(1)
keyboard.press_and_release('down')
time.sleep(1)
keyboard.press_and_release('enter')
time.sleep(1)
except:
pass
이 코드의 실행 방식은 카카오톡 앱을 실행 시킨 후에 코드를 작동 시키는 것이다.
이 코드를 잘 사용하기 위해서 내가 메세지를 보내고자 하는 방들을 즐겨찾기에 등록시킨 후 임의로 방들의 이름에 동일한 문자('123'을 추가했음)를 추가해서 친구 검색에 123을 써놓으면 방들이 나열이 되고, 첫번째 방에 들어가 코드에 미리 적어놓은 text를 pyperclip과 keyboard 라이브러리를 통해 입력을 하고 메세지를 보낸다. 그 후 esc를 눌러 채팅창을 끄고 키보드의 down 버튼을 눌러 다음 채팅창으로 넘어간 후 enter 키를 눌러서 그 방에 들어가게 된다. 그리고 또 메세지를 보내며, 자동적으로 메세지를 끝까지 보내게 된다.
3. 주의사항
코드를 실행하는 동안에는 카카오톡 앱을 켜놓아야 하기 때문에 다른 업무를 못하게 된다. 마우스든 키보드이든 손도 대면 안 되는 불편함이 있다. 카카오 developers에서 제공하는 open API가 없으니 사용자의 컴퓨터를 직접 제어하게 해야하니 그럴 수 밖에..
'Python' 카테고리의 다른 글
[Python] PyQt5로 응용프로그램 만들기(Feat. Pyinstaller) (0) | 2024.02.28 |
---|