<p>从回溯中的路径来看,您似乎已安装并正在尝试使用python.org网站Python2.6.4(安装到<code>/Library/Frameworks/Python.frameworks</code>…)。那个python只有32位。默认情况下,在10.6上,MacPorts会尝试安装64位版本的软件包。您可以通过在MacPorts安装命令中指定<code>+universal</code>变量或将其添加到<code>/opt/local/etc/macports/variants.conf</code>中,来更改大多数MacPorts包的这一点。但是,由于您需要各种各样的软件包,如果您只需要为您自己的机器安装一个完整的python2.6 64位解决方案,您可能会发现使用MacPorts安装一个完整的python2.6 64位解决方案要容易得多。除了scrapy本身,您应该已经找到了您需要的几乎所有包。您需要修改您的$PATH,将<code>/opt/local/Library/Frameworks/Python.framework/Versions/2.6/bin</code>和{<cd5>}添加到任何其他包含Python的目录之前。像这样的东西应该有用(未经测试!)公司名称:</p>
<pre><code>sudo port selfupdate # ensure you have the latest ports file information
sudo port install py26-libxml2 py26-twisted py26-openssl py26-simplejson py26-setuptools python_select
sudo python_select python26 # optionally make /opt/local/bin/python -> python2.6
sudo /opt/local/bin/easy_install-2.6 scrapy
# or install manually
cd /path/to/scrapy
sudo /opt/local/bin/python2.6 setup.py install
</code></pre>
<p>编辑:对于10.6,由于64位模式下缺少Tk支持的一些问题,Tk默认为X11版本,您可能既不想要也不需要。我在10.6的<code>/opt/local/etc/macports/variants.conf</code>中添加了以下变体(并非所有变体都适用于python和friends):</p>
^{pr2}$
<p>编辑:如果MacPorts安装正确,您将在10.6上看到类似这样的内容:</p>
<pre><code>$ ls -l /opt/local/bin/python2.6
lrwxr-xr-x 1 root wheel 73 Oct 28 20:25 /opt/local/bin/python2.6@ -> /opt/local/Library/Frameworks/Python.framework/Versions/2.6/bin/python2.6
$ file /opt/local/bin/python2.6
/opt/local/bin/python2.6: Mach-O universal binary with 2 architectures
/opt/local/bin/python2.6 (for architecture x86_64): Mach-O 64-bit executable x86_64
/opt/local/bin/python2.6 (for architecture i386): Mach-O executable i386
</code></pre>
<p>如果您添加了<code>+universal</code>变体,否则您可能只看到一个x86u64或i386架构。在</p>
<p>使用相对路径时,请确保shell$PATH首先具有两个MacPorts目录:</p>
<pre><code>$ echo $PATH
/opt/local/Library/Frameworks/Python.framework/Versions/2.6/bin:/opt/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin ...
</code></pre>
<p>您可能需要编辑您的<code>~/.bash_profile</code>或其他shell文件,使该更改成为“永久性的”。如果希望裸的<code>python</code>命令引用MacPorts Python,请确保运行上面显示的<code>python_select</code>命令。如果您仍然有问题,MacPorts的一个优点是很容易删除并重新开始;只需:</p>
<pre><code>$ sudo rm -r /opt/local
</code></pre>
<p>下载MacPorts10.6安装程序。但你真的不应该那么做。我认为这将是你的最佳利益得到修复和工作,因为它可能会节省你很多头痛在未来。在</p>