Python学习——发送HTTP请求

1. cgi编程

(1) 我首先在服务器上写了一个cgi脚本,用于本次的HTTP请求的测试
(2) 脚本放在/var/www/cgi-bin目录下,文件名叫test.py

代码如下:


#!/usr/bin/python
# -*- coding: UTF-8 -*-

import cgi

def main():
    print("Content-type:text/html")
    print
    print("<html>")
    print("<body>")

    form = cgi.FieldStorage()   #获取表单
    site_serviceCode = form.getvalue('serviceCode')

    if site_serviceCode != '':
        print("<h1>Hello, %s</h1> "% (site_serviceCode))
    else:
        print("<h1>Sorry! Please enter first name.</h1>")
    print("</body>")
    print("</html>")

main()

从脚本看出,我们需要在浏览器进行HTTP请求时,需要传入serviceCode这个参数

2. get方式

from urllib import request


req = request.Request('http://47.101.45.2/cgi-bin/test.py?serviceCode=aaa')

with request.urlopen(req) as f:
    print(f.read().decode('utf-8'))

结果:
在这里插入图片描述

3. post方式

from urllib import request, parse

login_data = parse.urlencode([('serviceCode', 'aaa')])  #转化为bytes

req = request.Request('http://47.101.45.2/cgi-bin/test.py')  #Request对象

req.add_header('User-Agent', 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.75 Safari/537.36')


#返回HTTPResponse对象
with request.urlopen(req, data=login_data.encode('utf-8'), timeout=30) as f:
    print(f.read().decode('utf-8'))





结果:
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值