0

MAC OS X 10.12 システムを使用しています。http://www.stats.gov.cn/tjsj/tjbz/tjyqhdmhcxhfdm/2011/51/06/81/510681114.htmlからテーブルをダウンロードしました 。テーブルは GB2312 でエンコードされていますが、GBK を使用してテーブルを保存しました。コードの主要部分は次のようになります。

req = urllib2.Request(url, headers={ 'User-Agent': 'Mozilla/5.0' })
page = urllib2.urlopen(req ).read()
tables=BeautifulSoup(page,'html.parser',
parse_only=SoupStrainer(),from_encoding='gbk')
f = open(path, 'w')
for row in tables.findAll("tr"):
    cells = row.findAll("td")
    write_to_file = cells[0].find(text=True) + "," + cells[1].find(text=True) 
+ "\n"
    write_to_unicode = write_to_file.encode('utf-8')
    f.write(write_to_unicode)
f.close()

他の多くの同様のテーブルでこのコード パターンを繰り返しましたが、一部のリンク (ここに投稿したものなど) では、ダウンロードされた中国語のテーブルに奇妙な文字が含まれています。これが例です。

´úÂë,³ÇÏç·ÖÀà,Ãû³Æ
510681114001,121,½ÖµÀ¾ÓÃñίԱ»á
510681114201,220,ðÀÃù´å´åÃñίԱ»á
510681114202,220,°×º×´å´åÃñίԱ»á
510681114203,122,Áâ½Ç´å´åÃñίԱ»á
510681114204,122,»Æ¼Òµê´å´åÃñίԱ»á
510681114205,122,»¨ÌÁ´å´åÃñίԱ»á
510681114206,220,ÔÂÍå´å´åÃñίԱ»á
510681114207,122,°×ÔÆ´å´åÃñίԱ»á
510681114208,220,Á¹Ë®¾®´å´åÃñίԱ»á
510681114209,122,Çàþh´å´åÃñίԱ»á

このテーブルを実際の中国語に変換するにはどうすればよいですか、または中国語のテーブルをダウンロードするにはどうすればよいですか?

問題は、GB2312 を使用することを選択した場合、おそらくこのテーブルでは中国語で正しく表示される可能性がありますが、他のテーブルではこれらの厄介な奇妙な文字が引き続き表示されることです。

4

1 に答える 1

0

ここからインスピレーションを得ました http://zzi.io/?p=275 たとえば

a=u"´úÂë"
print a.encode('iso-8859-1').decode('gbk')

結果は

代码

したがって、この問題は部分的に解決されます。

于 2017-07-05T09:04:51.473 に答える