2011-07-06 37 views
71

Tôi đang sử dụng Windows, và tôi nhận được lỗi:Python 3.2 Không thể nhập urllib2 (ImportError: Không có mô-đun tên urllib2)

ImportError: No module named urllib2 

Tôi nghĩ this sự là giải pháp cho Linux. Nhưng làm thế nào để thiết lập điều này trong Windows?

Tôi đang sử dụng Python 3.2 và tôi không thể xem urllib2 trong thư mục LiB.

+9

urllib2 được hợp nhất thành urllib trong python3.see http://www.python.org/dev/peps/pep-3108/#urllib-package – newbie

+0

@newbie bạn có thể đặt nhận xét này thành câu trả lời – CharlesB

+0

có, cảm ơn CharlesB – newbie

Trả lời

111

Trong python 3 urllib2 được hợp nhất thành urllib. Xem thêm another Stack Overflow questionurllib PEP 3108.

Để làm Python làm việc 2 mã trong Python 3:

try: 
    import urllib.request as urllib2 
except ImportError: 
    import urllib2 
+0

Bạn có thể rất tử tế để giải thích cách giải quyết vấn đề? Từ liên kết tôi thấy rằng một số thay đổi đã được thực hiện trong gói, nhưng những gì với tôi nên thay thế 'urllib2' trong lệnh python để cài đặt thành công? Thay thế 'urllib2' bằng' urllib.request' không giúp ích gì. – Green

+0

Lưu ý rằng bạn cũng cần thêm giải mã() vào trình đọc dòng của bạn, tức là thay đổi từ hàng = line.strip(). Split (",") thành hàng = line.decode(). Strip(). Split (", ") –

3
import urllib2 

Traceback (cuộc gọi gần đây nhất cuối cùng):

File "", dòng 1, trong

import urllib2 

Nhập khẩu lỗi: Không có mô-đun có tên 'urllib2' Vì vậy, urllib2 đã được đại diện được gói bởi gói: urllib.request.

Dưới đây là liên kết PEP (Python Enhancement đề xuất)

http://www.python.org/dev/peps/pep-3108/#urllib-package

nên thay vì urllib2 bây giờ bạn có thể nhập urllib.request và sau đó sử dụng nó như thế này:

>>>import urllib.request 

    >>>urllib.request.urlopen('http://www.placementyogi.com') 

Liên kết ban đầu: http://placementyogi.com/articles/python/importerror-no-module-named-urllib2-in-python-3-x

12

PYTHON 3

import urllib.request 

wp = urllib.request.urlopen("http://example.com") 

pw = wp.read() 

print(pw) 

PYTHON 2

import urllib 

import sys 

wp = urllib.urlopen("http://example.com") 

for line in wp: 

    sys.stdout.write(line) 

Trong khi tôi đã thử nghiệm cả Codes trong các phiên bản tương ứng.

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