PHP-填写表单并将请求发送到其他网站

PHP-填写表单并将请求发送到其他网站,php,Php,若任何网站并没有API,我可以向网站发送post&get请求并获取数据吗 例如: 并将我重定向到: http://site1.com/?send=INPUT&id= 谁能解释一下原因吗?以及如何使用php发送请求以获取数据?您可以尝试以下方法,并查看响应: $url = 'http://site1.com/index.php'; $data = ["send" => "Test"]; $ch = curl_init($url); curl_setopt($ch, CURLOP

若任何网站并没有API,我可以向网站发送post&get请求并获取数据吗

例如:

并将我重定向到:

http://site1.com/?send=INPUT&id=

谁能解释一下原因吗?以及如何使用php发送请求以获取数据?

您可以尝试以下方法,并查看响应:

$url = 'http://site1.com/index.php';
$data = ["send" => "Test"];
$ch = curl_init($url);

curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);
curl_close($ch);
var_dump($response);

是的,例如,您可以在php中使用curl并向该端点发送POST请求,这将以字符串形式给出完整响应。然后您可以从中提取数据。“但当我编写GET方法时”-嗯,表单使用的是POST。您是否尝试过使用POST复制表单正在执行的操作?我真的不清楚你们到底想做什么,或者问题出在哪里。@Flame我用了下面的答案,它成功了。现在我怎样才能得到具体的数据?如何提取?这取决于格式。可以是JSON,可以是XML,可以是完整的HTML页面。有足够的资源可以找到这些问题的解决方案。@当我使用代码时,输出是完整的网站。你能发送任何资源吗?成功了。输出显示我完整的网站。如何获取具体数据?网络抓取是您必须搜索才能找到答案的关键字。例如:
http://site1.com/?send=INPUT&id=
$url = 'http://site1.com/index.php';
$data = ["send" => "Test"];
$ch = curl_init($url);

curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);
curl_close($ch);
var_dump($response);