나는 아름다운 올림픽 메달 획득자를 끌어 올리기 위해 아름다운 수프를 사용하고 있습니다. 일부 이벤트 및 운동 선수 이름에서 액센트를 사용하는 것보다 많이 걸립니다. 비슷한 문제가 온라인에 게시 된 것을 보았습니다. 그러나 Python을 처음 사용하고 코드에 적용하는 데 어려움이 있습니다.액센트와 다른 문자가있는 아름다운 스프 사용하기
수프를 인쇄하면 악센트가 잘 보입니다. 하지만 내가 수프를 파싱하기 시작하면 (그리고 CSV 파일에 쓰면) 악센트 부호가있는 문자가 왜곡됩니다. '루이 Perrée는'루이 Perr√ © 전자 '당신의 도움에 대한
from BeautifulSoup import BeautifulSoup
import urllib2
response = urllib2.urlopen('http://www.databaseolympics.com/sport/sportevent.htm?sp=FEN&enum=130')
html = response.read()
soup = BeautifulSoup(html)
g = open('fencing_medalists.csv','w"')
t = soup.findAll("table", {'class' : 'pt8'})
for table in t:
rows = table.findAll('tr')
for tr in rows:
cols = tr.findAll('td')
for td in cols:
theText=str(td.find(text=True))
#theText=str(td.find(text=True)).encode("utf-8")
if theText!="None":
g.write(theText)
else:
g.write("")
g.write(",")
g.write("\n")
많은 감사가됩니다.
나는 당신의 코드를 시험해 보았다. 파일의 시작 부분에 "# - * - coding : utf-8 - * -"을 넣었습니까? – WooParadog
@WooParadog : 그는 코딩 선언이 필요 없습니다. 그의 소스 코드에는 유니 코드 리터럴이 인코딩되어 있지 않습니다. 코딩 선언은 소스 코드를 컴파일 할 때 Python 컴파일러를 사용하기위한 것입니다. –