UnicodeDecodeError:&x27;utf8';编解码器可以';t在6898位置解码字节0xa3:在Python中使用参数解析器读取文件的起始字节无效
我正在从这个链接实现代码 我正在使用Python中的ArgumentParser从指定路径读取文件UnicodeDecodeError:&x27;utf8';编解码器可以';t在6898位置解码字节0xa3:在Python中使用参数解析器读取文件的起始字节无效,python,parameter-passing,word-embedding,Python,Parameter Passing,Word Embedding,我正在从这个链接实现代码 我正在使用Python中的ArgumentParser从指定路径读取文件 parser.add_argument('corpus', metavar='corpus_path', type=partial(codecs.open, encoding='utf-8')) 我在命令提示符中使用此命令传递参数 python Glove_python_bbc.py "C:/Users/JAYASHREE/Documents/NL
parser.add_argument('corpus', metavar='corpus_path',
type=partial(codecs.open, encoding='utf-8'))
我在命令提示符中使用此命令传递参数
python Glove_python_bbc.py "C:/Users/JAYASHREE/Documents/NLP/text-corpus.txt" --vocab-path C:/Users/JAYASHREE/Documents/NLP/vocabulary --cooccur-path C:/Users/JAYASHREE/Documents/NLP/cooccur_matrix -w 10 --min-count 10 --vector-path C:/Users/JAYASHREE/Documents/NLP/word-vector -s 40 --iterations 10 --learning-rate 0.1 --save-often
但是我得到了以下错误
2017-08-06 23:03:46,171 Fetching vocab..
2017-08-06 23:03:46,171 Building vocab from corpus
Traceback (most recent call last):
File "Glove_python_bbc.py", line 383, in <module>
main(parse_args())
File "Glove_python_bbc.py", line 352, in main
vocab = get_or_build(arguments.vocab_path, build_vocab, corpus)
File "Glove_python_bbc.py", line 93, in get_or_build
obj = build_fn(*args, **kwargs)
File "Glove_python_bbc.py", line 112, in build_vocab
for line in corpus:
File "C:\Users\JAYASHREE\Anaconda2\lib\codecs.py", line 699, in next
return self.reader.next()
File "C:\Users\JAYASHREE\Anaconda2\lib\codecs.py", line 630, in next
line = self.readline()
File "C:\Users\JAYASHREE\Anaconda2\lib\codecs.py", line 545, in readline
data = self.read(readsize, firstline=True)
File "C:\Users\JAYASHREE\Anaconda2\lib\codecs.py", line 492, in read
newchars, decodedbytes = self.decode(data, self.errors)
UnicodeDecodeError: 'utf8' codec can't decode byte 0xa3 in position 6898: invalid start byte
2017-08-06 23:03:46171取音。。
2017-08-06 23:03:46171从语料库构建vocab
回溯(最近一次呼叫最后一次):
文件“glood_python_bbc.py”,第383行,在
main(parse_args())
文件“glood_python_bbc.py”,第352行,主目录
vocab=get\u或构建(arguments.vocab\u path、build\u vocab、corpus)
文件“glood_python_bbc.py”,第93行,在get_或_build中
obj=构建(fn)(*args,**kwargs)
文件“glood_python_bbc.py”,第112行,在build_vocab中
对于语料库中的行:
文件“C:\Users\JAYASHREE\Anaconda2\lib\codecs.py”,第699行,下一页
返回self.reader.next()
文件“C:\Users\JAYASHREE\Anaconda2\lib\codecs.py”,第630行,下一页
line=self.readline()
文件“C:\Users\JAYASHREE\Anaconda2\lib\codecs.py”,第545行,在readline中
data=self.read(readsize,firstline=True)
文件“C:\Users\JAYASHREE\Anaconda2\lib\codecs.py”,第492行,已读
newchars,decodedbytes=self.decode(数据,self.errors)
UnicodeDecodeError:“utf8”编解码器无法解码位置6898中的字节0xa3:无效的开始字节
我试图读取的文件的屏幕截图看起来您正在读取的数据没有使用UTF-8编码。您需要找出实际的编码是什么,并在
编码
参数中指定它。您确定文本语料库.txt
是utf-8编码的吗?有许多编码,例如拉丁语-1
和cp1252
,它们将b'\xa3'
解码为
。你可以试试这些(例如),看看文本的其余部分是否正确。我没有用utf-8正确编码文件。在我的代码中发现了错误。谢谢你的建议。看起来你正在读取的数据没有用utf-8编码。您需要找出实际的编码是什么,并在编码
参数中指定它。您确定文本语料库.txt
是utf-8编码的吗?有许多编码,例如拉丁语-1
和cp1252
,它们将b'\xa3'
解码为
。你可以试试这些(例如),看看其余的文本是否正确。我没有在utf-8中正确编码文件。在我的代码中发现了错误。谢谢你的建议。