2017-01-09 38 views
0

每次我嘗試運行該程序時都會收到相同的東西,urllib未定義。我如何擺脫它?擺脫urllib未定義錯誤

from urllib.request import urlopen 
from urllib.error import HTTPError 

aname = 'http://website.com' 
try: 
    htm = urlopen(aname + '/').read() 
except urllib.error.HTTPError as e: 
    print(e) 

是的,我有一個問題我當然希望我能搞清楚爲好,我不能讓bs4正確安裝,它保持試圖安裝到Python 2.7,這是我沒有任何2.7解釋器安裝,只有3.4.3安裝在電腦上。我有一種奇怪的感覺,可能會導致一些其他問題以及其他一些程序。

回答

1

僅僅因爲你有行from urllib.error import HTTPErrorfrom urllib.request import urlopen並不意味着urrlib可作爲你的腳本的名稱。

這是指定的in the documentation for the import聲明具體在處理from表格的部分;看看那裏的例子,看看有什麼可用的,哪些不可用。

因此,當您except

except urllib.error.HTTPError as e: 

試圖找到名字urrlib時失敗。要麼只使用HTTPError,作爲進口和綁定到您的命名空間中,except子句中:

except HTTPError as e: 

,或者,如果你需要在您的命名空間中可用urllib名稱,import urllib代替from urllib.error import HTTPError並使用原except條款。

至於安裝問題,請嘗試使用pip3而不是pip

+0

這似乎已經照顧到了urllib問題。至於bs4,我試着用兩種方法安裝... pip3安裝python3 beautilfulsoup4。這樣做,我得到的只是一個錯誤'找不到滿足要求python3的版本。我也試過... pip3安裝beautifulsoup4,它出現了,說要求已經滿足,並顯示它在usr/local/lib/python2.7。 – confused

+0

這似乎已經照顧到了urllib問題。至於bs4,我試着用兩種方法安裝... pip3安裝python3 beautilfulsoup4。這樣做,我得到的只是一個錯誤'找不到滿足要求python3的版本。我也試過... pip3安裝beautifulsoup4,它出現了,說要求已經滿足,並顯示它在usr/local/lib/python2.7。 – confused

+0

@confused不知道你的'pip'問題,它對我來說沒有任何意義,因爲它說'2.7'的目錄中存在beautifulsoup4,請嘗試通過python3 -m pip install beautifulsoup4'來檢查Python。 –