我正在尝试运行以下代码:
import bs4 as bs
import pickle
import requests
import lxml
def save_sp500_tickers():
resp = requests.get("https://en.wikipedia.org/wiki/List_of_S%26P_500_companies")
soup = bs.BeautifulSoup(resp.text, "html5lib")
table = soup.find("table", { "class" : "wikitable sortable"})
# print(soup)
# print(soup.table)
tickers = []
for row in table.findAll("tr")[1:]:
ticker = row.findAll("td")[0].text
tickers.append(ticker)
with open("sp500tickers.pickle","wb") as f:
pickle.dump(tickers, f)
print(tickers)
# return tickers
# save_sp500_tickers()
它没有抛出任何错误,但我意识到没有安装pickle模块。我尝试通过pip安装它,得到以下错误:
D:\py_fin>pip install pickle
Collecting pickle
Could not find a version that satisfies the requirement pickle (from versions:
)
No matching distribution found for pickle
如何在python 3.6 (32位)中安装pickle?
发布于 2018-01-27 16:39:15
pickle
module作为Python标准库的一部分已经有很长一段时间了,所以不需要通过pip
安装它。我想知道您的IDE或命令行是否有问题,以至于找不到python安装路径。请检查您的%PATH%
是否包含python的路径(例如,C:\Python36\
或类似的路径),或者您的集成开发环境是否正确地检测到安装Python的根路径。
发布于 2018-12-19 11:12:15
您可以通过运行命令pip install pickle-mixin
来通过pip install pickle。继续使用import pickle
导入它。然后就可以正常使用了。
发布于 2018-01-27 17:21:14
Pickle是默认安装在Python2和Python3上的模块。请参阅3.6.4和2.7的标准库。
另外,为了证明我所说的是正确的,请尝试运行此脚本:
import pickle
print(pickle.__doc__)
这将打印出Pickle文档,向您显示它提供的所有功能(以及更多)。
或者,您可以启动集成的Python 3.6模块文档并在那里进行检查。
根据经验:如果您可以导入模块而不会产生错误,那么它就会被安装
使用No matching distribution found for pickle
的原因是所包含的包的库不能通过pip获得,因为您已经有了它们(我昨天在尝试安装集成包时发现了这一点)。
如果它运行时没有出现错误,但是它没有像预期的那样工作,我会认为你在某个地方犯了错误(也许可以快速检查一下你在文档中使用的函数)。Python的错误信息非常丰富,所以我们通常知道是否有什么地方出了问题。
https://stackoverflow.com/questions/48477949
复制相似问题