我到处寻找这个并且找不到答案。我检查了我的python版本,它是版本3.2。当我尝试导入cookielib
时,我会收到:
ImportError: No module named cookielib
我在Python 3.0中看到它被重命名为
http.cookiejar
并且它会自动导入cookielib
。
我认为我的python配置中可能存在一些错误,所以我想我应该尝试像http.cookiejar
一样导入import http.cookiejar
。这不起作用,我得到并且错误:
EOFError: EOF read where not expected
。
这不是我预期的错误,因为import http.cookies
导入就好了。
有没有人能解决这个问题?我在俯瞰什么?
完全错误:
Traceback (most recent call last):
File "C:\Users\Spencer\Downloads\selenium-2.20.0.tar\selenium-2.20.0\selenium-2.20.0\test", line 1, in <module>
import urllib.request, urllib.parse, http.cookiejar
EOFError: EOF read where not expected
答案 0 :(得分:9)
自动重命名业务仅适用于2to3。因此,您必须import http.cookiejar
。
只有Python编组才会抛出错误EOFError: EOF read where not expected
。最有可能的是,这是由竞争条件fixed in Python 3.3引起的,其中多个进程试图同时写入pyc文件。删除所有.pyc文件可能是一种解决方法。
答案 1 :(得分:3)
在Python 3.0中,cookielib模块已重命名为http.cookiejar。将源转换为3.0时,2to3工具将自动调整导入。
答案 2 :(得分:1)
try:
import cookielib
except:
import http.cookiejar
cookielib = http.cookiejar
答案 3 :(得分:0)
我最初的猜测是你的库文件已损坏。在Python安装中,查看lib/python3.2/http/cookiejar.py
并向下滚动到最后。我的(Python 3.2.2)以save()
方法定义结尾,带有
finally:
f.close()
如果您看到其他任何内容,您的安装可能已损坏,我建议您重新安装。