码迷,mamicode.com
首页 > 编程语言 > 详细

python urllib、urllib2模块讲解

时间:2016-04-22 11:55:43      阅读:248      评论:0      收藏:0      [点我收藏+]

标签:

1、urllib模块

1.urllib.urlopen(url[,data[,proxies]])

打开一个url的方法,返回一个文件对象,然后可以进行类似文件对象的操作。本例试着打开google

import urllib

f = urllib.urlopen(‘http://www.google.com.hk/‘)
firstLine = f.readline()   #读取html页面的第一行

urlopen返回对象提供方法:

-         read() , readline() ,readlines() , fileno() , close() :这些方法的使用方式与文件对象完全一样

-         info():返回一个httplib.HTTPMessage对象,表示远程服务器返回的头信息

-         getcode():返回Http状态码。如果是http请求,200请求成功完成;404网址未找到

-         geturl():返回请求的url

2.urllib.urlretrieve(url[,filename[,reporthook[,data]]])

urlretrieve方法将url定位到的html文件下载到你本地的硬盘中。如果不指定filename,则会存为临时文件。

urlretrieve()返回一个二元组(filename,mine_hdrs)

临时存放:

filename = urllib.urlretrieve(‘http://www.google.com.hk/‘)

type(filename)
<type ‘tuple‘>

print filename[0]
print filename[1]

输出:

‘/tmp/tmp8eVLjq‘

<httplib.HTTPMessage instance at 0xb6a363ec>

存为本地文件:

filename = urllib.urlretrieve(‘http://www.baidu.com/‘,filename=‘/home/dzhwen/python文件/Homework/urllib/google.html‘)

print type(filename)
print filename[0]
print filename[1]

输出:

<type ‘tuple‘>
‘/home/dzhwen/python\xe6\x96\x87\xe4\xbb\xb6/Homework/urllib/google.html‘
<httplib.HTTPMessage instance at 0xb6e2c38c>

3.urllib.urlcleanup()

清除由于urllib.urlretrieve()所产生的缓存

4.urllib.quote(url)和urllib.quote_plus(url)

将url数据获取之后,并将其编码,从而适用与URL字符串中,使其能被打印和被web服务器接受。

urllib.quote(‘http://www.baidu.com‘)

转换结果:

‘http%3A//www.baidu.com‘
urllib.quote_plus(‘http://www.baidu.com‘)

转换结果:

‘http%3A%2F%2Fwww.baidu.com‘

5.urllib.unquote(url)和urllib.unquote_plus(url)

与4的函数相反。

6.urllib.urlencode(query)

将URL中的键值对以连接符&划分

这里可以与urlopen结合以实现post方法和get方法:

GET方法:

import urllib

params=urllib.urlencode({‘spam‘:1,‘eggs‘:2,‘bacon‘:0})
f=urllib.urlopen("http://python.org/query?%s" % params)
print f.read()

POST方法:  

import urllib

parmas = urllib.urlencode({‘spam‘:1,‘eggs‘:2,‘bacon‘:0})
f=urllib.urlopen("http://python.org/query",parmas)
f.read()

2、urllib2请参考:

http://www.cnblogs.com/yuxc/archive/2011/08/01/2123995.html

  





  

  

  

  

  

  

python urllib、urllib2模块讲解

标签:

原文地址:http://www.cnblogs.com/hester/p/5420696.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!