반응형

안녕하세요

예전부터 쭈욱 해왔던 셀레니엄 메크로만들기를 소개해드리겠습니다. 

일단은 설명부터 해드리겠습니다. 

PYTHON의 언어에 지원되는 모듈입니다. 

 

코드를 실행할 경우에 자신이 원하는 사이트로 접속해서 로그인 스스로 하고

여러가지 것들을 자동으로 해 줄 수 있는 자동기능이 있습니다.

 

잘 사용하셨으면 좋겠습니다. 

사용분야는 많습니다. 

메크로의 분야에서 쓰이면 좋습니다. 

 

주의. chromedriver 나 opera, firefox 등의 인터넷 브라우저를 열수있는 파일입니다. 

꼭 설치를 하셔야 합니다.

 

만약에 exception 발생시 뒤에 Chrome version XX
나온다면 크롬->설정-> 크롬정보에서 버전 확인해서 다운로드 하시면 됩니다. 
크롬드라이브는 구글에서 크롬드라이브 검색하면 잘 나옵니다.

 

from selenium import webdriver
driver = webdriver.Chrome('chromedriver') # chrome
url = 'https://www.naver.com'
driver.get(url) # open url 
# naver login click
driver.find_element_by_class_name('link_login').click()
driver.find_element_by_class_name('int').send_keys('myname')
driver.find_element_by_name('pw').send_keys('9512')
driver.find_element_by_class_name('btn_global').click()

위에서 조금씩 설명해드리겠습니다. 

webdriver 를 가져오겠다 입니다. 

driver 라는 변수에 Chrome을 집어넣었습니다. 

이 라인이 실행이 되시면은 Chrome 브라우저를 실행을 합니다. 

url 이라는 변수에 네이버 url을 집어 넣었습니다. 

 

driver.get(url) 을 통해서 브라우저는 네이버 사이트로 이동을 하겠됩니다. 

 

이제는 정말 흥미로운 라인입니다. 

driver.find_element_by_class_name('link_login').click() 은 

앞에서 부터 driver 라는 변수의 옵션을 사용하겠는데

찾아라 요소,속성을 클래스이름은 link_login 이라는것을

한국어로 잘 번역하면은 

드라이버로 link_login이라는 클래스이름을 가진 속성을 찾아서, 클릭해라

였습니다. 

 

그 밑에 줄을 설명 하겠습니다. 

driver.find_element_by_class_name('int').send_keys('myname')

드라이버로 int라는 클래스이름을 가진 속성을 찾아서, watch라고 써라

 

그 밑에 줄을 설명 하겠습니다. 

driver.find_element_by_name('pw').send_keys('9512')

드라이버로 pw라는 이름을 가진 속성을 찾아서, 9512라고 써라

 

그 밑에 줄을 설명 하겠습니다. 

driver.find_element_by_class_name('btn_global').click()

드라이버로 pbtn_global라는 클래스이름을 가진 속성을 찾아서, 클릭해라

 

이렇게 마무리 되는것입니다. 

그대로 복사를 하셔서 이용을 하신다면은 

작동은 되시지만 로그인은 안되신다는것입니다. 

 

이런식으로 잘 짜시면은 조금더 복잡하고 어렵고 난해한 기능을

자신이 직접 로그인하고 복잡한 일을 안하고 난해한 일을 안하겠죠

 

셀레니엄을 이용한 장점 :

한번 만들어두면 유용하게 사용이 가능하다 

한번 클릭으로 자신은 잠시 쉴 수 있습니다. 

 

셀레니엄을 이용한 단점:

메크로나 자동화를 만드는 과정이 아주 쉽지만은 않다.

이미 많은 자동화를 통해서 웹에서 이용할 경우에 대기업이나 중기업정도에

자동으로 글을 쓰거나 자동으로 무언가 해야 하는 일을 가려낸다.

 

반응형
반응형

자 여지껏 실전만 해왔는데 갑자기 왜 연습이냐? 라고 생각해볼 수 있다는것입니다.

지금은 우리가 그냥 빠르게 대충 나한테 필요한거 만들자 하고 왔습니다.

지금은 드디어 컴퓨터의 중요한 클릭을 배워 보려고 합니다.

 

MouseClick("버튼",x좌표,y좌표,클릭횟수,마우스이동속도)

버튼은 왼쪽 left, 오른쪽 right, 중간은 middle ...등이 있습니다.

좌표는 아실테고요. 클릭횟수 더블클릭은 2를 넣어줍니다.

마우스이동속도 속도가 그리 중요한건 아닙니다. 컴퓨터 반응속도가 빠르면 속도를

올리는거겠지만, 보통 온라인 환경에서 메크로를 이용한다면 기본으로도 충분하고,

솔직히 sleep함수를 이용해도 좋습니다.

 

간단한거 해보겠습니다.

 

while(1)
Sleep("100")
HotKeySet("+{F2}",doubleMax)
HotKeySet("+{ESC}",terminate)
WEnd
Func terminate()
Exit 0
EndFunc
Func doubleMax()
MouseClick("left",556,15,2,5)
EndFunc

 

마우스 좌표에 2번 클릭을 하는데 저의 모니터 값을 넣었다는 겁니다.

이렇게 하면 더블클릭하는데 뒤에 5는 원래 10의 값에서 좀더 빠르게 이동해서 누르라는 의미입니다

자 이렇게 한번 해봤습니다. 

여러분은 이제 여러분의 마음데로 화면상에서 더블클릭도 하고 자유롭게 만들 수 있게 되었습니다.

오프라인의 환경에서의 메크로를 필요로 하신분은 Send까지도 사용하시면 더욱 더 좋겠습니다.

 

자 그래도 소스코드 설명을 해드리겠습니다.

 

MouseClick("left",556,15,2,5) ;마우스왼쪽클릭 하는데 x는 556으로 y는 15로 2번클릭하는데 마우스는 빠르게

 

이렇게 하는겁니다.

 

그러면 이렇게 연습도 하게 되었습니다.

드래그도 원하시는분은 도움말에 다 있습니다.

 

상상력이 동원된다면 여러분이 원하는 모든것들이 있는 오토잇이였습니다.

 

다음에 올리게 될 AutoIt은 다음시간에 알려드리겠습니다.

반응형

'AutoIt' 카테고리의 다른 글

[AUTOIT] 나만하는 넘버패드 마우스화  (2) 2020.08.19
오토잇 소스코드 분석기(Basic)(Calculator)  (0) 2020.05.08
AutoIt 네번째 실전  (0) 2020.04.29
AutoIt 세번째 실전  (0) 2020.04.26
AutoIt 두번째 실전  (0) 2020.04.25
반응형

 

자 그럼 저번 시간에는 자동으로 메모장을 실해하고 글도 입력하고 종료까지 자동화를 시켜보았습니다.

한글 메뉴얼 보면서 차근차근하면 다 되실 겁니다.

 

따로 만들고 싶은 자동화가 있다면 저도 같이 해볼 겁니다.

 

그럼 세 번째 실전은 마우스입니다!!!

마우스를 자동으로 클릭하기에 앞서서 우리가 알아야 하는 함수는

MouseGetPos 함수입니다.

이 함수라 할 것 같으면 지금 내가 사용 중인 마우스의 좌표를 알려줄 수 있습니다.

 

자 MouseGetPos 

 

$pos = MouseGetPos()
MsgBox(0, "Mouse x,y:", $pos [0] & ", " & $pos[1])

이것을 실행하면은 그냥 내 지금의 마우스 좌표가 나온다는 것 이렇게 하나하나 하면

정말 귀찮고 우리 AutoIt의 경쟁 대상이자 자료가 많은 AutoHotKey 프로그램의

메크로 기능을 추가하면 쉽게 나의 메크로를 만들어서 사무화의 마우스 클릭 반복 사이클을

단축기(HotKeySet)를 사용할 수 있습니다.

 

제가 짜깁기 한 예시 제공해 드립니다.

널리 쓰시오~~~


While(1)
sleep("100")
HotKeySet("+`",findpos)
WEnd

Func findpos()
$pos = MouseGetPos()
MsgBox(0, "Mouse x,y:", $pos[0] & "," & $pos[1])
EndFunc

 

잘 복사 붙여 넣기 하셨을 거라 믿습니다.

그러면 shift와 `(숫자 1 옆에) 같이 누르면 지금의 마우스 위치가 뜹니다.

그러면 자 마우스를 움직이면 좌표가 계속 변하는 겁니다.

우리 모든 사용자의 pc환경이 다릅니다 그래픽카드라던지 모니터라던지 해상도라던지

그래서 자신이 쓰고 있는 사무실 컴퓨터의 환경에 맞춰서 자신이 직접 메크로를 

만들어보는 겁니다.

 

설명 들어갑니다!!

 

While(1) ;반복문 시작 (무한) 
sleep("100") ;;0.1초 쉬기
HotKeySet("+`",findpos);HotKeySet 은 HotKey 단축키 기다리는 겁니다.

누르면 시작합니다.
WEnd ;반복문 종료

Func findpos() ;함수findpos()를 제가 그냥 만들었습니다.(사용자 정의)
$pos = MouseGetPos() ;드디어 오늘의 주인공 MouseGetPos()입니다. 이 함수가 이제 우리를 

;클릭 막일로부터 구해줄 함수입니다.
MsgBox(0, "Mouse x,y:", $pos[0] & "," & $pos[1]) ;메시지 창을 띄우며 지금의 마우스 위치를 x, y좌표를 

알려줍니다.
EndFunc;함수 끝

 

자 그리고 이렇게 자신의 메크로 만들기 마우스 좌표 알아보기는 끝입니다.

 

이제 수많은 것들을 응용해서 만드실 수 있을 거라 믿고 그럼 내일 봐요 ㅎㅎ

반응형

'AutoIt' 카테고리의 다른 글

AutoIt 다섯번째 연습  (0) 2020.04.30
AutoIt 네번째 실전  (0) 2020.04.29
AutoIt 두번째 실전  (0) 2020.04.25
AutoIt 시작하기  (0) 2020.04.24
[00]AutoIt 강좌  (0) 2020.04.18
반응형

AutoIt은 무지 강한 메크로입니다 !!

내가 생각하는 윈도우에서 사용하는 프로그램도 다룰수있음 특히 키보드라던지 마우스 흉내내기가 기가 막힘

 

자 우리 같이 설치를 보면서 따라해봅시다 ㅎㅎ

 

autoit 의 홈페이지로 접속을 하고 다운로드로 들어갑니다

 

 

오른쪽 사진은 홈페이지 상태 현재 200418 입니다 

왼쪽 사진은 다운로드 눌러서 들어가면 보이는데 Download AutoIt 눌르세요

그러면 알아서 다운을 받아져요 ㅎㅎ

그리고 밑에 Download Editor 누르면 주소를 이동합니다

 

SciTE4AutoIt3.exe 다운받고 SciTE4AutoIt3_Portable.zip 도 받고요 au3.api는 마우스 오른쪽 버튼눌러서 다운받아요

 

밑에는 설치 하면 되요 그냥 설치 ㄱㄱ

 

C:\AutoIt3\SciTE\api 의 설치경로에 au3.api 를 덮어씌어주세요 

 

반응형

'AutoIt' 카테고리의 다른 글

AutoIt 다섯번째 연습  (0) 2020.04.30
AutoIt 네번째 실전  (0) 2020.04.29
AutoIt 세번째 실전  (0) 2020.04.26
AutoIt 두번째 실전  (0) 2020.04.25
AutoIt 시작하기  (0) 2020.04.24

+ Recent posts