[Python] pip 명령어

PIP는 Pythond의 Package 관리자이다. 개발언어인 파이선에서 패키지는 라이브러리 개념과 동일하다. PIP를 통한 패키지를 관리하기 위한 명령을 정리한다.

# pip 업데이트 (Linux)

pip install pip --upgrade

# pip 업데이트 (Windows)

python -m pip install --upgrade pip

# Python 설치(opencv-contrib-python 패키지)

pip install opencv-contrib-python

# Update 해야할 패키지 목록

pip list -o

# numpy 패키지 설치

pip install numpy

# numpy 패키지 업데이트

pip install numpy --upgrade

# numpy 패키지 제거

pip uninstall numpy

# 특정 버전의 (또는 contrib 버전) opencv 패키지 설치(참조 url: https://pypi.org/project/opencv-contrib-python/3.4.5.20/)

pip install opencv-contrib-python==3.4.5.20

웹 크롤링

Python을 이용해 웹 페이지에서 원하는 정보를 추출해 내는 코드다. 아래는 네이버 뉴스의 오늘 날짜에 대한 토픽 제목과 해당 url을 뽑아내는 코드 예제.

import requests
from bs4 import BeautifulSoup

url = 'https://news.naver.com/main/ranking/popularDay.nhn?rankingType=popular_day&date=20191022'

r = requests.get(url)
html = r.content
soup = BeautifulSoup(html, 'html.parser')
titles_html = soup.select('.ranking_section > ol > li > dl > dt > a')

for i in range(len(titles_html)):
    print('#' + str(i+1), titles_html[i].text)
    print(titles_html[i]['href'])
    print()

결과는 대략 아래와 같다.

#1 러 군용기 6대의 무력 시위···한반도 3면 다 헤집고 다녔…
/main/ranking/read.nhn?mid=etc&sid1=111&rankingType=popular_day&oid=025&aid=0002946814&date=20191022&type=1&rankingSectionId=100&rankingSeq=1

#2 시정연설 마친 文, 이철희에 건넨 말 "섭섭한가 시원한가"
/main/ranking/read.nhn?mid=etc&sid1=111&rankingType=popular_day&oid=025&aid=0002946806&date=20191022&type=1&rankingSectionId=100&rankingSeq=2

.
.

#5 文대통령 발언에 뒤집어진 ‘정시 확대’…“조국 사태가 교육…
/main/ranking/read.nhn?mid=etc&sid1=111&rankingType=popular_day&oid=020&aid=0003248596&date=20191022&type=1&rankingSectionId=100&rankingSeq=5