2024/02/15(구) # 주석 제거 def jsonLoad(self, json_string: str | io.TextIOWrapper): if not isinstance(json_string, str): json_string = json_string.read() # // 형식의 한 줄 주석 제거 json_string = re.sub(r"\/\/.*", "", json_string) # /* */ 형식의 범위 주석 제거 json_string = re.sub(r"\/\*(.|\n)*?\*\/", "", json_string) return json.loads(json_string) 저는 클래스화 해서 사용하고 있기 때문에 self 제거하시고 사용하시면 됩니다. //, /**/ 부분 제거 합니다 2024/0..
이전 글을 활용해서 https://all-share-source-code.tistory.com/87 날짜 비교 함수 까지 만들어 보았습니다. python날짜 변환 통합 함수 문자열 날짜 datetime 변환 가능한 함수 이며, 추가로 변환 기능까지 넣어 보았습니다. from datetime import datetime # 날짜 변환 함수(문자열 특정 포맷 날짜로 변환) def trans_date(date: (datetime | str), toFormat: all-share-source-code.tistory.com from datetime import datetime # 날짜 변환 함수(문자열 특정 포맷 날짜로 변환) def trans_date(date: (datetime | str), toFormat:..
문자열 날짜 datetime 변환 가능한 함수 이며, 추가로 transFormat에 따라 변환 가능 만들어 보았습니다. from datetime import datetime # 날짜 변환 함수(문자열 특정 포맷 날짜로 변환) def trans_date(date: (datetime | str), toFormat: str = "%Y-%m-%d", transFormat: (str | bool) = "%Y-%m-%d", exception: list = []) -> (datetime | str | dict): r''' date : 날짜입력 (datetime, 문자열 형태로 입력) toFormat : str타입 -> 문자열의 날짜형식에 맞게 입력 datetime타입 -> 원하는 문자열날짜 형태로 출력할 형식으로 입..
준비물 VC_redist.x64.exe : 지원되는 최신 Visual C++ 재배포 가능 패키지 다운로드 | Microsoft Learn (위 링크의 x64 비트 다운로드 링크 : https://aka.ms/vs/17/release/vc_redist.x64.exe) python : Download Python | Python.org 해당 버전에 맞는 프로그램 모두 설치 합니다. Qt Designer 설치 1. 관리자 권한으로 CMD를 실행 시킵니다. 2. 터미널 창에 아래 명령어를 입력 해줍니다. pip install PySide6 3. '환경 변수'를 열어서 해당 파이썬 설치 위치를 확인해 주세요(아래 이미지 참조) 환경변수에 없을 경우 또는 pip명령어가 먹히지 않을 경우 '더보기' 참조 더보기 검색..
해당 기능은 입력한 시간초 까지 대기중에 'ENTER'키가 들어오면 종료하는 함수를 제작해 봤습니다. 설치 pip install keyboard 코드 from threading import Timer import time import keyboard # 대기시간(출력기능 포함) def waittingTimer(waitTime: int, msg: str = None, showPrintUnit=10): def message(i, message, msg=msg): if '완료' in message: print(f'\t[{msg} : {i}초에 {message}]') else: print(f'\t[{msg} : {i}초 이상 {message}]') print(f'{waitTime}초 이전에 종료하면 "ENTER..
윈도우, 리눅스 모두 사용 가능합니다. (저는 라즈베리파이에 사용했습니다.) 첫번째 방법(shutil.copytree) 다들 이방법은 아실꺼라고 믿습니다. 검색하면 많이 나오는 방식입니다.. import shutil if __name__ == '__main__': shutil.copytree( '/home/pi/LOG', '/media/pi/USB/LOG', ) shutil.copytree('복사 대상 위치', '붙여넣기할 대상 위치') shutil.copytree 에러 날시 하지만 '붙여넣기할 대상 위치'에 같은 폴더가 존재할 경우 에러가 납니다. 에러 내용 : FileExistsError: [Errno 17] File exists: '~ 붙여넣기 경로... ~' shutil.copytree에서 오류 ..
뭐라고 설명하기 어렵네여;;(제목 짓기 어려웠습니다.ㅎ;;) 일단 아래 결과물로 보시면 바로 이해 가실 겁니다. 결과물 위와 같이 내용의 개수를 세서 자동적으로 구분선을 만들어 깔끔하게 출력하는 함수를 만들어 봤습니다. 한글, 영어 특수문자 등 자릿수 확인합니다. 코드 보시면 쉽게 이해 가실 겁니다. 소스코드 2022/09/17 코드 더보기 import math # 문자열 개수 세기(영어 제외한 한글, 다른 나라언어 : +2 나머지 : +1) def stringCountLine(string: str): count = 0 for character in string: # print(count, character, character.isalpha()) # 영어 판단 if 'a' realContentCount:..
일단 기본적으로 Qt Designer설치하시고 실행해 줍니다. (Qt Designer설치 방법은 나중에 블로그 쓸 예정) (Qt Designer 설치 방법 아래 링크 참조) https://all-share-source-code.tistory.com/78 가장 쉬운 Qt Designer 설치 방법 준비물 VC_redist.x64.exe : 지원되는 최신 Visual C++ 재배포 가능 패키지 다운로드 | Microsoft Learn x64 비트 : https://aka.ms/vs/17/release/vc_redist.x64.exe python : Download Python | Python.org 해당 버전에 맞는 프로그램 all-share-source-code.tistory.com 파일 생성 그리고 만약..
vscode에서 python 함수에 타입(Hints) 지정 시 색 이상하게 변하는 증상을 볼 수 있습니다.(이미지 참조) 이에 대한 해결 방법을 알려드리도록 하겠습니다. 이 방법은 임시적인 방법이며, 공식적으로 알려지지 않은 방법입니다. 해결방법 1. def 함수명() -> str: 바로 아래 의미 없는 함수를 만들면 됩니다.(이미지 참조) # 웹 find element by 2가지 형태 # @WebElement def find_Element_By(self,PATHNAME,by:By=By.XPATH,formatting:list=[False,'Basic Frame']) -> WebElement:# -> webdriver.Remote: def _(): pass if not formatting[0]: # 브라..
아래 이미지와 같이 리스트 타입 안에 타입을 지정할 때 'Subscript for class "list" will generate runtime exception' 오류에 대한 해결 방법입니다. 해결 방법 해결 방법은 아주 간단합니다. 맨 첫 줄에 from __future__ import annotations 한 줄 추가해주시면 되겠습니다. 확인 오류가 사라진 것을 확인할 수 있습니다 출처 : https://stackoverflow.com/questions/69426453/declaration-of-list-of-type-python
이방법은 굉장히 위험한 방법이며,파이썬을 재설치 해야될수도 있습니다.주의해서 사용해주시기 바랍니다. 설명 아래 이미지와같이 PyQt5에서 제공하는 cliced 다음 connect 부분같이, 있는데도 불구하고 인식하지 못할때 사용하는 임시적인 방법 입니다. 해결방법 일단 print를 찍어봐서 어느 클래스에서 사용되는지 알아야 됩니다. 위 이미지와 같이 print를 찍어보면 PyQt5.QtCore.pyqtBoundSignal에서 있는것을 볼수 있습니다. 그다음 clicked에 참조된 위치에 들어갑니다. (아래이미지는 vscode에서 ctrl키 누른 상태에서 마우스를 올리면 참조된 위치로 이동합니다.) 그리고 참조된 위치로 이동해 보시면 이런식으로 함수또는 변수들이 쭉 나열된것을 볼수 있습니다. (노란색 부분..
win10에서만 나오는 오류 인거 같습니다. 오류 내용 ERROR: Exception: Traceback (most recent call last): File "C:\Users\USER\AppData\Roaming\Python\Python38\site-packages\pip\_internal\cli\base_command.py", line 164, in exc_logging_wrapper status = run_func(*args) File "C:\Users\USER\AppData\Roaming\Python\Python38\site-packages\pip\_internal\cli\req_command.py", line 205, in wrapper return func(self, options, args)..
다운로드 https://github.com/h12sw06/pyqt5/blob/main/test.py GitHub - h12sw06/pyqt5 Contribute to h12sw06/pyqt5 development by creating an account on GitHub. github.com 코드 import sys from PyQt5 import QtCore from PyQt5.QtWidgets import * class MyApp(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): ######UI 세팅######## self.tableWidget = QTableWidget() self.tableWidget.s..
one directory로 할시 정상작동하지만 one file로 할시 *.ui 파일이 계속 없다고 합니다... (아마 one file하면 exe파일안에 패키지화 되어 들어가기 때문인거 같습니다.. 그래서 _MEIPASS를 해줘야 되는거 같습니다..) 해결방법은 간단합니다. 해결방법 def resource_path(relative_path): """ Get absolute path to resource, works for dev and for PyInstaller """ try: # PyInstaller creates a temp folder and stores path in _MEIPASS base_path = getattr(sys, '_MEIPASS', os.path.dirname(os.path.abs..
auto py to exe에서 크롤링을 실행 파일로 만들고 실행을 하면 계속 getAttribute.js 파일이 없다고 합니다 이에 대한 해결 방법입니다. 해결방법 Additional Files Additional Files -> Add Folder 클릭 이런 창이 나오는데 여기서 해당 파이썬에 Lib -> site-packages -> selenium 클릭하고 폴더 선택합니다. Advanced 그리고 Advanced -> --aad-binary에 +버튼 클릭 해당 chromedriver.exe 있는 거 추가(이건 자신이 하고 있는 *driver.exe 추가하시면 됩니다.) 하고 뒤에는 아마 자동으로 '.' 으로 입력이 되는데 그분은 모두 지우고 코드에서 연결한 위치를 입력하시면 됩니다. 예를 들어 코드..
2021/11/24 문제 될시 삭제 예정입니다. 문제 없을시 크롤링 방법 올려보도록 하겠습니다. 2022/02/04 (아직까지 문제제기 되지 않기 때문에 수정합니다.) 댓글 요청시 크롤링 방법 올려보도록 하겠습니다. 2022/07/18 전국 온누리 사용처 새로 업뎃 했습니다. 2022/12/25 전국 온누리 사용처 새로 업뎃 했습니다. 2023/08/22 전국 온누리 사용처 새로 업뎃 했습니다. 전국 온누리상품권 엑셀 다운로드 크롤링한 결과물은 엑셀로 뽑아 봤습니다. 필요하신분 첨부파일 다운받으시면 되겠습니다. 출처 : https://www.sbiz.or.kr/sijangtong/nation/onnuri/onnuriMktList.do 영상 영상은 크롤링중인 화면을 녹화 했습니다. https://youtu..