quoting: quotechar로 둘러쌀 레벨 (QUOTE_ALL / QUOTE_MINIMAL)
파이썬에서의 CSV
유동 인구 데이터로부터 성남시 데이터만 수집
import csv
seoung_nam_data = []
header = []
rownum = 0
with open("korea_floating_population_data.csv","r", encoding="cp949") as p_file:
csv_data = csv.reader(p_file) # csv 객체를 이용해서 csv_data 읽기
for row in csv_data: # 읽어온 데이터를 한 줄씩 처리
if rownum == 0:
header = row # 첫 번째 줄은 컬럼명이므로 header로 따로 저장
location = row[7] # “행정구역” 필드 데이터 추출
if location.find(u"성남시") != -1:
seoung_nam_data.append(row) # ”행정구역” 데이터에 성남시가 들어가 있으면 seoung_nam_data List에 추가
rownum +=1
with open("seoung_nam_floating_population_data.csv","w", encoding="utf8") as s_p_file:
writer = csv.writer(s_p_file, delimiter='\\t', quotechar="'", quoting=csv.QUOTE_ALL)
writer.writerow(header) # 제목 필드를 파일에 쓰기
for row in seoung_nam_data:
writer.writerow(row) # seoung_nam_data에 있는 정보를 파일에 쓰기
02 Web, html
02-1 Web
Web
World Wide Web (WWW)
인터넷
데이터 송수신을 위한 HTTP 프로토콜 사용
데이터 표시를 위한 HTML 형식 사용
Web의 동작 방식
① 사용자가 웹 브라우저의 검색창에 특정 사이트의 주소를 입력한다.
② 웹 브라우저가 DNS에게 특정 사이트의 (도메인)주소를 요청한다.
③ DNS가 웹 브라우저에게 사이트의 IP주소를 응답한다.
④ 웹 브라우저가 웹 서버에게 IP 주소를 이용하여 html 문서를 요청한다.
⑤ 웹 서버는 바로 웹 페이지를 공급하지 못하고, 웹 애플리케이션 서버와 데이터 베이스에서 웹 페이지 작업을 처리한다.
⑥ 작업 처리 결과를 웹 서버로 보낸다.
⑦ 웹 서버는 웹 브라우저에게 html 문서 결과를 응답한다.
⑧ 웹 브라우저는 화면에 웹 페이지를 출력한다 (렌더링).
→ 웹 페이지의 html 소스파일은 컴퓨터에 다운로드된 후 웹 브라우저가 해석하여 출력하는 것 !
# 모듈 호출
from bs4 import BeautifulSoup
# xml 파일 string으로 읽어오기
with open("books.xml", "r", encoding="utf8") as books_file:
books_xml = books_file.read()
# 객체 생성
soup = BeautifulSoup(books_xml, "lxml") # lxml Parser를 사용해서 데이터 분석
# author가 들어간 모든 element 추출
for book_info in soup.find_all("author"): # find_all: 패턴에 해당하는 문자 모두 반환
print (book_info)
print (book_info.get_text()) # get_text: 반환된 패턴의 값 반환
04 JSON
JSON
JavaScript Object Notation
JavaScript의 데이터 객체 표현 방식
간결성으로 기계와 인간이 모두 이해하기 편하다는 장점을 가지기 때문에 XML의 대체제로 많이 활용되고 있음
댓글