我正在尝试通过Python将一些数据提交到PHP表单。
网页设置如下:
<body>
<form action="do_process.php" method="post">
Date: <input type="text" name="Date"><br>
Value old: <input type="text" name="OldVal"><br>
Value new: <input type="text" name="NewVal"><br>
<input type="submit" name="ClickMe" value="ClickMe">
</body>
其中“ do_process.php”将输入的值写入服务器上的文本文件。通过单击按钮手动执行此操作可以正常工作,并且文本文件将更新。
在Python中,我使用“请求”从网站获取数据并将其发布回去:
def write_data(Date, OldVal, NewVal):
url='http://mypage.somewhere/display.php'
payload = {'Date':Date, 'OldVal':OldVal, 'NewVal':NewVal, 'Submit':'ClickMe'}
res=requests.post(url, data=payload)
print(res.text)
[当我在python中调用该函数时,我得到了整个页面的HTML列表,它们来自res,但是文本文件没有得到更新。同时切换到
payload = {'Date':Date, 'OldVal':OldVal, 'NewVal':NewVal, 'ClickMe':'Submit'}
没什么区别。
我想,我错过了一些非常明显的东西,但是无法引起我的注意。
有什么想法吗?
[单击“提交”时,它将调用“ do_process.php”并将表单的所有值传递到此页面,因此在python脚本中,您不应调用“ display.php”,而应直接调用“ do_process .php“