說明
python2.7或3.4小腳本
這個小軟件是和urllib和urllib2的使用結合了python網頁獲取異常的處理,原理非常簡單,適合初學者練手~
功能
下載這個網站上的圖片
成果
先放福利啦~

分析
首先,想下載網站上的圖片就需要獲得圖片的地址,正常套路是用正則在網頁源代碼中匹配到要下載的圖片的網址,再下載,但是這回通過發現圖片的路徑是有規律的:
N代表第幾期,n是代表第幾張。
那么接下來就好辦了,只要程序循環N和n,不斷獲取圖片就能下載到了!
不過寫出來報錯,因為當讓puython下載的網址不是圖片的時候,會報錯,程序也就終止了,好辦,加個try:
最后修改好是下面的代碼
最終成果
2.7版
#-*-coding:utf-8-*-
##python2.7 project
import re,urllib,urllib2
#--------------
No = 1
n = 9
#---------------
s = True
b = True
err = 0
def download_image(url, save_path):
urllib.urlretrieve(url, save_path)
#'http://www.tuigirl8.com/tu/no/n.jpg'
def download(No,n):
html = 'http://www.tuigirl8.com/tu/%d/%d.jpg'%(No,n)
dic = './%d_%d.jpg'%(No,n)
try:
response = urllib2.urlopen(html)
html1 = response.read()
except urllib2.URLError, e:
print'這個路徑下沒有圖片,跳過'
s = False
return s
else:
download_image(html,dic)
print'下載成功%s'%dic
s = True
return s
while b:
if download(No,n) == False:
err+=1
if err == 15:
No+=1
n+=1
print 'ok!'
3.4版
#-*-coding:utf-8-*-
#python3.4 project
import urllib.request,urllib.error
#--------------
No = 1
n = 9
#---------------
s = True
b = True
err = 0
def download_image(url, save_path):
urllib.request.urlretrieve(url, save_path)
#'http://www.tuigirl8.com/tu/no/n.jpg'
def download(No,n):
html = 'http://www.tuigirl8.com/tu/%d/%d.jpg'%(No,n)
dic = './%d_%d.jpg'%(No,n)
try:
response = urllib.request.urlopen(html)
# html= response.()
except urllib.error.URLError as e:
print('這個路徑下沒有圖片,跳過')
s = False
return s
else:
download_image(html,dic)
print('下載成功')
s = True
return s
while b:
if download(No,n) == False:
err+=1
if err == 15:
No+=1
n+=1
print ('ok!')
版權聲明:本文為博主原創文章,未經博主允許不得轉載。
