欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python實(shí)現(xiàn)簡單網(wǎng)頁圖片抓取完整代碼實(shí)例

 更新時(shí)間:2017年12月15日 16:05:25   作者:以后以后  
這篇文章主要介紹了Python實(shí)現(xiàn)簡單網(wǎng)頁圖片抓取完整代碼實(shí)例,具有一定借鑒價(jià)值,需要的朋友可以參考下。

利用python抓取網(wǎng)絡(luò)圖片的步驟是:
1、根據(jù)給定的網(wǎng)址獲取網(wǎng)頁源代碼
2、利用正則表達(dá)式把源代碼中的圖片地址過濾出來
3、根據(jù)過濾出來的圖片地址下載網(wǎng)絡(luò)圖片

以下是比較簡單的一個抓取某一個百度貼吧網(wǎng)頁的圖片的實(shí)現(xiàn):

# -*- coding: utf-8 -*- 
# feimengjuan 
import re 
import urllib 
import urllib2 
#抓取網(wǎng)頁圖片  
#根據(jù)給定的網(wǎng)址來獲取網(wǎng)頁詳細(xì)信息,得到的html就是網(wǎng)頁的源代碼 
def getHtml(url): 
  page = urllib.urlopen(url) 
  html = page.read() 
  return html 
 def getImg(html): 
  #利用正則表達(dá)式把源代碼中的圖片地址過濾出來 
  reg = r'src="(.+?\.jpg)" pic_ext' 
  imgre = re.compile(reg) 
  imglist = imgre.findall(html) #表示在整個網(wǎng)頁中過濾出所有圖片的地址,放在imglist中 
  x = 0 
  for imgurl in imglist: 
    urllib.urlretrieve(imgurl,'%s.jpg' %x) #打開imglist中保存的圖片網(wǎng)址,并下載圖片保存在本地 
    x = x + 1 
 html = getHtml("http://tieba.baidu.com/p/2460150866")#獲取該網(wǎng)址網(wǎng)頁詳細(xì)信息,得到的html就是網(wǎng)頁的源代碼 
getImg(html)#從網(wǎng)頁源代碼中分析并下載保存圖片 

進(jìn)一步對代碼進(jìn)行了整理,在本地創(chuàng)建了一個“圖片”文件夾來保存圖片

# -*- coding: utf-8 -*- 
# feimengjuan 
import re 
import urllib 
import urllib2 
import os 
#抓取網(wǎng)頁圖片  
#根據(jù)給定的網(wǎng)址來獲取網(wǎng)頁詳細(xì)信息,得到的html就是網(wǎng)頁的源代碼 
def getHtml(url): 
  page = urllib.urlopen(url) 
  html = page.read() 
  return html 
 
#創(chuàng)建保存圖片的文件夾 
def mkdir(path): 
  path = path.strip() 
  # 判斷路徑是否存在 
  # 存在  True 
  # 不存在 Flase 
  isExists = os.path.exists(path) 
  if not isExists: 
    print u'新建了名字叫做',path,u'的文件夾' 
    # 創(chuàng)建目錄操作函數(shù) 
    os.makedirs(path) 
    return True 
  else: 
    # 如果目錄存在則不創(chuàng)建,并提示目錄已經(jīng)存在 
    print u'名為',path,u'的文件夾已經(jīng)創(chuàng)建成功' 
    return False 
# 輸入文件名,保存多張圖片 
def saveImages(imglist,name): 
  number = 1 
  for imageURL in imglist: 
    splitPath = imageURL.split('.') 
    fTail = splitPath.pop() 
    if len(fTail) > 3: 
      fTail = 'jpg' 
    fileName = name + "/" + str(number) + "." + fTail 
    # 對于每張圖片地址,進(jìn)行保存 
    try: 
      u = urllib2.urlopen(imageURL) 
      data = u.read() 
      f = open(fileName,'wb+') 
      f.write(data) 
      print u'正在保存的一張圖片為',fileName 
      f.close() 
    except urllib2.URLError as e: 
      print (e.reason) 
    number += 1  
#獲取網(wǎng)頁中所有圖片的地址 
def getAllImg(html): 
  #利用正則表達(dá)式把源代碼中的圖片地址過濾出來 
  reg = r'src="(.+?\.jpg)" pic_ext' 
  imgre = re.compile(reg) 
  imglist = imgre.findall(html) #表示在整個網(wǎng)頁中過濾出所有圖片的地址,放在imglist中 
  return imglist   
#創(chuàng)建本地保存文件夾,并下載保存圖片 
if __name__ == '__main__': 
  html = getHtml("http://tieba.baidu.com/p/2460150866")#獲取該網(wǎng)址網(wǎng)頁詳細(xì)信息,得到的html就是網(wǎng)頁的源代碼 
  path = u'圖片' 
  mkdir(path) #創(chuàng)建本地文件夾 
  imglist = getAllImg(html) #獲取圖片的地址列表 
  saveImages(imglist,path) # 保存圖片 

結(jié)果在“圖片”文件夾下保存了幾十張圖片,如截圖:

總結(jié)

以上就是本文關(guān)于Python實(shí)現(xiàn)簡單網(wǎng)頁圖片抓取完整代碼實(shí)例的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:

Python爬蟲實(shí)例爬取網(wǎng)站搞笑段子

python爬蟲系列Selenium定向爬取虎撲籃球圖片詳解

如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!

相關(guān)文章

  • 解決python3 網(wǎng)絡(luò)請求路徑包含中文的問題

    解決python3 網(wǎng)絡(luò)請求路徑包含中文的問題

    今天小編就為大家分享一篇解決python3 網(wǎng)絡(luò)請求路徑包含中文的問題,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • python3.9和pycharm的安裝教程并創(chuàng)建簡單項(xiàng)目的步驟

    python3.9和pycharm的安裝教程并創(chuàng)建簡單項(xiàng)目的步驟

    這篇文章主要介紹了python3.9和pycharm的安裝教程并創(chuàng)建簡單項(xiàng)目的步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • 十行Python代碼制作一個視頻倒放神器

    十行Python代碼制作一個視頻倒放神器

    這篇文章主要介紹了如何通過十行代碼實(shí)現(xiàn)視頻倒放神器,輕松實(shí)現(xiàn)視頻倒放功能。文中的示例代碼簡潔易懂,對我們學(xué)習(xí)Python有一定幫助,需要的可以參考一下
    2022-02-02
  • 如何使用Python調(diào)整圖像大小

    如何使用Python調(diào)整圖像大小

    這篇文章主要介紹了如何使用Python調(diào)整圖像大小,幫助大家更好的利用python處理圖像,感興趣的朋友可以了解下
    2020-09-09
  • 30道python自動化測試面試題與答案匯總

    30道python自動化測試面試題與答案匯總

    對于機(jī)器學(xué)習(xí)算法工程師而言,Python是不可或缺的語言,它的優(yōu)美與簡潔令人無法自拔,下面這篇文章主要給大家介紹了關(guān)于30道python自動化測試面試題與答案匯總的相關(guān)資料,需要的朋友可以參考下
    2023-03-03
  • python 阿里云oss實(shí)現(xiàn)直傳簽名與回調(diào)驗(yàn)證的示例方法

    python 阿里云oss實(shí)現(xiàn)直傳簽名與回調(diào)驗(yàn)證的示例方法

    這篇文章主要介紹了python 阿里云oss實(shí)現(xiàn)直傳簽名與回調(diào)驗(yàn)證,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • 對python內(nèi)置map和six.moves.map的區(qū)別詳解

    對python內(nèi)置map和six.moves.map的區(qū)別詳解

    今天小編就為大家分享一篇對python內(nèi)置map和six.moves.map的區(qū)別詳解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • Python基于opencv實(shí)現(xiàn)的人臉識別(適合初學(xué)者)

    Python基于opencv實(shí)現(xiàn)的人臉識別(適合初學(xué)者)

    OpenCV是一個基于BSD許可開源發(fā)行的跨平臺計(jì)算機(jī)視覺庫,下面這篇文章主要給大家介紹了關(guān)于Python基于opencv實(shí)現(xiàn)的人臉識別,文中通過實(shí)例代碼介紹的非常詳細(xì),本文的教程非常適合初學(xué)者,需要的朋友可以參考下
    2022-03-03
  • Python常見讀寫文件操作實(shí)例總結(jié)【文本、json、csv、pdf等】

    Python常見讀寫文件操作實(shí)例總結(jié)【文本、json、csv、pdf等】

    這篇文章主要介紹了Python常見讀寫文件操作,結(jié)合實(shí)例形式總結(jié)分析了Python常見的各種文件讀寫操作,包括文本、json、csv、pdf等文件的讀寫與相關(guān)注意事項(xiàng),需要的朋友可以參考下
    2019-04-04
  • pandas 讀取各種格式文件的方法

    pandas 讀取各種格式文件的方法

    今天小編就為大家分享一篇pandas 讀取各種格式文件的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06

最新評論