鉴客 python发送HTTP请求


1.
GET 方法

>>> import httplib  
>>> conn = httplib.HTTPConnection("www.python.org")  
>>> conn.request("GET", "/index.html")  
>>> r1 = conn.getresponse()  
>>> print r1.status, r1.reason  
200 OK  
>>> data1 = r1.read()  
>>> conn.request("GET", "/parrot.spam")  
>>> r2 = conn.getresponse()  
>>> print r2.status, r2.reason  
404 Not Found  
>>> data2 = r2.read()  
>>> conn.close() 


2. HEAD 方法

>>> import httplib  
>>> conn = httplib.HTTPConnection("www.python.org")  
>>> conn.request("HEAD","/index.html")  
>>> res = conn.getresponse()  
>>> print res.status, res.reason  
200 OK  
>>> data = res.read()  
>>> print len(data)  
0 
>>> data == ''  
True 

3. POST 方法

>>> import httplib, urllib  
>>> params = urllib.urlencode({'spam': 1, 'eggs': 2, 'bacon': 0})  
>>> headers = {"Content-type": "application/x-www-form-urlencoded",  
...            "Accept": "text/plain"}  
>>> conn = httplib.HTTPConnection("musi-cal.mojam.com:80")  
>>> conn.request("POST", "/cgi-bin/query", params, headers)  
>>> response = conn.getresponse()  
>>> print response.status, response.reason  
200 OK  
>>> data = response.read()  
>>> conn.clo


使用httplib2


>>> from httplib2 import Http
>>> from urllib.parse import urlencode
>>> h = Http()
>>> data = {"name": "Joe", "comment": "A test comment"}
>>> resp, content = h.request("http://bitworking.org/news/223/Meet-Ares", "POST", urlencode(data))

#!/usr/bin/python3

import urllib.parse
import httplib2

http = httplib2.Http()

url = 'http://www.example.com/login'   
body = {'USERNAME': 'foo', 'PASSWORD': 'bar'}
headers = {'Content-type': 'application/x-www-form-urlencoded'}
response, content = http.request(url, 'POST', headers=headers, body=urllib.parse.urlencode(body))

headers = {'Cookie': response['set-cookie']}

url = 'http://www.example.com/home'   
response, content = http.request(url, 'GET', headers=headers)



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值