在windows上用conda安装pyhanlp

一、安装pyhanlp

安装pyhanlp需提前配置好jdk环境,我用的jdk版本是javac 1.8.0_60。然后执行下面命令行安装pyhanlp。

conda install -c conda-forge jpype1
pip install pyhanlp

二、解决安装时的报错AttributeError: 'Distribution' object has no attribute 'convert_2to3_doctests'

解决方案:检查当前setuptools版本是59.6.0,将其降低为58.5.3。顺便在下面贴出详细报错,有相同问题小伙伴可参考:

Collecting pyhanlp
  Using cached pyhanlp-0.1.84.tar.gz (136 kB)
Requirement already satisfied: jpype1==0.7.0 in d:\anaconda3\envs\py36\lib\site-packages (from pyhanlp) (0.7.0)
Requirement already satisfied: hanlp-downloader in d:\anaconda3\envs\py36\lib\site-packages (from pyhanlp) (0.0.25)
Requirement already satisfied: requests in d:\anaconda3\envs\py36\lib\site-packages (from hanlp-downloader->pyhanlp) (2.27.1)
Requirement already satisfied: charset-normalizer~=2.0.0 in d:\anaconda3\envs\py36\lib\site-packages (from requests->hanlp-downloader->pyhanlp) (2.0.12)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in d:\anaconda3\envs\py36\lib\site-packages (from requests->hanlp-downloader->pyhanlp) (1.26.9)
Requirement already satisfied: certifi>=2017.4.17 in d:\anaconda3\envs\py36\lib\site-packages (from requests->hanlp-downloader->pyhanlp) (2020.6.20)
Requirement already satisfied: idna<4,>=2.5 in d:\anaconda3\envs\py36\lib\site-packages (from requests->hanlp-downloader->pyhanlp) (3.3)
Building wheels for collected packages: pyhanlp
  Building wheel for pyhanlp (setup.py) ... error
  ERROR: Command errored out with exit status 1:
   command: 'D:\anaconda3\envs\py36\python.exe' -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\ADMINI~1\\AppData\\Local\\Temp\\pip-install-eadekm80\\pyhanlp_cea05a88f02f4b76af22b051cc3ece7c\\setup.py'"'"'; __file__='"'"'C:\\Users\\ADMINI~1\\AppData\\Local\\Temp\\pip-install-eadekm80\\pyhanlp_cea05a88f02f4b76af22b051cc3ece7c\\setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d 'C:\Users\ADMINI~1\AppData\Local\Temp\pip-wheel-ky3kl5q9'
       cwd: C:\Users\ADMINI~1\AppData\Local\Temp\pip-install-eadekm80\pyhanlp_cea05a88f02f4b76af22b051cc3ece7c\
  Complete output (51 lines):
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build\lib
  creating build\lib\pyhanlp
  copying pyhanlp\main.py -> build\lib\pyhanlp
  copying pyhanlp\server.py -> build\lib\pyhanlp
  copying pyhanlp\util.py -> build\lib\pyhanlp
  copying pyhanlp\__init__.py -> build\lib\pyhanlp
  creating build\lib\pyhanlp\static
  copying pyhanlp\static\__init__.py -> build\lib\pyhanlp\static
  running egg_info
  writing pyhanlp.egg-info\PKG-INFO
  writing dependency_links to pyhanlp.egg-info\dependency_links.txt
  writing entry points to pyhanlp.egg-info\entry_points.txt
  writing requirements to pyhanlp.egg-info\requires.txt
  writing top-level names to pyhanlp.egg-info\top_level.txt
  reading manifest file 'pyhanlp.egg-info\SOURCES.txt'
  reading manifest template 'MANIFEST.in'
  writing manifest file 'pyhanlp.egg-info\SOURCES.txt'
  copying pyhanlp\static\hanlp.properties.in -> build\lib\pyhanlp\static
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "C:\Users\ADMINI~1\AppData\Local\Temp\pip-install-eadekm80\pyhanlp_cea05a88f02f4b76af22b051cc3ece7c\setup.py", line 57, in <module>
      'hanlp=pyhanlp.main:main',
    File "D:\anaconda3\envs\py36\lib\site-packages\setuptools\__init__.py", line 163, in setup
      return distutils.core.setup(**attrs)
    File "D:\anaconda3\envs\py36\lib\distutils\core.py", line 148, in setup
      dist.run_commands()
    File "D:\anaconda3\envs\py36\lib\distutils\dist.py", line 955, in run_commands
      self.run_command(cmd)
    File "D:\anaconda3\envs\py36\lib\distutils\dist.py", line 974, in run_command
      cmd_obj.run()
    File "D:\anaconda3\envs\py36\lib\site-packages\wheel\bdist_wheel.py", line 299, in run
      self.run_command('build')
    File "D:\anaconda3\envs\py36\lib\distutils\cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "D:\anaconda3\envs\py36\lib\distutils\dist.py", line 974, in run_command
      cmd_obj.run()
    File "D:\anaconda3\envs\py36\lib\distutils\command\build.py", line 135, in run
      self.run_command(cmd_name)
    File "D:\anaconda3\envs\py36\lib\distutils\cmd.py", line 313, in run_command
      self.distribution.run_command(command)
    File "D:\anaconda3\envs\py36\lib\distutils\dist.py", line 974, in run_command
      cmd_obj.run()
    File "D:\anaconda3\envs\py36\lib\site-packages\setuptools\command\build_py.py", line 58, in run
      self.build_package_data()
    File "D:\anaconda3\envs\py36\lib\site-packages\setuptools\command\build_py.py", line 132, in build_package_data
      srcfile in self.distribution.convert_2to3_doctests):
  AttributeError: 'Distribution' object has no attribute 'convert_2to3_doctests'
  ----------------------------------------
  ERROR: Failed building wheel for pyhanlp
  Running setup.py clean for pyhanlp
Failed to build pyhanlp
Installing collected packages: pyhanlp
    Running setup.py install for pyhanlp ... error
    ERROR: Command errored out with exit status 1:
     command: 'D:\anaconda3\envs\py36\python.exe' -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\ADMINI~1\\AppData\\Local\\Temp\\pip-install-eadekm80\\pyhanlp_cea05a88f02f4b76af22b051cc3ece7c\\setup.py'"'"'; __file__='"'"'C:\\Users\\ADMINI~1\\AppData\\Local\\Temp\\pip-install-eadekm80\\pyhanlp_cea05a88f02f4b76af22b051cc3ece7c\\setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\ADMINI~1\AppData\Local\Temp\pip-record-8e88col2\install-record.txt' --single-version-externally-managed --compile --install-headers 'D:\anaconda3\envs\py36\Include\pyhanlp'
         cwd: C:\Users\ADMINI~1\AppData\Local\Temp\pip-install-eadekm80\pyhanlp_cea05a88f02f4b76af22b051cc3ece7c\
    Complete output (53 lines):
    running install
    running build
    running build_py
    creating build
    creating build\lib
    creating build\lib\pyhanlp
    copying pyhanlp\main.py -> build\lib\pyhanlp
    copying pyhanlp\server.py -> build\lib\pyhanlp
    copying pyhanlp\util.py -> build\lib\pyhanlp
    copying pyhanlp\__init__.py -> build\lib\pyhanlp
    creating build\lib\pyhanlp\static
    copying pyhanlp\static\__init__.py -> build\lib\pyhanlp\static
    running egg_info
    writing pyhanlp.egg-info\PKG-INFO
    writing dependency_links to pyhanlp.egg-info\dependency_links.txt
    writing entry points to pyhanlp.egg-info\entry_points.txt
    writing requirements to pyhanlp.egg-info\requires.txt
    writing top-level names to pyhanlp.egg-info\top_level.txt
    reading manifest file 'pyhanlp.egg-info\SOURCES.txt'
    reading manifest template 'MANIFEST.in'
    writing manifest file 'pyhanlp.egg-info\SOURCES.txt'
    copying pyhanlp\static\hanlp.properties.in -> build\lib\pyhanlp\static
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "C:\Users\ADMINI~1\AppData\Local\Temp\pip-install-eadekm80\pyhanlp_cea05a88f02f4b76af22b051cc3ece7c\setup.py", line 57, in <module>
        'hanlp=pyhanlp.main:main',
      File "D:\anaconda3\envs\py36\lib\site-packages\setuptools\__init__.py", line 163, in setup
        return distutils.core.setup(**attrs)
      File "D:\anaconda3\envs\py36\lib\distutils\core.py", line 148, in setup
        dist.run_commands()
      File "D:\anaconda3\envs\py36\lib\distutils\dist.py", line 955, in run_commands
        self.run_command(cmd)
      File "D:\anaconda3\envs\py36\lib\distutils\dist.py", line 974, in run_command
        cmd_obj.run()
      File "D:\anaconda3\envs\py36\lib\site-packages\setuptools\command\install.py", line 61, in run
        return orig.install.run(self)
      File "D:\anaconda3\envs\py36\lib\distutils\command\install.py", line 545, in run
        self.run_command('build')
      File "D:\anaconda3\envs\py36\lib\distutils\cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "D:\anaconda3\envs\py36\lib\distutils\dist.py", line 974, in run_command
        cmd_obj.run()
      File "D:\anaconda3\envs\py36\lib\distutils\command\build.py", line 135, in run
        self.run_command(cmd_name)
      File "D:\anaconda3\envs\py36\lib\distutils\cmd.py", line 313, in run_command
        self.distribution.run_command(command)
      File "D:\anaconda3\envs\py36\lib\distutils\dist.py", line 974, in run_command
        cmd_obj.run()
      File "D:\anaconda3\envs\py36\lib\site-packages\setuptools\command\build_py.py", line 58, in run
        self.build_package_data()
      File "D:\anaconda3\envs\py36\lib\site-packages\setuptools\command\build_py.py", line 132, in build_package_data
        srcfile in self.distribution.convert_2to3_doctests):
    AttributeError: 'Distribution' object has no attribute 'convert_2to3_doctests'
    ----------------------------------------
ERROR: Command errored out with exit status 1: 'D:\anaconda3\envs\py36\python.exe' -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\ADMINI~1\\AppData\\Local\\Temp\\pip-install-eadekm80\\pyhanlp_cea05a88f02f4b76af22b051cc3ece7c\\setup.py'"'"'; __file__='"'"'C:\\Users\\ADMINI~1\\AppData\\Local\\Temp\\pip-install-eadekm80\\pyhanlp_cea05a88f02f4b76af22b051cc3ece7c\\setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\ADMINI~1\AppData\Local\Temp\pip-record-8e88col2\install-record.txt' --single-version-externally-managed --compile --install-headers 'D:\anaconda3\envs\py36\Include\pyhanlp' Check the logs for full command output.
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,884评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,347评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,435评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,509评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,611评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,837评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,987评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,730评论 0 267
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,194评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,525评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,664评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,334评论 4 330
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,944评论 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,764评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,997评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,389评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,554评论 2 349

推荐阅读更多精彩内容