小编典典

用pip安装Python模块

scrapy

我正在尝试安装一个名为Scrapy的模块。我使用安装

pip install Scrapy

我在/usr/local/lib/python2.7/site-packages中看到’scrapy’文件夹,但是当我尝试将其导入Python程序时,据说没有该名称的模块。关于为什么会发生这种情况的任何想法?

编辑:这是pip命令的输出:

    Downloading/unpacking Scrapy
  Downloading Scrapy-0.20.0.tar.gz (745kB): 745kB downloaded
  Running setup.py egg_info for package Scrapy

    no previously-included directories found matching 'docs/build'
Requirement already satisfied (use --upgrade to upgrade): Twisted>=10.0.0 in /usr/local/lib/python2.7/site-packages (from Scrapy)
Requirement already satisfied (use --upgrade to upgrade): w3lib>=1.2 in /usr/local/lib/python2.7/site-packages (from Scrapy)
Requirement already satisfied (use --upgrade to upgrade): queuelib in /usr/local/lib/python2.7/site-packages (from Scrapy)
Requirement already satisfied (use --upgrade to upgrade): lxml in /usr/local/lib/python2.7/site-packages (from Scrapy)
Requirement already satisfied (use --upgrade to upgrade): pyOpenSSL in /usr/local/lib/python2.7/site-packages (from Scrapy)
Requirement already satisfied (use --upgrade to upgrade): cssselect>=0.9 in /usr/local/lib/python2.7/site-packages (from Scrapy)
Requirement already satisfied (use --upgrade to upgrade): zope.interface>=3.6.0 in /usr/local/lib/python2.7/site-packages (from Twisted>=10.0.0->Scrapy)
Requirement already satisfied (use --upgrade to upgrade): six>=1.4.1 in /usr/local/lib/python2.7/site-packages (from w3lib>=1.2->Scrapy)
Requirement already satisfied (use --upgrade to upgrade): setuptools in /usr/local/lib/python2.7/site-packages/setuptools-1.1.6-py2.7.egg (from zope.interface>=3.6.0->Twisted>=10.0.0->Scrapy)
Installing collected packages: Scrapy
  Running setup.py install for Scrapy
    changing mode of build/scripts-2.7/scrapy from 644 to 755

    no previously-included directories found matching 'docs/build'
    changing mode of /usr/local/bin/scrapy to 755
Successfully installed Scrapy
Cleaning up...

当我运行/ usr / local / bin / scrapy时,会得到命令和可用命令的用法。我注意到我在/ usr / local / bin中有一个python2.7和python2.7-32,并且我记得由于Mavericks的问题而安装了32位版本。

这是输出python /usr/local/bin/scrapy:

Traceback (most recent call last): File "/usr/local/bin/scrapy", line 3, in <module> from scrapy.cmdline import execute ImportError: No module named scrapy.cmdline 

head /usr/local/bin/scrapy:

#!/usr/local/opt/python/bin/python2.7 from scrapy.cmdline import execute execute()

阅读 712

收藏
2020-04-10

共1个答案

小编典典

你是否正在使用Homebrew或MacPorts或其他产品?正如@JFSebastian所说,听起来你在混合OS X附带的默认python和通过软件包管理器安装的默认python时遇到了问题…请尝试/usr/local/opt/python/bin/python2.7 -m scrapy看看是否抛出ImportError

如果这样的作品,那么你可能要考虑让该 Python可执行程序的默认。诸如此类的东西alias python2.7=/usr/local/opt/python/bin/python2.7,然后总是使用python2.7而不是默认值python。同样,你也可以指向python该/urs/local...位,但是如果你出于某种原因需要它,将无法轻松访问系统(由OS X提供)的python。

2020-04-10