最後の出力がテキストファイルになるように、すべてのHTMLを文字列から消去しようとしています。私は様々な「コンバーター」に関するいくつかの調査をしており、エンティティとシンボルのための独自の辞書を作成し、文字列の置換えを実行することに向かっています。私はプロセスを自動化したいので、これを検討しています。基礎となるhtmlの品質にはさまざまなバラツキがあります。私の解決策のスピードと、例えばpyparsingの代替案の1つを比較するために、文字列メソッドreplaceを使って\ xa0の置換をテストすることにしました。Pythonでユニコードを使用する方法
s=unicodestring.replace(r'\xa0','')
:私は
s=unicodestring.replace('\xa0','')
はとにかく-IはIをrとそれを前置きする必要があると判断されたコードの実際の行は、私はこのコード行を実行した
UnicodeDecodeError: 'ascii' codec can't decode byte 0xa0 in position 0: ordinal not in range(128)
を取得します
これはエラーなく実行されますが、スライスを見ると\ xaOはまだそこにあることがわかります
「\ xa0」にrを付ける理由は何ですか?それは生の文字列になります。つまり、文字通りバックスラッシュ、x、a、0を含みます。rがなければ、それは16進コードa0の1文字を含んでいます。 –
なぜ私はエラーが発生したのか推測しようとしていたので、\を強制的に読み込むようにするには、文字列リテラルにする必要があり、\ xa0は自分のソースに実際に存在するものです。 16進コードは何ですか? – PyNEwbie