楼主: 2000918918
3119 2

python转码 UnicodeDecodeError: 'gbk' codec can't decode byte [推广有奖]

  • 1关注
  • 0粉丝

已卖:27份资源

本科生

33%

还不是VIP/贵宾

-

威望
0
论坛币
198 个
通用积分
1.3500
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
2492 点
帖子
36
精华
0
在线时间
84 小时
注册时间
2012-9-16
最后登录
2023-6-14

楼主
2000918918 发表于 2017-12-22 11:19:37 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
环境:win10  python3.6
做词性标注时,出现如下错误
python.png

源代码如下:
  1. # -*- coding: utf-8 -*-

  2. import sys
  3. import os
  4. class StanfordCoreNLP():
  5.     def __init__(self,jarpath):
  6.         self.root=jarpath
  7.         self.tempsrcpath="tempsrc"
  8.         self.jarlist=["ejml-0.23.jar","javax.json.jar","jollyday.jar","joda-time.jar","protobuf.jar","slf4j-api.jar",
  9.                       "slf4j-simple.jar","stanford-corenlp-3.8.0.jar","xom.jar"]
  10.         self.jarpath=""
  11.         self.buildjars()
  12.         
  13.     def buildjars(self):
  14.         for jar in self.jarlist:
  15.             self.jarpath += self.root+jar+";"
  16.             
  17.     def savefile(self,path,sent):
  18.         fp=open(path,"wb")
  19.         fp.write(sent)
  20.         fp.close()
  21.         
  22.     def delfile(self,path):
  23.         os.remove(path)
  24.         
  25. class StanfordPOSTagger(StanfordCoreNLP):
  26.     def __init__(self,jarpath,modelpath):
  27.         StanfordCoreNLP.__init__(self,jarpath)
  28.         self.modelpath=modelpath
  29.         self.classfier="edu.stanford.nlp.tagger.maxent.MaxentTagger"
  30.         self.delimiter="\\"
  31.         self.__buildcmd()
  32.         print(jarpath)
  33.         print(modelpath)
  34.         
  35.     def __buildcmd(self):
  36.         self.cmdline = 'java -mx1g -cp "'+self.jarpath+'" ' + self.classfier+' -model "'+self.modelpath+'" -tagSeparator ' + self.delimiter
  37.         print(self.cmdline)
  38.         
  39.     def tag(self,sent):
  40.         self.savefile(self.tempsrcpath,sent)
  41.         tagtxt=os.popen(self.cmdline+" -textFile "+self.tempsrcpath,'r').read()
  42.         self.delfile(self.tempsrcpath)
  43.         type(tagtxt)
  44.         #print(tagtxt)
  45.         return tagtxt
  46.    
  47.     def tagfile(self,inputpath,outpath):
  48.         os.system(self.cmdline+' -textFile '+inputpath+' > '+outpath)
复制代码









二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:unicode decode python Error coded

沙发
2000918918 发表于 2017-12-22 11:20:00
请大神指教,谢谢

藤椅
2000918918 发表于 2017-12-22 11:28:05
encoding改为gbk后的输出结果变为了:
锟 斤 拷 \ N N   锟 斤 拷 锟 斤 拷 \ N N   锟 斤 拷 锟 斤 拷 \ N N   锟 斤 拷 \ N N   锟 斤 拷 锟 斤 拷 \ N N   锟 斤 拷 \ N N   锟 斤 拷 \ N N   锟 斤 拷 占 锟 斤 拷 锟 絓 N N   锟 斤 拷 \ N N   锟 斤 拷 \ N N   锟 斤 拷 锟 斤 拷 \ N N   锟 斤 拷 锟 斤 拷 锟 斤 拷 锟 絓 N N   锟 斤 拷 锟 斤 拷 \ N N   锟 斤 拷 \ N N   锟 斤 拷 锟 斤 拷 \ N N   锟 斤 拷 \ N N   锟 斤 拷 \ N N   锟 斤 拷 锟 节 碉 拷 \ N N   锟 斤 拷 锟 斤 拷 \ N N   锟 斤 拷 锟 絓 N N   探 锟 斤 拷 \ N N   锟 斤 拷 占 锟 斤 拷 锟 斤 拷 锟 絓 N N

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-8 13:28