python3 post方式上传文件。

借助第三方库: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文件内新增:

 

posted @ 2015-09-28 16:38  宁静的天空  阅读(18180)  评论(0编辑  收藏  举报