私はurllib2を使用してWebサイトのソースコードを取得し、それをbas64でエンコードされた文字列の正規表現でフィルタリングし、それを繰り返して一致を関数に渡します:
def Base64Decoder(match): curMatch = match.group().decode('utf-8', errors='ignore') decoded = base64.b64decode(curMatch) return decoded
Base64Decoder の戻り値を出力すると、一部の文字が間違っています。正しくフィルター処理するにはどうすればよいですか? 次のような意味不明な文字を見たくありません。
ウェブサイトのエンコーディングは utf-8 ですが、urllib の戻り値は unicode のようですか?
編集:ソースコードは次のようになります(生)
<td style="text-align:left; font-weight:bold;"><script type="text/javascript">document.write(Base64.decode("MzEuMTMuMTcuMjE0"))</script></td>
フィルタリングされた文字列はBase64.decode("MzEuMTMuMTcuMjE0
ストライプ化されますMzEuMTMuMTcuMjE0