Introduction to Python:Learn the Python Basics

You are now ready to start learning the basics with this introduction to Python. Make sure you have Python installed on your system, or use an online version of Python.

Even if you have no prior programming experience, you should be able to get a good start with this Python introduction. We’ll take it slow, but before you know it, you’ll have a solid base-level knowledge about:

이제 이 Python 소개를 통해 기본 학습을 시작할 준비가 되었습니다. 시스템에 Python이 설치되어 있는지 확인하거나 Python의 온라인 버전을 사용하십시오.

프로그래밍 경험이 없더라도 이 Python 입문서로 좋은 시작을 할 수 있을 것입니다. 우리는 천천히 할 것이지만 당신이 그것을 알기 전에 다음에 대한 확실한 기본 수준 지식을 갖게 될 것입니다.

This introduction to Python will not dive into these subjects’ nitty-gritty details but instead touch the surface and introduce you to the basic concepts.

Further on in the tutorial, we’ll take some deep dives into specific subjects:

If you get stuck, do not hesitate to contact us with any questions you might have. Sometimes writing down the question is enough to answer it yourself, but I’m happy to help where I can. Let’s go!

1. 증상 및 원인

pip를 이용하여 원하는 패키지를 설치하려고 하면, 아래와 같은 에러가 발생할 수 있다. 주로 인트라넷을 사용하는 경우 아래와 같은 문제가 많이 발생한다. 아래와 같은 에러가 발생하는 이유는 각 회사 컴퓨터에는 신뢰할 수 있는 루트 인증 기관을 가지고 있게 되는데, 인증 기관으로 python을 설치하기 위한 도메인을 포함하지 않은 경우에 이런 에러가 발생할 수 있다.

 

2. 간단한 해결 방법

아래와 같은 명령어를 입력하여 문제를 해결할 수 있다.

$ pip install --trusted-host pypi.python.org --trusted-host files.pythonhosted.org --trusted-host pypi.org 설치할패키지이름
or
$ python3 -m pip install --trusted-host pypi.python.org --trusted-host files.pythonhosted.org --trusted-host pypi.org 설치할패키지이름

 

3. 영구적인 해결 방법

 

3.1. 인증된 Host 등록하기

위의 명령어는 pip나 python을 실행할 때마다 입력해야 하기 때문에, 아래와 같은 방법으로 영구적으로 해결할 수 있다.

$ pip install --trusted-host pypi.org --trusted-host files.pythonhosted.org pip setuptools

 

3.2. self.verify = False 설정

SSL 인증서를 확인하지 않으려면 sessions.py 파일에 self.verify=False 를 설정한다.

(파일위치는 각자의 설치 경로를 확인한다.)

파일위치

C:\Users\{사용자명}\AppData\Local\Programs\Python\Python36-32\Lib\site-packages\pip\_vendor\requests\sessions.py

 

해당파일을 열고, 

 

#: SSL Verification default.

self.verify = False  로 변경한다.

 

.

 

 

'Python' 카테고리의 다른 글

Python __main__ 이란  (0) 2021.12.30
Introduction to Python  (0) 2021.12.28
NAVER 자동 로그인  (0) 2021.12.14
Python 자동 로그인  (0) 2021.12.13
Visual Studio Code에 Python 설정하기  (0) 2021.12.12

Python Selenium으로 naver 자동 로그인 시 자동입력방지 프로그램이 작동하여 자동 로그인을 차단한다.

 

[ NAVER 자동로그인 코드]

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.common.by import By
import time 

options = Options()
options.add_experimental_option('excludeSwitches', ['enable-logging'])

def set_chrome_driver():
    chrome_options = webdriver.ChromeOptions()
    driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=chrome_options)
    return driver

 

driver = set_chrome_driver()
driver.maximize_window()

driver.get("https://nid.naver.com/nidlogin.login")

 

## id/pass 입력
naver_id = driver.find_element(By.NAME, "id")
naver_id.send_keys('naver_id')
naver_password = driver.find_element(By.NAME, "pw")
naver_password.send_keys('naver_password')

 

## login 버튼클릭
driver.find_element(By.XPATH, '//*[@id="log.login"]').click()

 

위 코드와 같은 자동 로그인을 시도하면 아래와 같이 자동입력방지 프로그램이 작동한다.

자동입력 방지프로그램이 작동하지 않는 사이트는 위 코드를 활용해 자동 로그인 할 수 있다.

 

[ 설치환경 ]

- Microsoft Windows 10 Pro(10.0.19041 N/A 빌드 19041)

- VSCode (1.57.1)

- Python 3.9.9

- selenium

- chrome browser (버전 96.0.4664.93)

- ChromeDriver 96.0.4664.45

 

1. 브라우저 자동화나 크롤링을 위한 selenium

 

selenium 이란

selenium은 웹사이트 테스트를 위한 도구로 브라우저 동작을 자동화할 수 있다. 셀레니움을 이용하는 웹크롤링 방식은  프로그래밍으로 브라우저 동작을 제어해서 마치 사람이 이용하는 것 같이 웹페이지를 요청하고 응답을 받아올 수 있다

 Selenium은 마우스, 키보드의 동작과 디스플레이에 바로 나타나는 html과의 상호작용할 수 있다.


chromedriver 다운로드

셀레니움을 사용하기 위해서는 크롬드라이버 다운로드가 필요하다. 우선 자신의 크롬 브라우저가 어떤 버전을 사용하는지 확인해야 한 후 크롬 브라우저 버전에 맞는 chromedriver를 다운로드한다. 

(Window version 은 chromedriver_win32.zip 이다)

https://chromedriver.chromium.org/downloads

 

ChromeDriver - WebDriver for Chrome - Downloads

Current Releases If you are using Chrome version 97, please download ChromeDriver 97.0.4692.36 If you are using Chrome version 96, please download ChromeDriver 96.0.4664.45 If you are using Chrome version 95, please download ChromeDriver 95.0.4638.69 For o

chromedriver.chromium.org

 

selenium 설치

VSCode 실행 창에서 하단의 TERMINAL 창에서 pip install selenimu 명령어를 실행한다.

 

2. 자동로그인 source(예시)

from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.common.by import By

def set_chrome_driver():
    chrome_options = webdriver.ChromeOptions()
    driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=chrome_options)
    return driver

driver = set_chrome_driver()

## id/pass 입력
elem = driver.find_element(By.NAME, "userId")
elem.send_keys("userid")
elem = driver.find_element(By.NAME, "password")
elem.send_keys("userpassword")

## login 버튼클릭
driver.find_element(By.XPATH, '//*[@id="loginTab"]/div[1]/div/div[1]/div[1]/div[2]/button').click()
 
 

위 소스에서 자신이 자동로그인 하고 싶은 사이트를 지정하고 ID/패스워드를 변경한다.
 
--> 자신이 자동로그인 하고 싶은 SITE로 변경
 
## id/pass 입력
elem = driver.find_element(By.NAME, "userid")
--> Site의 계정 element 명으로 변경한다.
elem.send_keys("userid")
--> 본인의 ID를 입력한다.
 
elem = driver.find_element(By.NAME, "password")
--> Site의 패스워드 element 명으로 변경한다.
elem.send_keys("userpassword")
--> 본인의 패스워드를 입력한다.

 

 

 

[ 설치환경 ]

- Microsoft Windows 10 Pro(10.0.19041 N/A 빌드 19041)

- VSCode (1.57.1)

- Python 3.9.9

 

VSCode는 Python을 내장하고있지 않으므로 Python을 VSCode에서 사용하려면, Python  설치하고 연동해주어야 한다.

1. Visual Studio Code 설치하기

공식 홈페이지로 접속( code.visualstudio.com) 하여 OS(Window, Linux, macOS)에 맞는 파일을 다운로드 한 후 설치한다.

 

참고) 한글 설정

기본적으로 VSCode는 영문버전으로 되어 있다. 아래와 같이 한글 설정이 가능하다.

1) 왼쪽 하단의 익스텐션 아이콘 클릭 (단축키 : Ctrl + Shift + x)

2) 검색창에 "korean" 입력

3) 목록 중 "korean language pack for visual studio code" 의 우측 "Install" 클릭

4) 설치 완료 후 "Restart Now" 클릭

2. Python 설치하기

Windows를 이용하는 경우

Windows는 기본적으로 Python을 제공하지 않으므로 직접 설치해주어야 한다. 아래와 같은 방법으로 설치할 수 있다.

 

2.1 파일 다운로드 및 설치

파이썬 홈페이지(www.python.org)에 접속하여 설치 프로그램을 다운로드 한 후 설치한다. 

 

2.2 winget을 설치

Windows(Windows 10 및 Windows 11)용 패키지 관리자인 winget으로 파이썬을 설치한다.

이 도구는 Windows 패키지 관리자 서비스에 대한 클라이언트 인터페이스이다.

 

C:\> winget install python
 
2.3 chocolatey 로 설치

Windows용 패키지 관리자인 Chocolatey(약칭: choco)로 파이썬을 설치한다.

C:\> choco install python -y

 

Linux를 이용하는 경우

Linux는 기본적으로 Python이 설치되어 있으나, Python 2.x 대 버전이 설치되어 있을 경우 최신 버전으로 Upgrade한다.

이는 chocolatey를 통해 쉽게 설치할 수 있습니다.

# Ubutu, Debian
$ apt-get install python -y

# Redhat, CentOS
$ yum install python -y

3. Visual Studio Code에 Python 설정하기

Extension 설치

몇 글자만 타이핑 하면 자동으로 명령어를 선택할 수 있게 보여준다던가, 소스코드 작성 중에 어느 부분이 문제가 되는 사전에 문제점을 체크해 준다던지와 같은 기능이 추가되고 Jupyter notebook 지원기능 등 파이썬 코딩을 조금 더 개발자 입장에서 편하게 하기 위한 기능이다.

촤측의 Extensions 메뉴(창 모양)를 클릭하거나, 단축키(Ctrl+Shift+X)를 사용한다. 상단의 검색창에 Python을 입력한 후, 검색된 Extension 중  Python, Python for VSCode, Python Extension Pack을 [install] 버튼을 클릭하여 설치한다.

 

4. 작업 환경 생성

Python project를 저장할 새로운 폴더를 생성해준다.

예시) C:\Python\python_project  

[File] - [Open Folder] 메뉴를 클릭한 후 새로 만든 폴더를 선택해준다.

 

5. 코드 작성

[File] - [New File] 메뉴을 클릭하여 새로운 파일을 생성한 후 다음과 같이 코드를 입력한다.

print("Hello, World!")

[File]-[Save] 메뉴를 선택하거나 단축키(Ctrl + S)로 파일을 hello.py라는 이름의 파일로 저장한다.

 

6. 코드 실행

[Run] - [Run Without Debugging] 메뉴을 클릭하거나 단축키(Ctrl + F5)로 코드를 수행한다.

하단의 TERMINAL 탭에 결과 값인 Hello, World 문자열이 출력된다.

 

 

'Python' 카테고리의 다른 글

Python __main__ 이란  (0) 2021.12.30
Introduction to Python  (0) 2021.12.28
pip package install SSL 인증서 Error 해결 (error: [SSL: CERTIFICATE_VERIFY_FAILED])  (0) 2021.12.17
NAVER 자동 로그인  (0) 2021.12.14
Python 자동 로그인  (0) 2021.12.13

+ Recent posts