Здравствуйте, тренируюсь писать бота, хочу написать бота который будет авторизоваться в Twitter.com и показывать ленту новостей.
Я написал код который предоставлю ниже, суть в том что токен отправляю правельный, логин и пароль тоже - но твиттер выдает "Введённые имя пользователя и пароль не совпадают с сохранёнными в нашей базе данных. Проверьте правильность введённых данных и повторите попытку."
Код:
<?php
function request($url, $postdata = null, $cookiefile = 'twitter/cookie.txt')
{
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:47.0) Gecko/20100101 Firefox/47.0');
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookiefile);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookiefile);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, $cookiefile);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, $cookiefile);
if ($postdata)
{
curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata);
}
$html = curl_exec($ch);
curl_close($ch);
return ($html);
}
file_put_contents('tmp/cookie.txt', '');
$post = [
'session[username_or_email]'=> 'login',
'session[password]' => 'password,
'authenticity_token' => 'f4d8cfaac656c87486a3abc9ff1f29e50f34d31b',
'ui_metrics' => '',
'scribe_log' => '',
'redirect_after_login' => '',
'authenticity_token' => 'f4d8cfaac656c87486a3abc9ff1f29e50f34d31b',
'remember_me' => '1',
];
$html = request('https://twitter.com/sessions', $post);
echo $html;
?>