패키지 (package)
완성된 소프트웨어나 다른 소프트웨어를 완성하기 위해
필요한 부품이 되는 소프트웨어
패키지매니저 (package manager)
패키지를 쉽게 사용할 수 있게 도와주는 소프트웨어
*PIP : 파이썬의 패키지 매니저
PyPI (Python Package Index)
파이썬의 패키지 매니저가 사용할 수 있는 패키지에 대한 목록이 저장된 곳
1) 파이썬의 패키지 중 html-sanitizer 라는 패키지를 설치해보자.
(터미널에서) pip3 install html-sanitizer
2) PyPI 에서 html-sanitizer 검색해서 Usage 로 사용법을 확인하자.
>>> from html_sanitizer import Sanitizer >>> sanitizer = Sanitizer() >>> sanitizer.sanitize()
3) 검색된 html-sanitizer 사용법 코드를 index.py 에 적용시켜보자.
(사용자가 데이터를 입력하는 곳에는 모두 적용)
import cgi, os, view, html_sanatizer
sanitizer = html_sanitizer.Sanitizer()
form = cgi.FieldStorage()
if 'id' in form:
pageId = form["id"].value
description = open('data/'+pageId, 'r').read()
title = sanitizer.sanitize(title)
description = sanitizer.sanitize(description)
.
.
.
4) html-sanitizer 사용법 코드를 view.py 에도 적용시켜보자.
import os, html_sanitizer
def getList():
sanitizer = html_sanitizer.Sanitizer()
files = os.listdir('data')
listStr = " "
for item in files:
item = sanitizer.sanitize(item)
listStr += '<li><a href="index.py?id={name}">{name}</a></li>'.format(name=item)
return listStr
이제 사용자가 입력하는 모든 데이터들은
html-sanitizer 를 통해 소독 과정을 거친 후 저장된다.
[출처] 생활코딩 WEB2 - Python
https://opentutorials.org/module/3357