15

我决定pelican试一试,但是当我运行时pelican-quickstart,我得到以下对话框:

$ pelican-quickstart
Traceback (most recent call last):
  File "/usr/local/bin/pelican-quickstart", line 9, in <module>
    load_entry_point('pelican==3.4.0', 'console_scripts', 'pelican-quickstart')()
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 357, in load_entry_point
return get_distribution(dist).load_entry_point(group, name)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 2394, in load_entry_point
return ep.load()
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 2108, in load
entry = __import__(self.module_name, globals(),globals(), ['__name__'])
  File "/Library/Python/2.7/site-packages/pelican-3.4.0-py2.7.egg/pelican/__init__.py", line 20, in <module>
from pelican.generators import (ArticlesGenerator, PagesGenerator,
  File "/Library/Python/2.7/site-packages/pelican-3.4.0-py2.7.egg/pelican/generators.py", line 23, in <module>
from pelican.readers import Readers
  File "/Library/Python/2.7/site-packages/pelican-3.4.0-py2.7.egg/pelican/readers.py", line 24, in <module>
from six.moves.html_parser import HTMLParser
ImportError: No module named html_parser `

这篇文章中有类似的错误消息,并且由于我在 OS X 10.10 (Yosemite) 上运行 Python 2.7.6,因此可能存在类似的问题。

解决这个问题的最佳方法是什么?

4

5 回答 5

10

重新安装 Pelican 对我没有帮助,所以我在 pelican 中做了一些修复

在以下文件中进行了修改

/Library/Python/2.7/site-packages/pelican/readers.py

在第 24 行的地方

from six.moves import html_parser

代替

from six.moves.html_parser import HTMLParser

在第 299 行

    class _HTMLParser(html_parser.HTMLParser):

代替

    class _HTMLParser(HTMLParser):

鹈鹕 3.6.0 的实际修改,但如果在 reader.py 文件中搜索此行,似乎适用于其他版本。这只是一个快速的解决方法,希望这个问题将在鹈鹕方面得到解决。

于 2015-07-28T08:38:18.493 回答
5

此错误似乎来自 OSX 上的 Python 2.7.6。当我通过 Homebrew 安装 python 并重新安装这个模块时,我摆脱了这个错误。

$ pip uninstall pelican
$ brew install python
$ which python # should show /usr/local/bin/python
$ python -V # should show Python 2.7.8
$ pip install pelican
于 2014-11-04T14:34:42.070 回答
4

我认为您可能在 module 中遇到过版本冲突问题six

尝试sudo pip install virtualenv创建一个隔离 python 环境。

开始

  1. 创建你的鹈鹕路径mkdir /path/to/pelican
  2. /path/to/pelican创建一个隔离python环境virtualenv venv
  3. 激活虚拟环境source venv/bin/activate
  4. 在venv下安装鹈鹕(没有sudo!)pip install pelican markdown

完毕

现在你可以自由解决上面提到的任何问题。venv 中的所有依赖项都与全局环境隔离。

要退出 venv,请键入deactivate

于 2016-02-18T04:13:09.993 回答
0

我遇到了同样的错误消息。

six也已经安装,但旧版本(1.4.1)

pip install six --upgrade

安装了 6 个 1.10.0,pelican-quickstart终于成功了 :)

于 2017-02-11T22:06:17.833 回答
-3

您可能需要安装六个。

如果您使用的是 pip,请尝试

pip install six

然后重启 pelican-quickstart

于 2014-10-22T13:42:18.993 回答