URLページをフェッチしてHTMLでエスケープするPythonスクリプトがあります。
ターゲットページには、英語とヘブライ語の両方のフォントが含まれています。
opener = urllib2.build_opener(
urllib2.HTTPRedirectHandler(),
urllib2.HTTPHandler(debuglevel = 0),
urllib2.HTTPSHandler(debuglevel = 0),
urllib2.HTTPCookieProcessor(self.cj)
)
response = opener.open(url)
data = response.read()
goodData = HTMLParser.HTMLParser().unescape(data)
print goodData
Eclipseで実行すると、コードは正常に機能します。パッケージ化してLinuxシェル(ubuntu 12.04)で実行すると、最後から2番目の行(印刷の直前)で次のように失敗します。
'ascii' codec can't decode byte 0xe2 in position 775: ordinal not in range(128)
Eclipseではこれは正常に機能しているように見えるため、これをデバッグすることはできません。どうして?