파이썬 XML 데이터 다루기에서
619
작성한 질문수 2
깃허브연동 때도 질문을 했었는데(그건 일단 답변 주실때까지 기다리고)
기상청에서 xml데이터를 다운받았는데 아톰에서 urlretrieve한 xml데이터를 열때 한글이 깨집니다... 그래서 코딩할때도 똑같이 했는데 파싱이 안됩니다.. 어떡해야할까요..
'''import sys #한글 인코딩 모듈
import io # 한글 인코딩 모듈2
import urllib.request as req
from bs4 import BeautifulSoup
import os.path
sys.stdout = io.TextIOWrapper(sys.stdout.detach(), encoding = 'utf-8')# 한글 인코딩
sys.stderr = io.TextIOWrapper(sys.stderr.detach(), encoding = 'utf-8')# 한글 인코딩2
다운로드 url
url ='http://www.weather.go.kr/weather/lifenindustry/sevice_rss.jsp'
savename = "c:/Users/For Programming/section4/forcast.xml"
if not os.path.exists(savename):
req.urlretrieve(url, savename)
xml = open(savename,'r', encoding="utf-8").read()
soup = BeautifulSoup(xml,'html.parser')
지역확인
for location in soup.find_all("location"): # XML 파싱할때 find메소드가 효율적이다.
loc = location.find("city").string
print(loc)
'''
출력결과
Traceback (most recent call last):
File "C:UsersFor Programmingsection4826(2).py", line 17, in
xml = open(savename,'r', encoding="utf-8").read()
File "C:UsersFor ProgrammingAnaconda3envssection3libcodecs.py", line 321, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc0 in position 126: invalid start byte
[Finished in 0.355s]
이렇게 뜹니다.. 어떡해야할까요?
답변 2
0
인코딩 상태를 쉽게 알아보는 방법은 notepad++ 라는 프로그램(텍스트 에디터)에서 파일을 열고 인코딩 정보를 확인하시면 됩니다. 참고하세요. 다른 에디터들도 가능한데, 본인이 익숙한걸로 확인하셔도 됩니다.
저같은 경우는, 강좌 따라서 저장한 xml 파일은 utf-8 입니다.
0
안녕하세요.
파이썬3에서 인코딩 오류가 발생하는 경우는 운영체제에 따라서 살펴봐야 할 내용이 많습니다.
encoding="utf-8" 부분을 지워보시고 작업을 수행 해 보시고
또는 해당 xml파일을 직접 다운로드 받으셔서 캐릭터셋이 utf-8인지 파일은 깨지지 않았는지 확인도 해보세요.
우선 소스코드 상에서는 특별한 문제는 없어보입니다.
다운받은 파일 또는 운영체제를 살펴보셔야 될 것같습니다.
해당 에러에 대해서 잘 나와있는 stackoverflow 내용입니다.
참고하시면 될 것 같습니다.
현재 예제에서 error 발생
0
367
3
유튜브 동영상 다운로드
0
1448
2
Atom 에디터 관련
0
337
1
위시켓 폼데이터
0
274
1
스케줄러 사용 관련 질문 드립니다
0
627
1
selenium 에러
0
428
1
Progress bar 쓰레드 관련
0
489
1
Install Package 관련 문의
0
328
1
tkinter 샘플 코드 실행 오류 건
0
1267
1
4-7-6 네이버 & 카카오 주식 정보 가져오기
0
381
1
네이버자동로그인_by_selenium
0
876
1
위시캣 로그인 처리 및 크롤링 질문
0
345
1
2-8-1 네이버이미지 크롤링 질문
1
604
3
li:nth-of-type 질문
0
350
2
에러가 뜨는데 잘 모르겠어요ㅠ
0
401
2
Install Packages 항목이 안보이는 이유가 뭘까요?
0
401
2
환경변수 Path 설정 방법
0
631
1
웹 브라우저 없는 스크랩핑 및 파싱 실습(1) - 인프런
0
333
1
웹 브라우저 없는 스크랩핑 및 파싱 실습(1) -git주소
0
477
3
download2-8-1. py질문
0
203
1
ip 차단 당하는 거 같은데 아무리 랜덤주고, sleep 줘도 안 되는데 다른 방법 더 있을까요??
0
645
1
인프런 환경이 바뀌어서 제나름대로 하는데
0
196
1
다시올려주신 예제파일로하는데
0
190
1
아직도 에러가뜨나보네요?
0
584
1





