Python请求 - 无法获得POST表单响应(仅返回表单)

问题描述 投票:1回答:1

我正在尝试使用Python的Requests模块填写POST表单,然后获取输出。许多网站似乎都使用此代码作为示例。但是,它只保留返回表单。我创建了一个简单的POST表单,它似乎也返回了表单本身。这是Python代码:

import requests

url = 'http://127.0.0.1/test.html'
data = { 'name': 'Test','age': '52'}

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

“测试”HTML表单:

<html>
    <head>
        <title>Test page</title>
    </head>
    <body>
        <form action='test.php' method='post'>
            <input name='name' type='text'>
            <br>
            <input name='age' type='text'>
            <br>
            <input name='calculate' type='submit' value='Submit test'>
        </form>
    </body>
</html>

“测试”PHP表单:

<?php

    $name = $_POST['name'];
    $age = $_POST['age'];

    echo "$name, $age";

?>

我可以确认表单本身没有任何浏览器问题。有谁知道是什么导致了这个问题?

web-scraping
1个回答
2
投票

你可以直接发布到php页面。

import requests

url = 'http://127.0.0.1/test.php'
data = { 'name': 'Test','age': '52'}

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

基于@WeavingBird1917的评论:

import requests

url = 'http://www.mso.anu.edu.au/cgi-bin/ephem.cgi'
data = { 'action': 'display','date': 'today','latitude':'-35:19:12','longitude':'149:00:30','timezone':'+10:00'}


r = requests.post(url, data=data)
print(r.text)
© www.soinside.com 2019 - 2024. All rights reserved.