python如何使用urllib/urllib2访问http的GET及POST详解


本文摘自php中文网,作者黄舟,侵删。

urllib模块提供的上层接口,使我们可以像读取本地文件一样读取www和ftp上的数据。下面这篇文章主要给大家介绍了关于python如何利用urllib和urllib2访问http的GET/POST的相关资料,需要的朋友可以参考借鉴,下面来一起看看吧。

前言

本文主要给大家介绍了关于python如何访问http的GET/POST的相关内容,使用urllib和urllib2,可以轻松实现对http的访问,下面话不多说了,来一起看看详细的介绍吧。

示例详解

以下给个例子,实现对http://127.0.0.1/cgi/test的GET与POST

使用的是平常意义上的query string

POST接受json

其中,

urllib2的Request方法如果只带一个参数是GET方法,但如果带两个参数,则为http的POST方法,第二个参数为POST的内容。


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

#!/usr/bin/env python

  

import urllib

import urllib2

import json

  

url_base = "http://127.0.0.1/cgi/test"

  

#GET

try:

 query = {'test':'yes','name':'colin'}

 query_string = urllib.urlencode(query)

 url = url_base+"?"+query_string

 print "GET", url<br data-filtered="filtered"> print "web output:"

 print urllib2.urlopen(urllib2.Request(url)).read()

except Exception as err:

 print err

  

#post

try:

 url = url_base

 print "POST", url

 a = {'k1':123, 'k2': '456', 'k3':'test'}

 json_s = json.dumps(a)<br data-filtered="filtered"> print "POST input:"

 print json_s<br data-filtered="filtered"> print "web output:"

 print urllib2.urlopen(urllib2.Request(url, json_s)).read()

except Exception as err:

 print err

test用bash编写,如下所示,其中jq是处理json的命令,需要下载一下,bash/sed/awk应该都是系统自带


阅读剩余部分

相关阅读 >>

为何选择Python进行数据分析

Python怎么发音

Python最简单的网页爬虫教程

在电脑上怎么下载Python

Python运算符-位运算符的实际运用与深入分析

Python中flask_migrate,flask_script的使用介绍(附代码)

Python中判断语句与循环语句的简单小结(附示例)

Python到底是什么类型的语言

Python怎样在excel中应用?

解析Python中executemany和序列用法教程

更多相关阅读请进入《Python》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...