Python基础 之 Python urllib 7
Python urllib
表单 POST 传递数据,我们先创建一个表单,代码如下,我这里使用了 PHP 代码来获取表单的数据:
实例 - py3_urllib_test.php 文件代码:
<!DOCTYPE html>
Name:
Tag:
<?php
// 使用 PHP 来获取表单提交的数据,你可以换成其他的
if(isset($_POST['name']) && $_POST['tag'] ) {
echo $_POST["name"] . ', ' . $_POST['tag'];
}
?>
实例
import urllib.request
import urllib.parse
url = 'https://www.baidu.com/try/py3/py3_urllib_test.php' # 提交到表单页面
data = {'name':'baidu', 'tag' : '百度'} # 提交数据
header = {
'User-Agent':'Mozilla/5.0 (X11; Fedora; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36'
} #头部信息
data = urllib.parse.urlencode(data).encode('utf8') # 对参数进行编码,解码使用 urllib.parse.urldecode
request=urllib.request.Request(url, data, header) # 请求处理
reponse=urllib.request.urlopen(request).read() # 读取结果
fh = open("./urllib_test_post_baidu.html","wb") # 将文件写入到当前目录中
fh.write(reponse)
fh.close()
执行以上代码,会提交表单数据到 py3_urllib_test.php 文件,输出结果写入到 urllib_test_post_baidu.html 文件。