일부 웹 사이트의 세그먼트를 가져 오려고합니다. 스크립트는 작동하지만 á, é, í, ó, ú 같은 악센트가있는 웹 사이트입니다.urllib : utf-8로 인코딩 된 사이트 소스 코드 받기
urllib 또는 urllib2를 사용하여 사이트를 가져 오는 경우 사이트 소스 코드는 utf-8에서 인코딩되지 않습니다. utf-8은 이러한 액센트를 지원하기 때문에 좋을 것입니다.
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
내 파이썬 스크립트 : 볼 그러나
opener = urllib2.build_opener()
opener.addheaders = [('Accept-Charset', 'utf-8')]
url_response = opener.open(url)
deal_html = url_response.read().decode('utf-8')
, 내가 점점 계속 결과
나는 대상 사이트가 UTF-8은 다음과 같은 메타 태그를 포함로 인코딩되어 있다고 생각 UTF-8로 인코딩되지 않은 것처럼 말입니다.
예 : "밀라노"웹 사이트는 = "밀 \ xe1n는"urllib2가 그것을
어떤 제안이 가져 오는 후?
좋아, 이제 "Mil \ xc3 \ xa1n"을 인쇄하면 Milán이 표시되는 것을 볼 수 있습니다. 그러나 소스 코드에서 문자열을 가져 와서 목록에 추가하면 "Mil \ xc3 \ xa1n"이됩니다. 목록이나 사전에서 어떻게 읽을 수 있습니까 (밀란)? –
이 목록은 그 안에있는 각 항목에 대해'repr()'을 호출합니다. 이것이 확장 문자가 이스케이프 처리되는 이유입니다. 디버깅 목적으로 좀 더 읽기 쉬운 표현이 필요하다면'[mylist in x in styl (x)] '와 같은 일을하십시오. – kindall