Web ページから特定のアラビア文字列を取得して、これらの文字列を db に保存しようとしました。
最初の問題
.
私ができる唯一の方法は、次のようにユニコードを使用して文字数を指定することです。
import urllib,re
content=urllib.urlopen("http://example.com/content.html").read()
content = unicode(content,"utf-8")
Strings = re.findall("<Strong>...........</strong>",content) # it will work fine and fetch it but only strings with 11 char or letter (11 place)
第二の問題
テキストファイルに書き込もうとすると、次のように表示されます。
UnicodeEncodeError: 'ascii' コーデックは位置 0-3 の文字をエンコードできません: 序数が範囲外です (128)
そして、それをデータベースに保存しようとすると、次のように表示されます。
ProgrammingError: (1064、「SQL 構文にエラーがあります。'\xd8\xa7\xd9\x84\xd9\x82\xd8\xb5\ 付近で使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してください。 xd9\x8a\xd8\xb1)' 行 1")
私が考えているのは、それをフェッチしてbase64にエンコードしてからdbに保存することですが、それでもエラーが発生します:
UnicodeEncodeError: 'ascii' コーデックは位置 0-3 の文字をエンコードできません: 序数が範囲外です (128)