Python 11

__init__() got an unexpected keyword argument 'executable_path'

발생 위치: driver = common.chromeWebdriver(path)원인: common.chromeWebdriver(혹은 Selenium WebDriver)의 초기화 메서드에 executable_path라는 인수가 전달되고 있습니다. Selenium의 webdriver.Chrome() 초기화 방식은 Selenium 4 이후 executable_path 대신 service 객체를 사용하도록 변경되었습니다.해결방안 Selenium 초기화 수정:최신 Selenium 사용 시 webdriver.Chrome() 초기화에는 Service 객체를 사용해야 합니다.따라서 executable_path를 Service 객체로 대체합니다. from selenium import webdriverfrom seleni..

정보/py 2025.02.14

UnboundLocalError: local variable 'driver' referenced before assignment

UnboundLocalError: local variable 'driver' referenced before assignment발생 위치: driver.quit()(finally 블록 내)원인: 만약 common.chromeWebdriver(path) 호출이 실패하면 driver 객체가 생성되지 않고 finally 블록에서 driver.quit()가 호출됩니다. 이로 인해 driver 변수가 정의되지 않아 UnboundLocalError가 발생합니다. 해결방안 예외 처리 개선 및 finally 블록 수정:driver 객체가 초기화되지 않았을 경우를 대비하여 finally 블록에서 driver 객체가 존재하는지 확인한 후 .quit()을 호출해야 합니다. try: except Exception as e..

정보/py 2025.02.14

Python Web Framework 2024

2024년 현재, 파이썬은 다양한 웹 프레임워크를 통해 웹 개발 분야에서 두각을 나타내고 있습니다. 이러한 프레임워크들은 각기 고유한 특징과 장단점을 지니며, 프로젝트의 요구사항에 따라 적합한 선택이 필요합니다. 아래는 2024년 기준으로 주목받는 파이썬 웹 프레임워크 10가지를 소개하고, 각 프레임워크의 특징과 장단점을 살펴보겠습니다. 1. DjangoDjango는 풀스택 프레임워크로, 웹 개발에 필요한 대부분의 기능을 기본적으로 제공합니다. ORM(Object-Relational Mapping), 인증 시스템, 관리자 인터페이스 등 다양한 내장 기능을 통해 복잡한 웹 애플리케이션을 신속하게 개발할 수 있습니다. 장점:다양한 내장 기능으로 신속한 개발 가능강력한 보안 기능 제공활발한 커뮤니티와 풍부한 ..

정보/py 2024.12.29

ImportError: failed to find libmagic. Check your installation

Python 프로젝트 실행하면서 나타나는 오류 ImportError: failed to find libmagic.  Check your installation OS환경은 윈도우에서 라이브러리를 설치하고 있는데.위와 같은 메시지로 실행이 안되어 라이브러리 설치 명령어 시전 pip install libmagic 설치는 잘되었으나 실행하면 여전히 동일한 에러 발생 pip install pythonmagic 설치는 잘되었으나 실행하면 이것도 여전히 동일한 에러 발생 다른 라이브러리인 pylibmagic 설치하면 설치자체가 에러 pip install pylibmagic 이건 설치하닥 오류ERROR: Failed to build installable wheels for some pyproject.toml based..

정보/py 2024.10.30

[Django] Install Django on Unbuntu 20.04 LTS

Django is a Python-based free and open-source web framework. 파이썬 기반 웹 프로그램을 돌려보기 위해 Django를 설치해본다. 매뉴얼은 다음 링크 참조해서 그냥 무조건 따라했다.https://www.e2enetworks.com/help/knowledge-base/how-to-install-django-on-ubuntu-18-04-16-04-lts/ How to Install Django on Ubuntu 18.04 & 16.04 LTS | E2E Networks Knowledgebase www.e2enetworks.com 0. 준비작업 윈도우에 설치해도 되지만, 잠시 쓰고 지울수도 있으니 깔끔하게.. 그리고 요즘 추세기도 하니 클라우드에 리눅스 서버를 저..

정보/py 2022.04.15

[파이썬] requests 설치

나는 anaconda와 pycharm으로 python 개발 환경을 구성하였으니 그 전제하에 내용을 기술해 보자. 1. bs4 설치를 위해 anaconda prompt를 실행한다. 2. anaconda prompt에서 라이브러리 설치를 위한 프로젝트를 조회한다 conda env list 3. (필요시) 프로젝트를 변경한다. (conda env list 에서 조회된 프로젝트 명 사용) conda activate [project name] 4. requests 라이브러리 설치 pip install requests

정보/py 2022.04.13

[파이썬] beautifulSoup4(bs4) 설치

나는 anaconda와 pycharm으로 python 개발 환경을 구성하였으니 그 전제하에 내용을 기술해 보자. 1. bs4 설치를 위해 anaconda prompt를 실행한다. 2. anaconda prompt에서 라이브러리 설치를 위한 프로젝트를 조회한다 conda env list 3. (필요시) 프로젝트를 변경한다. (conda env list 에서 조회된 프로젝트 명 사용) conda activate [project name] 4. bs4 라이브러리를 설치한다. pip install beautifulsoup4 이상으로 python에서 bs4 라이브러리를 설치했다.

정보/py 2022.04.13

[파이썬] 주식 자동 매매 시스템 구현 #5 - 종목 정보 가져오기

파이썬을 모르는 내가 파이썬을 활용하여 키움 자동 매매 시스템을 구현하는 과정을 정리하고자 한다. 1인칭 시점으로 이해한걸 정리하는 것으로 혹시나 잘못 이해하고 정리된 부분이 있을 수 있다. 이제 로그인을 했으면 주가를 조회해야 하겠다. 다만 현재는 종목 코드 등 주가 조회를 위한 기본 정보를 알 수 없기에 종목 Master 정보 등을 가져오는 것을 먼저 해 보자. 1. 종목 코드 가져오기 기존 코드에서 종모고 정보 가져오는 부분만 수정하도록 한다. 종목 코드는 GetCodeListByMarket 함수를 사용한다. 기존의 kiwoom.py 파일에 다음 함수를 추가한다. def get_code_list_by_market(self, market_type): code_list = self.dynamicCall..

정보 2022.03.22

[파이썬] 주식 자동 매매 시스템 구현 #4 - 로그인 정보 가져오기

파이썬을 모르는 내가 파이썬을 활용하여 키움 자동 매매 시스템을 구현하는 과정을 정리하고자 한다. 1인칭 시점으로 이해한걸 정리하는 것으로 혹시나 잘못 이해하고 정리된 부분이 있을 수 있다. KOA에서 설명하는 GetLoginInfo 함수는 다음과 같다. [LONG GetLoginInfo()] 로그인 후 사용할 수 있으며 인자값에 대응하는 정보를 얻을 수 있습니다. 인자는 다음값을 사용할 수 있습니다. "ACCOUNT_CNT" : 보유계좌 갯수를 반환합니다. "ACCLIST" 또는 "ACCNO" : 구분자 ';'로 연결된 보유계좌 목록을 반환합니다. "USER_ID" : 사용자 ID를 반환합니다. "USER_NAME" : 사용자 이름을 반환합니다. "GetServerGubun" : 접속서버 구분을 반환합..

정보 2022.03.21

[파이썬] 주식 자동 매매 시스템 구현 #3 - 시스템트레이딩 프로젝트 생성 및 키움증권 로그인

파이썬을 모르는 내가 파이썬을 활용하여 키움 자동 매매 시스템을 구현하는 과정을 정리하고자 한다. 1인칭 시점으로 이해한걸 정리하는 것으로 혹시나 잘못 이해하고 정리된 부분이 있을 수 있다. 1. 신규 프로젝트 생성 PyCharm에서 신규 프로젝트를 생성 후 api 폴더를 생성한다. 2. 통신 모듈 구성 파일 생성 생성된 api 폴더 (package) 에 키움증권과의 통신을 위한 파일 (모듈) kiwoom.py 를 생성한다. 3. 키움 객체 생성 Create Object 앞서 설치 한 Kiwoom API는 Windows Registry에 'KHOPENAPI.KHOpenAPICtrl.1' 으로 등록되어 있다. setControl 함수를 활용하여 객체를 생성한다. Kiwoom.setConrol("KHOPEN..

정보 2022.03.21