背景:
我正在使用Mac OSX 10.8.5操作系统。
python -V
命令显示我的Python版本为2.7.2。pip freeze
命令显示我已经安装了beautifulsoup4==4.3.2。
我试图使用Beautiful Soup 4来爬取一个网页,参考这篇教程:http://www.pythonforbeginners.com/python-on-the-web/web-scraping-with-beautifulsoup/.
在我的工作笔记本电脑上按照指示成功运行了一次。但是这不是个工作项目,所以我又在我的个人电脑和我妻子配置相同的电脑上尝试使用同样的脚本,结果出现以下错误:
Melissas-MacBook:scripts Melissa$ ./spider2.py from: can't read /var/mail/bs4 ./spider2.py: line 3: import: command not found ./spider2.py: line 4: import: command not found ./spider2.py: line 6: syntax error near unexpected token `(' ./spider2.py: line 6: `for i in range(1,10): '
以下是我的脚本内容:
from bs4 import BeautifulSoup
import requests
import time
for i in range(1,10):
url = "http://memegenerator.net/Futurama-Fry/images/popular/alltime/page/%d" % (i)
r = requests.get(url)
data = r.text
soup = BeautifulSoup(data)
results = ""
for link in soup.find_all('img'):
print(link.get('alt'))
我尝试使用pip卸载,然后使用easy_install重新安装。再次安装似乎成功了(根据pip freeze),但是脚本仍然抛出相同的错误。
错误提示说,“无法读取/var/mail/bs4”。为什么它希望在那里找到bs4?我用“ls”确认了/var/mail/确实是空的。我感到绝望,尝试了“sudo find / -atime +1 | grep bs4”,但是没有发现任何有趣的东西(或者bs4的位置)。
这个错误是说Python不理解import命令吗?如果是这样,那会发生什么?import不是标准的吗?它是否依赖于某个库?
我错过了什么?我接下来应该去哪里看?这是一个简单的答案吗?(通常是这样,但我就是看不到。)我对Python比较新,对Bash也不太熟悉。这也是我第一次发布stackoverflow问题,提前感谢任何建议/帮助。
./spider2.py
,可以这样运行它 -python spider2.py
。 - theharshest