ホームページ >バックエンド開発 >Python チュートリアル >Python は中国語の変換 URL エンコーディングを実装します
この記事の例では、Python で中国語変換 URL エンコードを実装する方法を説明します。参考のために皆さんと共有してください。詳細は次のとおりです:
今日はBaidu Tiebaでのことに対処しなければなりません。キーワードのリストを作成したい場合は、必要になるたびにキーワードをリストに直接追加します。ただし、リストに追加された URL が中国語 (「麗江」など) の場合、URL の住所コードは「%E4%B8%BD%E6%B1%9F」となるため、変換が必要です。ここでは urllib モジュールを使用します。
>>> import urllib >>> data = '丽江' >>> print data 丽江 >>> data '\xe4\xb8\xbd\xe6\xb1\x9f' >>> urllib.quote(data) '%E4%B8%BD%E6%B1%9F'
それでは、何を転送したいのでしょうか?
>>> urllib.unquote('%E4%B8%BD%E6%B1%9F') '\xe4\xb8\xbd\xe6\xb1\x9f' >>> print urllib.unquote('%E4%B8%BD%E6%B1%9F') 丽江
注意深い生徒は、Tieba URL に「%E4%B8%BD%E6%B1%9F」ではなく %C0%F6%BD%AD が表示されていることに気づくでしょう。これは実際にはエンコードの問題です。 Baidu は gbk、Google などの一般的な Web サイトは utf8 です。したがって、次のステートメントを使用して実現できます。
>>> import sys,urllib >>> s = '丽江' >>> urllib.quote(s.decode(sys.stdin.encoding).encode('gbk')) '%C0%F6%BD%AD' >>> urllib.quote(s.decode(sys.stdin.encoding).encode('utf8')) '%E4%B8%BD%E6%B1%9F' >>>
中国語変換 URL エンコーディングを実装する Python に関連するその他の記事については、PHP 中国語 Web サイトに注目してください。