关于mac下requests的问题,请指教
import requests
html = requests.get('https://movie.douban.com/subject/26284595/?from=showing')
print html.text
同一段代码,在iterm下的ipython和python中都是可以运行的,但是去到pychram或者atom下就显示错误
错误如下
Traceback (most recent call last):
File "/Users/xxx/Desktop/py/requests_text.py", line 1, in <module>
import requests
File "/usr/local/lib/python2.7/site-packages/requests/__init__.py", line 60, in <module>
from .packages.urllib3.exceptions import DependencyWarning
File "/usr/local/lib/python2.7/site-packages/requests/packages/__init__.py", line 29, in <module>
import urllib3
File "/Library/Python/2.7/site-packages/urllib3/__init__.py", line 8, in <module>
from .connectionpool import (
File "/Library/Python/2.7/site-packages/urllib3/connectionpool.py", line 7, in <module>
from socket import error as SocketError, timeout as SocketTimeout
ImportError: cannot import name error
同时在直接安装requests
情况下,在IDE下会报import urllib3
的错误,以上错误已经是重新pip install urllib3
情况下报错的
目前已经试过切换python
virtualenv
虚拟环境下安装request
brew install python
重新安装新的python
同时也已经清除过相关的.pyc
文件,依旧是上述的name
错误,请指教?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
是关于命名出了问题
总结一下自己遇到的坑,应该都是新手坑~
import requests
出问题的,检查一下是否将文件名设置成了requests.py
ImportError: cannot import name error
出问题的,检查同目录下是否有其他文件与import
的包同名,删除文件后,再次检查是否生成了*.pyc
,删除干净应该就可以运行了requests
本身自带urllib3
这个库的副本,在这个库的子目录下解决方案就是要么升级库,或者重新安装现有的版本
可以强制安装:
pip install --force-reinstall requests==2.1.0
或者升级:
pip install --upgrade requests
首先ImportError产生的原因无非就是未安装升级,要不就是和本地报名冲突了,导致引用错误。
来说一下我的问题产生的原因,我在使用requests的时候,其中import urllib3,再其中from socket import error......
而我本地自己又创建了一个socket.py,所有根据就近原则,会从该文件中导入,此时找不到相关内容,便ImportError~