私はPython 3.6.somethingを使用しており、この完全に直感的なUnicode/ASCIIの悪夢を理解しようとしています。私は、Webページからファイルにテキストを保存しようとしており、後でRegexを使用して解析します。Unicode、ASCII、Regexは動作しません
私はファイルを読み込み、それを解析しようとすると、私はパターンを見つける必要がある:
Note 1 –
とは明らかに異なっている:
Note 1 -
私はエラーを取得しておいてください。
私がしようとしているRegExのSyntaxError: Non-UTF-8 code starting with '\x96' in file C:\Users\Steve\eclipse-workspace\scraper\BeautifulSoupTest.py on line 28, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
これは本当に奇妙です。なぜなら、 '\ x96'は私がオンラインで見たものからのUnicode文字ですからです。 UnicodeやASCIIで何かが起こっていますが、私はそれが何であるかの手がかりがありません。 replace()で '\ x96'文字を削除することもできません。同じエラーが発生します。誰も助けることができますか?
from bs4 import BeautifulSoup
from urllib.request import urlopen
import re
def downloadCleanText(url, year):
urlObject = urlopen(url)
rawHTML = urlObject.read()
cleanedText = BeautifulSoup(rawHTML, 'html.parser').body.getText()
outputFile = open(str(year) + '.txt', 'w')
outputFile.write(cleanedText)
outputFile.close()
def pullNote1(year):
inputFile = open(str(year) + '.txt', 'r')
inData = inputFile.read()
outData = re.findall('Note 1 –(.*?)Note 2 ', inData)
print(outData)
inputFile.close()
downloadCleanText('https://www.sec.gov/Archives/edgar/data/320193/000032019317000070/a10-k20179302017.htm#s2A826F0B8B5755F787D29B5B8C8C7D16', 2000)
pullNote1(2000)
例外メッセージは**非常にクリアです**。 URLに従って、コードにソースコードエンコーディング宣言を追加しましたか? –
'\ x96'はASCII文字ではありません**。 ASCIIは0x00から0x7Fまで実行されます。 –
"URL"はエラーメッセージの1つです。 http://python.org/dev/peps/pep-0263/ – tripleee