前言:我一个月前开始学习 Python,请不要对我大喊大叫 :)
我有一个用 PHP 编写的完整开发站点,具有我需要的所有功能,以及在数据库中插入“东西”的页面。我正在开发一个命令行程序来插入相同的内容并将它们发送到 $_POST 数组中的 PHP 脚本,但我不知道如何发送文件以便它出现在 $_FILES 数组中。
这是我到目前为止所拥有的:
我使用 urllib 模块发送 $_POST 值,它工作得很好
import urllib.request
import urllib.parse
data=urllib.parse.urlencode({"hello":"Yo!", "some":"AlphaBetaParkingLot"})
data=data.encode('utf_8')
request=urllib.request.Request("http://www.site.it/read_from_py.php")
f=urllib.request.urlopen(request, data)
out=f.read().decode('utf-8')
if out[0]=="1":
print("Connection acquired!")
else:
print("No connection!")
print("Exit!")
#Then actually exit!
...我通过提示选择文件对话框从本地计算机读取文件名...
from tkinter import Tk
from tkinter.filedialog import askopenfilename
Tk().withdraw()
filename=askopenfilename()
...但是我不知道如何处理文件名。我环顾四周,没有看到如何将其发送到 PHP 中的 $_FILES。
我有一个“肮脏”的解决方案:仅使用文件创建一个带有表单的临时 html 并从那里进行选择,但我想知道是否有更清洁的解决方案。
谢谢!
PS 如果你想知道我是否在 PHP 脚本中有我需要的所有东西,我为什么需要这个 Python 程序?好吧,你是对的,我不需要它,但这不取决于我......