亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python使用Image處理圖片常用技巧分析

 更新時間:2015年06月01日 11:44:39   投稿:shichen2014  
這篇文章主要介紹了python使用Image處理圖片的常用技巧,實例分析了Python使用image處理圖片過程中改變圖片大小、圖片類型及遠程圖片中常見問題與解決方法,需要的朋友可以參考下

本文實例講述了python使用Image處理圖片常用技巧。分享給大家供大家參考。具體分析如下:

使用python來處理圖片是非常方便的,下面提供一小段python處理圖片的代碼,需要安裝圖像處理工具包PIL(Python Image Library)。

#coding=utf-8
import Image
import urllib2
import StringIO
import os
#改變圖片大小
def resize_img(img_path):
  try:
    img = Image.open(img_path)
    (width,height) = img.size
    new_width = 200
    new_height = height * new_width / width
    out = img.resize((new_width,new_height),Image.ANTIALIAS)
    ext = os.path.splitext(img_path)[1]
    new_file_name = '%s%s' %('small',ext)
    out.save(new_file_name,quality=95)
  except Exception,e:
    print e
#改變圖片類型
def change_img_type(img_path):
  try:
    img = Image.open(img_path)
    img.save('new_type.png')
  except Exception,e:
    print e
#處理遠程圖片
def handle_remote_img(img_url):
  try:
    request = urllib2.Request(img_url)
    img_data = urllib2.urlopen(request).read()
    img_buffer = StringIO.StringIO(img_data)
    img = Image.open(img_buffer)
    img.save('remote.jpg')
    (width,height) = img.size
    out = img.resize((200,height * 200 / width),Image.ANTIALIAS)
    out.save('remote_small.jpg')
  except Exception,e:
    print e
if __name__ == '__main__':
  img_path = 'test.jpg'
  resize_img(img_path)
  change_img_type(img_path)
  img_url = 'http://img.hb.aicdn.com/042f8a4a70239f724ff7b9fa0fc8edf18658f41022ada-WcItWE_fw554'
  handle_remote_img(img_url)

可能會遇到的問題

ImportError: No module named Image

解決辦法:安裝Python Imaging Library(PIL)

復制代碼 代碼如下:
sudo easy_install PIL

安裝PIL出現(xiàn):
— JPEG support not available

— ZLIB (PNG/ZIP) support not available

— FREETYPE2 support not available

操作jpeg圖片和png圖片出現(xiàn):

IOError: decoder jpeg not available 和 IOError: encoder zip not available

解決辦法:
(1) 刪除已經(jīng)安裝的PIL

復制代碼 代碼如下:
sudo rm -rf /usr/local/lib/python2.6/site-packages/PIL-1.1.7-py2.6-linux-x86_64.egg/

(2) 安裝相關庫
復制代碼 代碼如下:
sudo apt-get install libjpeg8 libjpeg62-dev libfreetype6 libfreetype6-dev
sudo ln -s /usr/lib/x86_64-linux-gnu/libjpeg.so /usr/lib/
sudo ln -s /usr/lib/x86_64-linux-gnu/libfreetype.so /usr/lib/
sudo ln -s /usr/lib/x86_64-linux-gnu/libz.so /usr/lib/

(3) 重新安裝PIL
復制代碼 代碼如下:
sudo easy_install PIL

終端出現(xiàn):

— JPEG support available
— ZLIB (PNG/ZIP) support available
— FREETYPE2 support available

現(xiàn)在試試,已經(jīng)ok了

希望本文所述對大家的Python程序設計有所幫助。

相關文章

  • CentOS 6.5中安裝Python 3.6.2的方法步驟

    CentOS 6.5中安裝Python 3.6.2的方法步驟

    centos 6.5默認自帶的python版本為2.6,而下面這篇文章主要給大家介紹了關于在CentOS 6.5中安裝Python 3.6.2的方法步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。
    2017-12-12
  • Python魔法方法詳解

    Python魔法方法詳解

    今天小編就為大家分享一篇關于Python魔法方法詳解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • Python 自動備份腳本的示例代碼

    Python 自動備份腳本的示例代碼

    這篇文章主要介紹了Python 自動備份腳本,本文結合代碼給大家講解的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-12-12
  • python 如何獲取元素在array中的下標

    python 如何獲取元素在array中的下標

    這篇文章主要介紹了python 獲取元素在array中的下標操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • 如何通過Python收集MySQL MHA 部署及運行狀態(tài)信息的功能

    如何通過Python收集MySQL MHA 部署及運行狀態(tài)信息的功能

    本篇幅主要介紹如何通過Python實現(xiàn)收集MHA 集群 節(jié)點信息 和 運行狀態(tài)的功能。這些信息將是CMDB信息的重要組成部分,感興趣的朋友一起看看吧
    2021-10-10
  • 關于Pycharm無法debug問題的總結

    關于Pycharm無法debug問題的總結

    今天小編就為大家分享一篇關于Pycharm無法debug問題的總結,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • Python+unittest+requests+excel實現(xiàn)接口自動化測試框架

    Python+unittest+requests+excel實現(xiàn)接口自動化測試框架

    這篇文章主要介紹了Python+unittest+requests+excel實現(xiàn)接口自動化測試框架,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-12-12
  • python登錄WeChat 實現(xiàn)自動回復實例詳解

    python登錄WeChat 實現(xiàn)自動回復實例詳解

    在本篇內(nèi)容里小編給大家整理的是關于python登錄WeChat 實現(xiàn)自動回復的相關實例內(nèi)容以及知識點總結,有興趣的朋友們參考下。
    2019-05-05
  • 在Linux命令行中運行Python腳本的流程步驟

    在Linux命令行中運行Python腳本的流程步驟

    Python是一種高級編程語言,被廣泛應用于數(shù)據(jù)科學、機器學習、Web 開發(fā)等領域,在Linux操作系統(tǒng)中,Python是一個默認安裝的解釋器,用戶可以通過命令行界面(CLI)來運行Python腳本,在本文中,我們將詳細介紹如何在Linux命令行中運行Python腳本,需要的朋友可以參考下
    2023-11-11
  • 老生常談Python之裝飾器、迭代器和生成器

    老生常談Python之裝飾器、迭代器和生成器

    下面小編就為大家?guī)硪黄仙U凱ython之裝飾器、迭代器和生成器。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07

最新評論