이번 포스팅에서는 오토마우스를 활용해서 웹페이지를 자동화할 수 있는 프로그램을 만들어보도록 하겠습니다 !
<마우스의 좌표를 출력하는 코드 만들기>
1. pyautogui 라이브러리 설치해주기
라이브러리 = 패키지의 묶음
패키지 = 모듈의 묶음
vs 코드에서 하던대로, 모듈이 없다고 뜬다 ..
왜 이런가해서 물어봤더니, 파이참은 vs code와 달리 터미널에서 라이브러리를 설치하는게 아니라, IDE 내에서 따로 라이브러리를 설치해준다고 한다!
설정 > Python 인터프리터 > (+) 버튼 누르기 > 원하는 패키지 이름 검색 > 패키지 설치 버튼 눌러주기
그럼 이렇게 오류 없이 잘 임포트되는 것을 볼수 있다.
2. pyautogui 모듈의 position() 메소드로 마우스 좌표 값 출력해주기
time.sleep(0.1)로 0.1초 기다려주면, 0.1초 동안의 좌표들이 터미널 창에 나온다.
<네이버에서 자동으로 서울 날시를 검색하는 코드 만들기>
1. 필요한 모듈 임포트 하기
pyperclip 라이브러리 = 클립보드에 값을 복사, 붙여넣기할 수 있는 라이브러리
* pyautogui는 한글이 지원되지 않아, 검색에 필요한 한글을 클립보드를 이용하여 사용
import pyautogui : 마우스, 키보드 자동제어
import time : 시간 다루기
import pyperclip : 클립보드에 값 복사, 붙여 넣기 하기
2. 검색창으로 이동하기
초록색 검색창의 좌표는 위의 마우스 좌표 출력하는 코드를 활용하여, 가져와 준다.
pyautogui.moveTo(x, y, 시간)
시간 파라미터 동안 x, y 좌표로 이동할 수 있는 코드.
pyautigui의 오토마우스 라이브러리 기능 중 하나인 moveTo를 활용하면 된다!
3. 클립보드로 검색어 복사 붙여 넣기하기
pyperclip.copy("복사할 내용")
pyautogui.hotkey("ctrl", "v")
pyperclip.copy로 검색어를 복사하고, hotkey를 이용해서 두 개의 키를 동시에 누른다.
4. enter 누르기
pyautogui.write(["enter"])
마지막으로 엔터키를 눌러주면 완성!
이렇게 잘 나오는 걸 볼 수 있다 !!!
<서울 날씨 화면 자동 캡쳐 후 저장하는 코드 만들기>
사담이지만, 이 부분은 하다가 오류나서 다 지우고 그냥 원래 쓰던 vs코드로 넘어갔다...
아까 만든 코드에서, 좌표 캡쳐만 하면 된다.
좌표 캡쳐할때는 screenshot만 넣어주면 된다.
pyautogui.screenshot(r'저장경로\파일명.jpg', region=(X좌표, Y좌표, 가로 사이즈, 세로 사이즈))
자, 여기서 위와 아래 코드의 차이가 보이시나요 ?
바로 r의 유무입니다.
[raw 문자열 포함 방법]
r = 역슬래쉬(\)를 문자열 자체에 포함 시킬 수 있는 방법
변수명 = r'문자열'
print("\\path\\test.py") -> \path\test.py
print(r'\\path\\test.py') -> \\path\\test.py
현재 폴더가 하나로 관리되고 있으므로, 따로 상대경로를 입력하지 않고, 파일명과 확장자만 적어주어도 저장이 잘 되는 것을 볼 수 있다. 상위 폴더가 있는 경우에는 상대 경로 적어주기 !
상대경로와 절대경로에 대해서는,
https://wikidocs.net/153154 이 블로그를 참고해보세요...
후 드디어 포스팅 하나 끝...
사실 뒤에 하나 더 있지만, 분량 조절 실패로 내용이 너무 많아진 관계로 여기서 이만 줄이려고 한다.
그래도 하루에 한시간씩은 공부를 좀 하는게 재밌다! 삶의 질도 높아지고 ~
'파이썬 python > 파이썬 활용' 카테고리의 다른 글
[python] streamlit 으로 쉬운 웹앱 만들기, 비트코인 시세 출력해주는 웹앱 코드 만드는 법 ! (2) | 2022.10.06 |
---|---|
[python] 파이썬 영어 문서를 한글로 번역하는 자동화 프로그램 만들기 (1) | 2022.10.02 |
[python] 영어 문서를 한글로 자동번역 프로그램 만들기 (0) | 2022.09.29 |
[Open CV] Open CV로 빈 스케치북 만들고 도형 그리기 ! (0) | 2022.08.30 |
[Open CV] Open CV로 동영상, 카메라 출력하기 (0) | 2022.08.30 |