파이썬 기본 내장 라이브러리 Tkinter  기반으로 만든 UI 라이브러리 입니다. 

Tkinter 비해 고급 스럽고 요즘 트랜드에 맞는 UI 입니다 추천

라이브러리 설치는 pip install customtkinter
2023/02/01 15:29 2023/02/01 15:29
PHP 에서 DB 에 LIST 형식의 STRING 문자열을 담아 놓았다 이를 PYTHON 에서 TYPE 만 변경 하는 함수가 있다. PHP & Perl & JavaScript 에서 쓰던 함수가 .... 편하다 PYTHON 

text01 = ['동', '해', '물', '과']
text01 = eval(text01)
print(type(text01)

<class 'list'> 형식으로 변경 된걸 확인할수 있다.

매개변수로 받은 expression을 파이썬이 실행시켜주는 함수라고 생각하자. // eval () 빌트인 함수 문제는 입력값으로 시스템 공격을 가할 수 있는 취약점이 있다.  예를들어 "session.update(authenticated=True)" 문자열을 데이터로 공급하면 session 디렉터리를 업데이트하여 인증 키를 True로 변경할수 있다.
이문제로 ast 모듈이 나왔다. ast 모듈에 literal_eval() 함수를 사용하면 단순 표현식만 변환 하므로 더 안전하다.

import ast
text01 = ['동', '해', '물', '과']
text01 = ast.literal_eval(text01)
print(text01)
print(type(text01))

<class 'list'> 형식으로 변경 된걸 확인할수 있다.

2022/11/30 17:46 2022/11/30 17:46
Pycharm 너무 좋다 편하다 한참 코딩을 하다보면 자동 줄바꿈 기능이 켜저 있어 불편하다 . 

설정 => 에디터 => 코드스타일  들어가서  [다음에서 하드 랩] 부분이 기본 120으로 되어 있다 500 으로 변경 하자   해결된다.

이건 코딩 스타일이 달라서 .. 나만 그런건지 모르지만.. 
사용자 삽입 이미지
2022/11/30 15:47 2022/11/30 15:47
PyCharm, WebStorm, RubyMine, PhpStorm , ALL

Jetbrains 제품 모두가 그렇다. 단축키를 VSCODE 로 변경 하면 다른 단축키는 정상 적으로 변경 되는데 실행취소 이후 다시 돌아 가는 상황에서 Ctrl + y 단축키카 현재 줄 삭제에 매핑 되어 있다. Jetbrains 에서 지원하는 단축키는 CTRL + Shift + Z 키로 지원한다.

답답하네 .....................................
사용자 삽입 이미지

파일 / 설정 / 키맵 을 클릭하고 수정 할수 있다 키보드 아이콘 을 클릭하고 기존 ( CTRL Shift Z ) 키를 누르면 변경 할수 있다.
2022/11/07 14:37 2022/11/07 14:37
pip install opencv-python==4.5.3.56

을 설치 하던 4.5 상위 버전으로 설치 하면 정상 작동한다. 반나절 삽질을 했네

버전 호환성 답없다.
2022/07/27 11:08 2022/07/27 11:08
pyautogui 에서 option을 사용하면 작동을 안한다.  오류도 없다 그냥 작동만 안하다. 

확인해 보니 opencv-python 를 설치 해야 정상 작동 한다.

별도 opencv-python 는 임포트 하지 않아도 작동 한다 
find_img = pyautogui.locateOnScreen('ttt.png', confidence=0.9)
이런 옵션이 잘 작동 한다. 



2022/07/25 14:49 2022/07/25 14:49
이번에 시놀로지 7.0 베타 업데이트 하였더니 파이썬 이 작동을 안하네요

시놀로지 DSM 7.0-41882 

처음부터 다시 설치 하였습니다. 정상 처리 됨 내용 정리 합니다.

SSH 접속후 sudo -i 명령 root 로그인 합니다.

PIP 설치 프로그램을 다운 받습니다.


wget https://bootstrap.pypa.io/get-pip.py


다음으로 PIP 설치를 합니다.

python3 get-pip.py

이상 requests 패키지를 설치할 경우

python3 -m pip install requests

형식으로 설치하면 잘 작동합니다.

python3 -m pip install PyMySQL

MYSQL 관련해서 오류가 나서 확인했더니 이미 포함이 되어 있네요

https://pypi.org/project/PyMySQL/  링크 참고 바랍니다.

2021/06/03 11:23 2021/06/03 11:23
파이썬 pyinstaller exe 배포경우 chromedriver 이 함게 배포해야 하는 번거로움이 생기곤 합니다.

이럴경우 exe 파일에 chromedriver.exe 파일을 함께 포함시킬수 있습니다.


import selenium.webdriver as webdriver
import sys
import os.path
if getattr(sys, 'frozen', False):
chromedriver_path = os.path.join(sys._MEIPASS, "chromedriver.exe")
driver = webdriver.Chrome(chromedriver_path)
else:
driver = webdriver.Chrome('chromedriver')


pyinstaller --add-binary "chromedriver.exe";"." 파일명.py

형식으로 pyinstaller 실행시켜 주십시오.

2021/01/26 18:43 2021/01/26 18:43
send_keys()함수를 이용하여 키보드의 키를 PC에 전달 할 수 있습니다.

Keys.ENTER
Keys.ARROW_DOWN
Keys.ARROW_LEFT
Keys.ARROW_RIGHT
Keys.ARROW_UP
Keys.BACK_SPACE
Keys.CONTROL
Keys.ALT
Keys.DELETE
Keys.TAB
Keys.SPACE
Keys.SHIFT
Keys.EQUALS
Keys.ESCAPE
Keys.HOME
Keys.INSERT
Keys.PAGE_UP
Keys.PAGE_DOWN
Keys.F1
Keys.F2
Keys.F3
Keys.F4
Keys.F5
Keys.F6
Keys.F7
Keys.F8
Keys.F9 Keys.F10
Keys.F11
Keys.F12


예를 들어 Enter key를 전달하고 싶다면 send_key(Keys.ENTER)라고 사용하면 된다.
2021/01/18 11:20 2021/01/18 11:20
사용자 삽입 이미지사용자 삽입 이미지



01. Korean Language Pack EAP
파이참 IDE 가 한글로 변경됩니다.

02. .ignore
git이나 Docker등을 이용할때 커밋을 할때 제외되는 파일을 설정할 수 있는 플러그인 이다.

03. autodoc
소스 코드 문서의 유효성을 검사하고 자동 수정합니다. // 설정 => 도구 => autodoc // 를 인스톨합니다.

04. grep console
콘솔 편집기 강조 표시 할 수 있습니다.
05. mypy
이 플러그인은 PyCharm IDE 내에서 Mypy를 사용하여 Python 파일의 실시간 및 주문형 검색을 모두 제공합니다.

06. pylint
PyCharm / IDEA 내에서 Pylint를 사용하여 Python 파일의 실시간 및 주문형 검색을 모두 제공합니다.
일단 설치하면 실시간 검사가 자동으로 작동합니다. 주문형의 경우 현재 열려있는 파일을 확인하는 것에서 전체 프로젝트를 스캔하는 몇 가지 옵션이 있습니다.

07. nyan progress bar
진행률 표시줄을 좀더 멋지게 보여줍니다.

08. key promoter x
마우스로 버튼을 눌렀을 때, 해당하는 키보드 단축키를 알려주며 단축키를 빠르고 쉽게 배울 수 있다.

09. Rainbow Brackets
괄호 기호에 색을 부여해서 가독성을 높여줌.


2021/01/14 13:56 2021/01/14 13:56
python3 -m install sqlalchemy

설치후 계속 오류 발생 

python3 -m install mysql-connector

까지 설치 해야 정상 작동함
2020/09/17 17:22 2020/09/17 17:22
pip uninstall pyinstaller
pip install pyinstaller

지웠다가 설치 하니 해결 되었다. 이런 어처구니 없는...
2020/07/15 00:14 2020/07/15 00:14
2020/06/15 10:11 2020/06/15 10:11
selenium 업데이트 하면서 기존 문법 경고창이 뜨기 시작 했다. 해결 방법

element에 따라 method를 따로 사용하는 것 보다 간결하다.

방법


from selenium.webdriver.common.by import By
driver.find_element(By.XPATH, '//button[text()="Some text"]')
driver.find_element(By.XPATH, '//button')
driver.find_element(By.ID, 'loginForm')
driver.find_element(By.LINK_TEXT, 'Continue')
driver.find_element(By.PARTIAL_LINK_TEXT, 'Conti')
driver.find_element(By.NAME, 'username')
driver.find_element(By.TAG_NAME, 'h1')
driver.find_element(By.CLASS_NAME, 'content')
driver.find_element(By.CSS_SELECTOR, 'p.content')
driver.find_elements(By.ID, 'loginForm')
driver.find_elements(By.CLASS_NAME, 'content')



By 속성
ID = "id"
XPATH = "xpath"
LINK_TEXT = "link text"
PARTIAL_LINK_TEXT = "partial link text"
NAME = "name"
TAG_NAME = "tag name"
CLASS_NAME = "class name"
CSS_SELECTOR = "css selector"
2020/04/23 12:53 2020/04/23 12:53
한시간 넘도록 오류를 뿜어

$ pip uninstall BeautifulSoup4
$ easy_install BeautifulSoup4

그냥 지웠다 설치 하니 해결 된다. 젠장할~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2019/09/18 13:21 2019/09/18 13:21
from requests import get
import time

ip = get('https://youngsam.net/ipadd.php').text

while True:
print(ip)
time.sleep(5)
2019/09/16 11:08 2019/09/16 11:08
EXE 파일 만들기
실행파일을 만들 000.py파일이 있는 폴더로 이동한 후에
pyinstaller.exe 000.py  실행합니다.
파일 하나로 만들려면 -F 옵션을 줍니다.
pyinstaller.exe -F 000.py
만약 console창을 숨기고 싶으면 다음과 같은 --noconsole 옵션을 추가하면 됩니다.
pyinstaller.exe -F --noconsole 000.py
실행파일 아이콘 삽입
pyinstaller.exe -F --noconsole --icon=icon\icon.ico ipadd.py

pyinstaller --onefile --icon=icon\icon.ico ipadd.py
icon 이라는 폴더의 icon.ico 파일입니다. 혹시 target.py 과 동일한 경로에 있을경우 --icon 를 -icon 수정하면 됩니다.
어떤 경우 C:\ 경로 가 아닌경우 액세스 오류가 나는 경우가 있습니다. 이럴경우 C 경로로 이동하여 실행 하면 정상 작동 합니다.
...
2019/07/23 12:59 2019/07/23 12:59

주제: Python 으로 만들 어플을 배포용 실행 파일로 만들자.

 

1. 프로그램 선택 시행 착오.

 

 . 기존에 TkInter 을 사용했을때는..  Py2Exe 를 이용해서 실행 파일을 만들었다.

   근데... 이게 PyQt 를 이용했을때는 어떤때는 잘 되다가 어떤때는 에러가 난다.

  그래서 실행 파일을 만드는 다른 툴을 찿기로 했다.

   Py2Exe , cx_Freeze ...  두개를 구글링 하면서 이것 저것 다 해 보았다. 안된다....

 

2. 프로그램 선택과 테스트결과

 

  . pyInstaller ... 검색중에 PyInstaller 이란 프로그램이 있단디.

   일단.. 다운 받고 설치하고 테스트..... 와우 끝내 준다.... 1개의 파일로 만들고... Win7 winXp

   다 돌아 간다.

 

3. 설치 과정.

 

   A. pywin32 설치.

    . pyinstaller 는 PyWin32 나 pypiwin32 가 설치되어 있어야 한다.

    . 만약에 설치되어 있지 않다면 pip로 pyinstaller 설치하면  pypiwin32 가 자동으로 설치된다.

     .pip 에서 pywin 이 자동설치가 안되는 경우 먼저 다음 사이트에서 pywin32 를 다운 받는다.

     http://sourceforge.net/projects/pywin32/files/pywin32/

     에서 Build 219 를 선택.

     난 os를 Win7 64bit 를 쓰지만 호환성때문에 Python3.4 32Bit 를 쓴다.

     그래서 pywin32-219.win32-py3.4.exe 를 다운로드 해서 설치 했다.(설치은 그냥 된다.)

 

 B. pyinstaller 설치

 

  . 기존에 설치했던 버전은 실행파일이 한글로 된폴더에 있으면 에러가 난다.

  . 그래서 새버전을 설치하기로 했다.

 

   방법1

  . pyinstaller 가 업그레이드 되어서 이제는

   pip install pyinstaller  또는

   pip install -U pyinstaller

   로 설치하면 이상없이 설치된다.

 

   방법2

   . 아래사이트에 접속해서

    http://www.pyinstaller.org/

    PyInstaller 3.0 (zip) 을 다운받아 압축을 푼다.

 

    . 다시  CMD 창을 열어서 pyinstaller 압축을 푼 폴더로 들어간뒤.

       python setup.py install

 

추가 : pyinstaller 3.2 로 업그레이 하려고 했더니   unicode cp949 코덱 관련 오류가 난다

        그래서 아예 개발자 버전  3.3 으로 설치했다.

       PyInstaller-3.3.dev0+483c819 future-0.16.0

       설치 방법은 아래/

pip install https://github.com/pyinstaller/pyinstaller/archive/develop.zip

 

 A. 시행착오

 .  pip install -U pyinstaller 요걸로는 잘 안된다.

    중간에 에러가 난다.( PyWin32 가 설치 안되어서 일수도)

 

  .  http://www.pyinstaller.org 에서 자신의 파이썬 버전과 맞는 것을 다운 받는다.

    내 경우 Python3.4 이므로 하단의 Py3.zip 파일을 다운 받아 압축을 풀었다.

 

   .CMD 창을 열어서 pyinstaller 압축을 푼 폴더로 들어간뒤.

     python setup.py install

 ... 헉.... 에러가 난다... console 창의 에러 메세지를 보니... PyWin32 가 설치 되어 있어야한단다.

 

    PyInstaller 를 설치 하기 위해서는 PyWin2가 받드시 설치 되어 있어야 한다.

    ( 아마 , Py2exe 나 cx_Freeze 가 에러난 이유도 이것 PyInw32가 설치 안되어서 인듯.)

 

 B. 설치 성공

 

    . 다시  CMD 창을 열어서 pyinstaller 압축을 푼 폴더로 들어간뒤.

       python setup.py install

     와 에러 없이 잘 설치 된다. 굿......

     다 설치하고 나서야 PyInstaller 설명서 를 찿았다.

 

        http://pythonhosted.org/PyInstaller/#installing-using-pip

 

 

4. 실행 파일 만들기.

   cmd 창을 열어서 내가 만든 소스가 있는 폴더로 이동.

   다음과 같이 입력.

 

pyinstaller --onefile --noconsole --icon=아이콘파일이름.ico 소스파일(내파일이름)

 

내경우 배치파일을 만들었다 (make_exe.bat 내용은 별거 없다 아랫줄. )

 

pyinstaller --noconsole --icon="main.ico" "SvrCheckPs.py"

 

위의 명령처럼 실행하면 소스가 있는 폴더 아래이 build 와 dist 폴더가 생성된다.

 

dist 폴더안에 파일을 배포하면 된다.

 

5. Pyinstaller 옵션.

 

 --vsrsion :현재 설치된 pyinstaller 버젼.

--onefile :한개의 파일로 만듬. 초기로딩 여러개의 파일일때보다 약간 느림.

   1개의 파일로 만들경우 win7/xp는 실행되나

   winows 8.1/10 은 압축을 풀지못한다는 에러 메세지 나오며 실행안됨.

--noconsole : 윈 gui 어플이므로  console 창을 열지 않는다.

--icon=아이콘파일이름:  실행파일의 아이콘이름.

2017/07/05 10:01 2017/07/05 10:01