zoukankan      html  css  js  c++  java
  • python将base64后的图片字符串重新转为图片

    import base64
    import hashlib
    
    
    def md5_value(content, salt=''):
        """
        
        :param content: 
        :param salt: 
        :return: 
        """
        if salt:
            content = '{}{}'.format(content, salt)
        return hashlib.md5(content.encode()).hexdigest().upper()
    
    
    def convert_base64_src_to_img_file(src=None):
        """
        
        :param src: 
        :return: 
        """
        test_src = 'data:image/gif;base64,R0lGODlhSwBLAMQAAO3t7dvb2+Tk5MjIyLu7u/Hx8fr6+tHR0c3Nzb+/v8TExNbW1t/f3/b29ujo6P///7a2tgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS41LWMwMTQgNzkuMTUxNDgxLCAyMDEzLzAzLzEzLTEyOjA5OjE1ICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MzJDOTQ1Mjk0RTU3MTFFMzgzNTZBMEMyNzU1OUNBRjYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MzJDOTQ1MkE0RTU3MTFFMzgzNTZBMEMyNzU1OUNBRjYiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDozMkM5NDUyNzRFNTcxMUUzODM1NkEwQzI3NTU5Q0FGNiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDozMkM5NDUyODRFNTcxMUUzODM1NkEwQzI3NTU5Q0FGNiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PgH//v38+/r5+Pf29fTz8vHw7+7t7Ovq6ejn5uXk4+Lh4N/e3dzb2tnY19bV1NPS0dDPzs3My8rJyMfGxcTDwsHAv769vLu6ubi3trW0s7KxsK+urayrqqmop6alpKOioaCfnp2cm5qZmJeWlZSTkpGQj46NjIuKiYiHhoWEg4KBgH9+fXx7enl4d3Z1dHNycXBvbm1sa2ppaGdmZWRjYmFgX15dXFtaWVhXVlVUU1JRUE9OTUxLSklIR0ZFRENCQUA/Pj08Ozo5ODc2NTQzMjEwLy4tLCsqKSgnJiUkIyIhIB8eHRwbGhkYFxYVFBMSERAPDg0MCwoJCAcGBQQDAgEAACH5BAAAAAAALAAAAABLAEsAAAX/ICSOZGmeaKqubOu+cCzPdG3feK7vfO//wKBwSCwaj8gkYbBgAACPqHQqfQoCB0WylDgIGtSweAxgIBOMwnjNphYJB3V73h4SAga6fg0I3vN7gWF9PwiAgohSZj0EUImPUQE9A4eQiQg8C5abAzsCm5sJOp+gVU+nT3U5pJAAAQhaK0sIAQ5yBjkHkA6YNgQIBzgKjwKiWylygQXGxygBiALNKgmVdIvSKKx60dgoBIINBN0omoGd4yfJdAXoJwmCwe0luoHi8iTac+z3JI7b/CQESQIoQtACggXNIYQAb6FAh4G4EQS30J+ecwAZCCIEEAGiXvwIVJtjIBa/fHRKhwIclujgyUcN4rWjBsmAAAT2XiQYUMvBjnKbGpQJEGCA0QG0iAoAoO4Bx1WlHg3c0TQqnak6CFS1ykYmD5Rcx2DssWBkWCpjeySweJZKTiAHwLR1UyTO3Ci4jihgIDfsU70B2Foq4FKaAloOAPRlU+BJgAUD3i6cTLmy5cuYM2vezLmz5xohAAA7'
        if src is None:
            src = test_src
        data = src.split('base64,')[-1]
        print(data)
        mime = src.split('data:image/')[-1].split(';base64')[0]
        image_data = base64.b64decode(data)
    
        file_name = md5_value(data)
        print(file_name)
    
        # file_name = '111'
        file_path = r'D:images{}.{}'.format(file_name, mime)
        with open(file_path, 'wb') as f:
            f.write(image_data)
    
    
    if __name__ == '__main__':
        convert_base64_src_to_img_file()
    

    以上。

  • 相关阅读:
    map的集合顺序怎么跟添加时候的顺序一样
    陕西电信开出的电子发票没有发票代码
    微擎密码忘了,password.php也不起作用
    使用composer require安装服务后 切记使用composer install 安装一下才能用
    激活 山东理工大学 jetrbins
    SpringBoot打包成可执行jar
    卸载windows服务
    cglib的动态代理
    cglib的使用
    FCKeditor使用
  • 原文地址:https://www.cnblogs.com/lovebkj/p/13758946.html
Copyright © 2011-2022 走看看