[오토핫키 AutoHotKey] 오토핫키에서 파이썬 실행파일 불러오기

Posted by 두두오빠
2018. 3. 8. 10:39 프로그래밍/오토핫키 AutoHotKey

오토핫키에서 파이썬 프로그램을 호출해서 실행되도록 해보자.


;파이썬 들어있는 폴더 오픈

run D:\Python

sleep, 2000

;파이썬 프로그램 실행

run D:\Python\python.exe

sleep, 3000

send import soccer_eng

send {Enter}

sleep, 3000


send soccer_eng.main()

send {Enter}



직접 실행했을때랑, 자동으로 run 시켰을때랑 실행되는 파일이 뭔가 다르다.

아래 화면을 살펴보면 화면 자체의 차이점도 있다. 

좌측상단의 마크도 약간 다르게 생겼다.


직접 파이썬 실행하는 경우

문제없이 main 작업이 실행된다.



오토핫키를 통해서 파이썬 실행하는 경우

main작업에서 오류가 발생한다. 

./recentData.txt 파일을 찾을 수 없는 오류다.



이유는?

파일 경로에 관한 문제다.

os.getcwd() 로 확인해보면, 경로의 차이를 확인 가능하다.

위의 화면에서 보면, 오토핫키로 실행한 것은 오토핫키 실행파일이 있는 경로로 나온다.


아래 화면은 직접 실행한 파이썬에서 확인 가능한 경로다.

여기는 파이썬 실행파일이 존재하는 경로로 되어있다.


해결방법은?

파이썬 프로그램 자체에 강제로 경로를 바꾸는 작업을 추가한다. 실행해보면 양쪽에서 오류없이 정상으로 작업이 진행된다.

    import os

    print(os.getcwd())

    os.chdir("D:\\Python")

    print(os.getcwd())


오토핫키에서 경로를 바꿔주는 방법으로도 확인해볼 수 있다.

send import os

send {Enter}

;파이썬에서 사용하는 경로 변경해주기

send os.chdir("D:\\Python")

send {Enter}

결론적으로는 현재 경로를 변경하는 방법을 사용해야 한다. 

이는 오토핫키나 파이썬 양쪽 중 아무곳이나 수정함으로써 정상적으로 실행시킬 수 있다. 

내가 가지고 있는 프로그램은, 오토핫키에서 파이썬을 호출하면서 파이썬의 경로를 이미 지정하고 있다. 

그래서 오토파일에서 경로를 설정해주는 방법으로 접근하는게 추후 확장 가능한 측면에서 더 나은 선택이다.


[파이썬 Python] 파이썬으로 크롤링 도전하기

Posted by 두두오빠
2017. 9. 6. 22:23 프로그래밍/파이썬 Python

데이터를 가공하는 부분에 관심을 가지면서, 수집하는 것을 조금 더 효율적으로 할 수 있는 방법에 대해서 찾아보게 되었다. 평소에 사용하는 Java 언어를 가지고도 구현 가능하다는 것을 알았다. 우연찾게 찾은 내용은 JavaScript 를 사용해서 구현 가능하다는 것이었다. 해당 내용에 대해서 더 많은 정보를 찾기 위해서 들린 도서관에서, 파이썬으로 크롤링하는 것을 설명해주는 책을 찾았다.


이전부터 파이썬이 데이터 수집하는 부분에서는 많이 쓰인다고 들었는데, 평소에 사용하지 않는 프로그래밍 언어라 쉽게 접해볼 수가 없었다. 하지만 목적이 분명하게 생기니, 한번 해볼까 하는 생각이 들었다.


그래서 시작했다. 지하철로 출퇴근하는 30분동안, 도서관에서 빌린책을 읽었다. 프로그래밍 관련 책들이 갖는 뻔한 레퍼토리처럼, 처음에는 해당 언어의 문법이 가득했다. 하지만, 문법이 다른 언어들과 다른 부분이 전혀 없었다. 전에 objective-c를 공부하면서, ios개발을 잠시 했을때는 책을 이해하는 것도 많이 생소했었다. 그런데 이번 책은 술술 읽혀나갔다.


그리고 목적은 크롤링이기 때문에, 기본 문법들은 쉽게 지나갔다. 실제 코딩을 해보는 시간은 없었지만, 내용을 이해하면서 책 한권을 일주일도 안되서 끝냈다. 이제 실제 프로그래밍을 해보면서, 더 많은 것을 알아갈 수 있지 않을까 싶다.


파이썬으로 크롤링에 도전해보자.