エラー「UnicodeEncodeError: 'ascii」が発生した場合' コーデックは位置 155 の文字 u'ufeff' をエンコードできません: Web スクレイピング中に「ordinal not in range(128)」というメッセージが表示される場合は、根本的な問題を理解することが重要です。
「u'ufeff'」はバイト オーダー マーク (BOM) を示し、多くの場合、テキスト ファイルに含まれています。ファイルのエンコーディングを示します。「ascii」コーデックはこの文字のエンコーディングをサポートしていないため、エラーが発生します。
これを解決するには、ファイルまたは Web 応答オブジェクトを開くときに「encoding」キーワードを使用します。正しいエンコーディング (「utf-8-sig」など) を指定すると、Python は自動的に BOM のデコードを処理し、読み取り結果から BOM を省略します。
例:
f = open('file', mode='r', encoding='utf-8-sig') content = f.read()
正しいエンコードを使用すると、エラーが発生することなく目的のコンテンツを抽出できるはずです。
以上がPython で Web スクレイピング中に発生した「u'\ufeff'」エラーを処理する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。