1. 程式人生 > >python3.x以上 爬蟲 使用問題 urllib(不能使用urllib2)

python3.x以上 爬蟲 使用問題 urllib(不能使用urllib2)

module RR ror 模塊 esp aid 方法 PE www

問題一: python 3.x 以上版本攬括了 urllib2,把urllib2 和 urllib 整合到一起。

並且引入模塊變成一個,只有 import urllib

# import urllib
# import urllb2

#正確使用

import urllib

  

  所以不能使用 urllib2.urlopen()方法,否則會報錯無此模塊。

NameError: name ‘urllib2‘ is not defined

  

 3.x以上版本 # urllib2.open 不能使用,用urllib.request 模塊 代替urllib2

1 import
urllib.request 2 3 response = urllib.request.urlopen(‘http://www.baidu.com)

問題二: 變量名不能與引入模塊名方法相同,否則會引起錯誤

  

 1 import urllib.request
 2 
 3 #錯誤寫法
 4 
 5 request = urllib.request.urlopen(‘http://www.baidu.com)
 6 
 7 #否則 TypeError: ‘module‘ object is not callable
 8 
 9 #正確寫法
10 
11 rqs = urllib.request.urlopen(‘http://
www.baidu.com)

問題四 print 輸出問題

  3.x 版本 print 已經成為一個方法, 輸出任何東西都要需要被 ()括號 包括,不然會出現問題

第一步初步 方法 爬去百度首頁

1 import urllib.request
2 
3 rqs = urllib.request.urlopen(http://www.baidu.com)
4 
5 html = rqs.read()
6 
7 print(html)

python3.x以上 爬蟲 使用問題 urllib(不能使用urllib2)