安装完scrapy后,我使用'scrapy startproject tutorial‘开始,但它显示如下:
Icelesss-MacBook-Pro:tutorial iceless$ scrapy startproject tutorial
Error: Module 'tutorial' already exists
当我只输入import scrapy时,它显示:
Icelesss-MacBook-Pro:~ iceless$ import scrapy
-bash: import: command not found
Icelesss-MacBook-Pro:~ iceless$ scrapy.item
-bash: scrapy.item: command not found
Icelesss-MacBook-Pro:~ iceless$ create scrapy.Item
-bash: create: command not found
Icelesss-MacBook-Pro:~ iceless$ items.py
-bash: items.py: command not found
Icelesss-MacBook-Pro:~ iceless$ cd tutorial
Icelesss-MacBook-Pro:tutorial iceless$ import scrapy
-bash: import: command not found
发布于 2018-06-09 02:27:40
这应该是一个相对简单的修复方法。在某些平台上,安装scrapy
时似乎没有创建符号链接,或者没有将cli工具添加到您的$PATH
中。首先需要做的是找到当前Python
和版本的位置:
$ which python
/opt/local/bin/python # your python location may be different
$ python -V
Python 3.6.5 # your version may be different (we need the first two digits)
获取which python
命令的前两个路径,并将其前置为:
/Library/Frameworks/Python.framework/Versions/3.6/bin/scrapy
所以你最终会得到:
/opt/local/Library/Frameworks/Python.framework/Versions/3.6/bin/scrapy
现在,最后一步是在~/.bash_profile
中为命令创建别名
alias scrapy="/opt/local/Library/Frameworks/Python.framework/Versions/3.6/bin/scrapy"
我已经创建了一个Bash脚本,它应该(希望)自动化这个过程:
scrapy_alias.sh
#!/bin/bash
a=$(command -v python)
b=$(python -V | grep -oE "\\d\\.\\d")
c="${a%/bin*}/Library/Frameworks/Python.framework/Versions/${b}/bin/scrapy"
printf "\\n# Scrapy alias\\nalias scrapy=\"${c}\"\\n" | sudo tee -a ~/.bash_profile
在终端中运行脚本,然后将更改添加到~/.bash_profile
$ ./scrapy_alias.sh
$ . ~/.bash_profile
现在,您应该能够开始本教程了:
$ scrapy startproject tutorial
New Scrapy project 'tutorial', using template directory '/opt/local/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/scrapy/templates/project', created in:
/Users/Username/Desktop/Scrapy_Tutorial
You can start your first spider with:
cd tutorial
scrapy genspider example example.com
https://stackoverflow.com/questions/50765651
复制相似问题