import csv
reader =csv.reader f,
delimiter =','. quotechar='"'.
quotating= csv.QUOTE_ALL)
웹(www world wide web)
과거에는 HTTP, 포로토콜로 송수신함
요청 -> 처리 ->응답( HTML, XML 등의 결과로 반환) -> 렌더링( HTML, XML 표시 및 다운로드)
웹은 텍스트(HTML) 덩어리
웹의 정보를 구조적으로 표현하기 위해 사용(트리형태)
tag/ 꺾쇠 사용
웹 브라우저가 TEML 소스파일을 다운로드 및 해석 표시하여 사용자가 화면을 확인할 수 있음
1) str
2) 정규식(regex, regular expression)
3) beautifulsoup
import urllib.request
url= "www.~~.com"
#읽어오길 원하는 url 입력
html= urllib.request.urlopen(url)
# url 링크에 접속
contents= str(html.read())
# 해당 링크의 컨텐츠를 읽는다.
find_result= re.findall(r"([A-Z])",contents)
# 정규식에 일치하는 문자열을 찾아 튜플 형태(tuple)로 반환
<dl class = "blind">
<dt> 무슨 정보 </dt>
<dd> 내용 </dd>
<dd> 내용 </dd>
<dd> 내용 </dd>
</dl>
# html 에서 정보 추출하기
# 1) <dl class ="blind"> ~ </dl> 구조 확인
# 2) 위 구조에서 <dd> ~ </dd> 정보 추출
import urllib.request
impot re
url= "www.~~.com"
#읽어오길 원하는 url 입력
html= urllib.request.urlopen(url)
# url 링크에 접속
contents= str(html.read().decode("ms949"))
# 해당 링크의 컨텐츠를 읽는다.
find_result= re.findall("(\<dl class =\"bline\"\>)(\<\dl\>)",contents)
# finall 안의 정규식은 html의 구조를 보고 작성하기
result_content_1= find_result[0]
# 1번째 패턴 추출
result_content_2= find_result[1]
# 정규식에 일치하는 문자열을 찾아 튜플 형태(tuple)로 반환
# 모듈
from bs4 import BeautifulSoup
# 객체 만들기
soup= BeautifulSoup(xml, "lxml")
#final_all 함수로 tag 검색
soup.find_all("id")
import json
#json 파일읽는 코드 추가
with open("data.json","r", encoding ="utf8") as f:
contents=f.read()
js_data=json.loads(contents)
import json
dict= {'name': 'JS', 'type': 'json'}
with open("js_data.json","w") as f:
json.dump(dic_js,f)