在Python上安装pandas - numpy去哪了?
我想打开一个网站,提取网站上的一个Excel文件,编辑它,然后把它放到另一个网站上。我在这个网站上看到一个评论,里面有很好的建议,教我怎么用 import pandas
来做到这一点。
我从Python官网上下载了pandas(还有其他一些模块),然后写了代码。但是当我尝试运行它时,出现了以下错误:
Warning (from warnings module):
File "C:\Python27\lib\site-packages\pandas\io\excel.py", line 626
.format(openpyxl_compat.start_ver, openpyxl_compat.stop_ver))
UserWarning: Installed openpyxl is not supported at this time. Use >=1.6.1 and <2.0.0.
Traceback (most recent call last):
File "C:\Python27\more_url_stuff.py", line 6, in <module>
socket = urllib2.urlopen(link)
File "C:\Python27\lib\urllib2.py", line 127, in urlopen
return _opener.open(url, data, timeout)
File "C:\Python27\lib\urllib2.py", line 410, in open
response = meth(req, response)
File "C:\Python27\lib\urllib2.py", line 523, in http_response
'http', request, response, code, msg, hdrs)
File "C:\Python27\lib\urllib2.py", line 448, in error
return self._call_chain(*args)
File "C:\Python27\lib\urllib2.py", line 382, in _call_chain
result = func(*args)
File "C:\Python27\lib\urllib2.py", line 531, in http_error_default
raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
HTTPError: HTTP Error 401: Unauthorized
这是怎么回事呢?
有没有更简单的方法可以从网上下载这个Excel文件?
我上周才开始学习Python,所以对一些简单的事情还是有点困惑。
1 个回答
18
更新:Pandas 0.15.2版本已经发布,它和最新的openpyxl(2.0或更高版本)配合得很好。之前的回答已经过时了。
好的,看起来你已经安装了最新的pandas版本(==0.14.0),这个版本需要特定版本的Openpyxl。如果你不在乎放弃新版本带来的新功能,可以尝试卸载你现在的openpyxl,然后安装一个旧版本。
pip uninstall openpyxl
pip install openpyxl==1.8.6
如果你只是想下载文件并保存到本地文件夹,这里有一个更简单的方法:
import urllib
URL_to_the_file = "http://real-chart.finance.yahoo.com/table.csv?s=SPY&a=00&b=29&c=1993&d=05&e=13&f=2014&g=d&ignore=.csv"
urllib.urlretrieve (URL_to_the_file, "downloaded.csv")