有一个特定的网站,我想通过口香糖远程连接。用户名和密码字段没有名称的问题。
我的问题是:
我的代码:
Login.php
<?php
require("master/guzzle/vendor/autoload.php");
$username = "abc";
$password = "123456";
$client = new \GuzzleHttp\Client();
$response = $client->post('https://www.exmaple.com/login', [
'body' => [
'username' => $username,
'password' => $password,
'action' => 'login'
],
'cookies' => true
]
);
echo $response;
?>Example.com/登录
<form>
<div class="login-name">
<div data-nep="Label" class="name-font default neptune_block_15yk4 neptune_LABEL-STANDARD_1h3i4">Username
<div class="neptune_fade-after_15yk4"></div>
</div>
<div data-nep="TextBox">
<input type="text" placeholder="" value="" class="neptune_default_1jbvk" style="height:30px">
</div>
</div>
<div class="login-name">
<div data-nep="Label" class="name-font default neptune_block_15yk4 neptune_LABEL-STANDARD_1h3i4">Password
<div class="neptune_fade-after_15yk4"></div>
</div>
<div data-nep="TextBox">
<input type="password" placeholder="" value="" class="neptune_default_1jbvk" style="height:30px">
</div>
</div>
</form>发布于 2019-05-26 10:58:22
它是ajax登录表单吗?如果是这样的话,我认为在文件中输入数据之后,表单将调用原始登录控制器的Ajax调用。因此,您必须找到请求和post参数名称。
使用Firefox或chrome按F12显示Web,转到Network并选择XHR过滤ajax请求。
在您的情况下,当提交表单时,会有一个回调到另一个页面,单击右边的params选项卡会显示您想要的帖子数据。

$response = $client->request('POST', 'https://api.moodys.com/rest/mobile/oauth/token?client=0', [
'form_params' => [
'username' => 'test@gmail.com',
'grant_type' => 'password',
'password' => 'testpassword',
]
])https://stackoverflow.com/questions/56312847
复制相似问题