使用Python的urllib2模块处理url和图片的技巧两则

yipeiwu_com6年前Python基础

获取带有中文参数的url内容
对于中文的参数如果不进行编码的话,python的urllib2直接处理会报错,我们可以先将中文转换成utf- 8编码,然后使用urllib2.quote方法对参数进行url编码后传递。

content = u'你好 sharejs.com'
content = content.encode('utf-8')
content = urllib2.quote(content)
api_url = 'http://www.sharejs.com/q=%s'%content
res = urllib2.urlopen(api_url)


获取远程图片的大小和尺寸
这段代码通过urllib2打开远程图片,通过cStringIO读取文件内容,不用保存到磁盘即可读取图片文件的信息

#!/usr/bin/env python
#encoding=utf-8

import cStringIO, urllib2, Image

url = '/zb_users/upload/202003/kpeeihczsj1.png'
file = urllib2.urlopen(url)
tmpIm = cStringIO.StringIO(file.read())
im = Image.open(tmpIm)

print im.format, im.size, im.mode

相关文章

Python中的单继承与多继承实例分析

本文实例讲述了Python中的单继承与多继承。分享给大家供大家参考,具体如下: 单继承 一、介绍 Python 同样支持类的继承,如果一种语言不支持继承,类就没有什么意义。派生类的定义如...

浅析Python 实现一个自动化翻译和替换的工具

浅析Python 实现一个自动化翻译和替换的工具

一个可能你似曾相识的场景 阅读内容包含大量英文的 PPT、Word、Excel 或者记事本时,由于英语不熟悉,为了流利地阅读,需要打开浏览器进入谷歌翻译的主界面,然后把英文复制到谷歌翻译...

关于PyTorch 自动求导机制详解

关于PyTorch 自动求导机制详解

自动求导机制 从后向中排除子图 每个变量都有两个标志:requires_grad和volatile。它们都允许从梯度计算中精细地排除子图,并可以提高效率。 requires_grad 如...

从零学Python之入门(二)基本数据类型

简单的数据类型以及赋值 变量不需要声明 Python的变量不需要声明,你可以直接输入: 复制代码 代码如下:>>>a = 10 那么你的内存里就有了一个变量a, 它的值...

tensorflow: variable的值与variable.read_value()的值区别详解

tensorflow: variable的值与variable.read_value()的值区别详解

问题 查看 tensorflow api manual 时,看到关于 variable.read_value() 的注解如图: 那么在 tensorflow 中,variable的值...