简单的抓取网页:
import urllib.request
url="http://google.cn/"
response=urllib.request.urlopen(url) #返回文件对象
page=response.read()
直接将URL保存为本地文件:
import urllib.request
url="http://www.xxxx.com/1.jpg"
urllib.request.urlretrieve(url,r"d:\temp\1.jpg")
POST方式:
import urllib.parse
import urllib.request
url="http://liuxin-blog.appspot.com/messageboard/add"
values={"content":"命令行发出网页请求测试"}
data=urllib.parse.urlencode(values)
#创建请求对象
req=urllib.request.Request(url,data)
#获得服务器返回的数据
response=urllib.request.urlopen(req)
#处理数据
page=response.read()
GET方式:
import urllib.parse
import urllib.request
url="http://www.google.cn/webhp"
values={"rls":"ig"}
data=urllib.parse.urlencode(values)
theurl=url+"?"+data
#创建请求对象
req=urllib.request.Request(theurl)
#获得服务器返回的数据
response=urllib.request.urlopen(req)
#处理数据
page=response.read()
有2个常用的方法,geturl(),info()
geturl()的设置是为了辨别是否有服务器端的网址重定向,而info()则包含了一系列的信息。
中文问题的处理,会用到 encode()编码 dencode()解码:
作者:黄聪
出处:http://www.cnblogs.com/huangcong/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
出处:http://www.cnblogs.com/huangcong/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。