Python脚本将图像发送到PHP
大家好。有人能帮我吗?我的任务是创建一个Python脚本(客户端),用来把图片发送到PHP(服务器端)。
注意:这个Python脚本是在不同的树莓派上运行,而PHP服务器只通过互联网接收图片。
目前的成就:我已经可以从客户端发送文本数据到服务器了。
问题:我最大的难题是,怎么才能发送图片呢?
任何评论和建议都非常感谢。谢谢大家。
我的Python脚本:
import urllib2
from urllib import urlencode
# 192.168.5.149 is the ip address of server
url = "http://192.168.5.149/server/server.php"
data = {'test':'OK'}
encoded_data = urlencode(data)
website = urllib2.urlopen(url, encoded_data)
print website.read()
我的PHP脚本:
<?php
echo $_POST['test'];
?>
当我运行Python脚本时,PHP服务器返回了“ok”。这意味着连接成功。
编辑:
Python客户端:
import requests
url = 'http://messi-fan.org/post'
files = {'file': open('image.png', 'rb')}
r = requests.post(url, files=files)
PHP服务器:
<?php
$file_path = "C:\\xampp\htdocs\server\php\\";
$file_path = $file_path.basename( $_FILES['file']['name']);
?>
1 个回答
9
你可以使用requests模块来实现这个功能。这个模块非常简单易用。
import requests
url = 'http://messi-fan.org/post'
files = {'file': open('image.png', 'rb')}
r = requests.post(url, files=files)
在PHP中也是一样的。
<?php
print_r($_FILES);
move_uploaded_file($_FILES["file"]["tmp_name"],$_FILES["file"]["name"]);