python3 post方式上传文件。

简介: 借助第三方库:Requests 其官网地址:   http://python-requests.org       官网上写的安装方式:http://docs.python-requests.

借助第三方库:Requests

其官网地址:

 
 
 
 
官网上写的安装方式:http://docs.python-requests.org/en/latest/user/install/#install
 
最终安装实现的方式:
控制台下通过cd命令切换路径到,下载后解压到的路径:
python  setup.py install
 
 
上代码,如下:
 
Python上传的代码:
import requests
 
url = 'http://www.test.com/doFile.php'
#url = 'http://www.test.com/doPost.php'
#files = {'file': open('D:/tmp/1.jpg', 'rb')}

# 要上传的文件
files = {'file123': ('1.jpg', open('D:/tmp/1.jpg', 'rb'))
        }     #显式的设置文件名
            
# post携带的数据            
data = {'a':'杨','b':'hello'}

 
r = requests.post(url, files=files, data = data)
print(r.text)

 

PHP的doFile.php:

<?php 

header("content-type:text/html;charset=utf-8");
date_default_timezone_set("PRC");

$pImg=$_FILES['file123'];

//echo json_encode($pImg);
//echo '\n<br>';

//echo json_encode($_FILES);
//echo '\n<br>';

//echo '_REQUEST';
//echo json_decode($_REQUEST);
//echo '\n<br>';
//print_r($pImg);

$request_arg = 'request,:';
$request_arg .= json_encode($pImg);

foreach ($_REQUEST as $key => $value) 
{
	$request_arg .=  $key.'='.$value.",";
}
$request_arg .=  "\n";
	
$myfile = fopen("file.txt", "a") or die("Unable to open file!");
fwrite($myfile, $request_arg);
fclose($myfile);

if($pImg['error']==UPLOAD_ERR_OK)
{
  //取得扩展名
  $extName=strtolower(end(explode('.',$pImg['name'])));
  $filename=date("Ymdhis").".".$extName;
  $dest="uploads/".$filename;
  move_uploaded_file($pImg['tmp_name'],$dest);
  echo "上传成功";
}
else
{
  echo "上传错误";
}
?>

 

 

上传一次后file.txt文件内新增:

 

相关文章
|
API 开发工具 开发者
Python实现post请求速卖通商品详情数据接口
Python实现post请求速卖通商品详情数据接口
|
数据采集 前端开发 数据库
Python实现post请求虾皮shopee商品详情数据接口
Python实现post请求虾皮shopee商品详情数据接口
|
API Python
Python实现post请求lazada商品详情数据接口
Python实现post请求lazada商品详情数据接口
|
10月前
|
JSON 数据格式 Python
解决Python requests库POST请求参数顺序问题的方法。
总之,想要在Python的requests库里保持POST参数顺序,你要像捋顺头发一样捋顺它们,在向服务器炫耀你那有条不紊的数据前。抓紧手中的 `OrderedDict`与 `json`这两把钥匙,就能向服务端展示你的请求参数就像经过高端配置的快递包裹,里面的商品摆放井井有条,任何时候开箱都是一种享受。
197 10
|
10月前
|
XML JSON 安全
分析参数顺序对Python requests库进行POST请求的影响。
最后,尽管理论上参数顺序对POST请求没影响,但编写代码时仍然建议遵循一定的顺序和规范,比如URL总是放在第一位,随后是data或json,最后是headers,这样可以提高代码的可读性和维护性。在处理复杂的请求时,一致的参数顺序有助于调试和团队协作。
271 9
|
JSON API 数据格式
使用Python发送包含复杂JSON结构的POST请求
使用Python发送包含复杂JSON结构的POST请求
|
开发者 Python
Python POST 请求超时配置
Python POST 请求超时配置
350 1
Python3.x常用时间的处理方法 和urlopen处理post请求,传值data 原创
Python3.x常用时间的处理方法和urlopen处理post请求,传值data 原创
159 0
|
JSON 数据格式 Python
python3 服务端使用CGI脚本处理POST的Json数据
python3 服务端使用CGI脚本处理POST的Json数据
255 6
|
前端开发 API Python
如何在Python中接收前端POST上传的文件
如何在Python中接收前端POST上传的文件
1647 2

推荐镜像

更多