在程序执行过程中,出现过如题的错误信息。
google了一些,好像是python或部署的原因,但是有这些错误信息:
Traceback (most recent call last):
...
File "/usr/local/lib/python2.7/urllib.py", line 84, in urlopen
return opener.open(url)
File "/usr/local/lib/python2.7/urllib.py", line 205, in open
return getattr(self, name)(url)
File "/usr/local/lib/python2.7/urllib.py", line 356, in open_http
return self.http_error(url, fp, errcode, errmsg, headers)
File "/usr/local/lib/python2.7/urllib.py", line 369, in http_error
result = method(url, fp, errcode, errmsg, headers)
File "/usr/local/lib/python2.7/urllib.py", line 663, in http_error_301
return self.http_error_302(url, fp, errcode, errmsg, headers, data)
File "/usr/local/lib/python2.7/urllib.py", line 632, in http_error_302
data)
File "/usr/local/lib/python2.7/urllib.py", line 659, in redirect_internal
return self.open(newurl)
File "/usr/local/lib/python2.7/urllib.py", line 205, in open
return getattr(self, name)(url)
File "/usr/local/lib/python2.7/urllib.py", line 356, in open_http
return self.http_error(url, fp, errcode, errmsg, headers)
File "/usr/local/lib/python2.7/urllib.py", line 369, in http_error
result = method(url, fp, errcode, errmsg, headers)
File "/usr/local/lib/python2.7/urllib.py", line 694, in http_error_401
return getattr(self,name)(url, realm)
File "/usr/local/lib/python2.7/urllib.py", line 758, in retry_http_basic_auth
user, passwd = self.get_user_passwd(host, realm, i)
File "/usr/local/lib/python2.7/urllib.py", line 787, in get_user_passwd
user, passwd = self.prompt_user_passwd(host, realm)
File "/usr/local/lib/python2.7/urllib.py", line 796, in prompt_user_passwd
host))
EOFError: EOF when reading a line
这是权限问题?
到底是什么问题呢?
巴扎黑2017-04-17 11:27:43
根據樓主在評論裡的回复,如果想繼續使用urllib的話,可以使用FancyURLopener
並且自己定義一個prompt_user_password
方法。
urllib的易用性的確是經常為人所詬病.. 所以另外一個辦法是,換用一個更好用的庫。我推薦python-requests
。用這個函式庫就可以這麼寫(複製自那個連結):
>>> r = requests.get('https://api.github.com/user', auth=('user', 'pass'))
>>> r.status_code
200
>>> r.headers['content-type']
'application/json; charset=utf8'
>>> r.encoding
'utf-8'
>>> r.text
u'{"type":"User"...'
伊谢尔伦2017-04-17 11:27:43
安裝SublimeREPL,然後編譯python檔案的時候,可以選擇【Tools】--【sublimeREPL】--【python】--【Python – RUN current file】即可提示使用者輸入。應該可以解決sublime下面使用raw_input函數報錯的問題。