使用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

相关文章

在PyCharm中控制台输出日志分层级分颜色显示的方法

1、把下面代码复制到一个.py文件中 #!/usr/bin/env python # encoding: utf-8 import logging # now we patch...

python比较两个列表是否相等的方法

本文实例讲述了python比较两个列表是否相等的方法。分享给大家供大家参考。具体如下: 这里演示了 == 和 is两种方法的区别: L1 = [1, ('a', 3)] # same...

Python读取Pickle文件信息并计算与当前时间间隔的方法分析

本文实例讲述了Python读取Pickle文件信息并计算与当前时间间隔的方法。分享给大家供大家参考,具体如下: python—–读取Pickle文件信息计算出与当前的时间间隔 生成h_d...

pandas pivot_table() 按日期分多列数据的方法

如下所示: date 20170307 20170308 iphone4 2...

对python以16进制打印字节数组的方法详解

对python以16进制打印字节数组的方法详解

一、问题描述 如果直接用print打印bytes的话,有时候会直接显示ascii对应的字符,看起来很蛋疼。 二、运行效果 上面一行是直接用print打印的结果,很明显,第一个字节0x7...