2015-12-26 56 views
32

Tôi đang chạy Python 3.5.1 cho Mac. Tôi muốn sử dụng urllib2. Tôi đã thử cài đặt nhưng tôi đã nói rằng nó đã được chia thành urllib.request và urllib.error cho Python 3.Cần cài đặt urllib2 cho Python 3.5.1

Lệnh của tôi (chạy từ thư mục bin khung bây giờ vì nó không nằm trong đường dẫn của tôi):

sudo ./pip3 install urllib.request 

Returns:

Could not find a version that satisfies the requirement urllib.request (from versions:) 
No matching distribution found for urllib.request 

tôi đã nhận lỗi cùng trước khi tôi đã cố gắng để cài đặt urllib2 trong một ngã swoop.

+1

Bạn không thể nhập 'urllib.request' vào chương trình Python của mình? – michaelpri

+2

urllib.request là một phần của thư viện chuẩn và không cần cài đặt. –

+0

duplicate http://stackoverflow.com/questions/16597865/is-there-a-library-for-urllib2-for-python-which-we-can-download – user2673238

Trả lời

12

Theo docs:

Note. Module urllib2 đã được chia thành nhiều mô-đun trong Python 3 có tên là urllib.request và urllib.error. Các công cụ 2to3 sẽ tự động thích ứng nhập khẩu khi chuyển đổi nguồn của bạn để Python 3.

Vì vậy, có vẻ như nó là không thể thực hiện chính xác những gì bạn muốn nhưng bạn có thể sử dụng chức năng python3 thích hợp từ urllib.request.

70

CẢNH BÁO: nghiên cứu an ninh đã tìm thấy several poisoned packages on PyPI, trong đó có một gói có tên urllib, mà sẽ 'điện thoại nhà' khi cài đặt. Nếu bạn đã sử dụng pip install urllib một khoảng thời gian sau tháng 6 năm 2017, hãy xóa gói đó càng sớm càng tốt.

Bạn không thể, và bạn không cần.

urllib2 là tên của thư viện được bao gồm trong Python 2. Thay vào đó, bạn có thể sử dụng urllib.request library kèm theo Python 3. Thư viện urllib.request hoạt động theo cách tương tự urllib2 hoạt động bằng Python 2. Bởi vì nó là đã bao gồm bạn không cần phải cài đặt nó.

Nếu bạn đang làm theo hướng dẫn cho bạn biết sử dụng urllib2 thì bạn sẽ thấy mình sẽ gặp phải nhiều sự cố hơn. Hướng dẫn của bạn được viết cho Python 2, không phải Python 3. Tìm một hướng dẫn khác hoặc cài đặt Python 2.7 và tiếp tục hướng dẫn của bạn trên phiên bản đó. Bạn sẽ tìm thấy urllib2 đi kèm với phiên bản đó.

Hoặc, hãy cài đặt requests library để có API cấp cao hơn và dễ sử dụng hơn. Nó sẽ hoạt động trên cả Python 2 và 3.

+1

Cảm ơn, sau đó tôi có thể sử dụng: 'nhập urllib.request là urllib2' – MewX

-1

apt-get install python-urllib3 # cho python 2
apt-get install python3-urllib3 # cho python 3

hoặc

pips cài đặt urllib3 # cho python 2
pip3 install urllib3 # cho python 3

0

Khi bắt đầu trăn của bạn kịch bản nên sau:

Blockquote 'import urllib2'

sau này bạn có thể tiến hành với một ví dụ miễn phí như sau:

Blockquote 'phản ứng = urllib2.urlopen ('http://pythonforbeginners.com/')

print response.info()

.210

html = response.read()

response.close() # thực hành tốt nhất để đóng tập tin'

hoặc bạn tiến hành sau khi 'nhập khẩu urllib2' với ví dụ miễn phí này như sau:

Blockquote 'page = urllib2.urlopen (' http://0.0.0.0 ')

in page.info()'

+0

Xin chào? - Ai đó có thể giúp tôi định dạng văn bản được không? Blockquote là bằng cách nào đó sai? – dschinn1001

Các vấn đề liên quan