Master-X
Форум | Новости | Статьи
Главная » Форум » Программинг, Скрипты, Софт, Сервисы » 
Тема: Войти на сайт с помощью Сurl
цитата
26/04/22 в 14:38
 fredsazx
изучаю PHP, пытаюсь залогинится на сайте badoo.com но чет не получается, появляются три точки и все, может кто подскажет в чем проблема?

Код:

$url = "https://badoo.com/en-us/signin/?f=top";

$params = [
'email' => 'sssss@gmail.com',
'password' => 'pass',
'remember' => '1'
];

// создание нового cURL ресурса
$ch = curl_init();



// установка URL и других необходимых параметров
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));
curl_setopt($ch, CURLOPT_COOKIEFILE, "cookie.txt");
curl_setopt($ch, CURLOPT_COOKIEJAR, "cookie.txt");
// загрузка страницы и выдача её браузеру
$content = curl_exec($ch);

echo $content;
цитата
28/04/22 в 05:45
 Skyworker
Может быть дело в том, что сайт работает на https?
цитата
28/04/22 в 13:41
 fredsazx
Цитата:
Может быть дело в том, что сайт работает на https?


добавил два параметра
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

непомогло
промониторил куда отправляются запросы и в каком виде, подредактировал код но все равно не удается войти icon_cry.gif
session_start();

$url = "https://badoo.com/webapi.phtml?SERVER_LOGIN_BY_PASSWORD";

$params = [
'email' => 'mail@gmail.com',
'password' => 'ZAQ!2wsx',
];

// создание нового cURL ресурса
$ch = curl_init();



// установка URL и других необходимых параметров
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36');

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);

curl_setopt($ch, CURLOPT_POST, true);

curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));
curl_setopt($ch, CURLOPT_COOKIEJAR, __DIR__."/cookie.txt");
curl_setopt($ch, CURLOPT_COOKIEFILE, __DIR__."/cookie.txt");

// загрузка страницы и выдача её браузеру
$content = curl_exec($ch);


if(curl_exec($ch) === false)
{
    echo 'Ошибка curl: ' . curl_error($ch);
}
else
{
    echo 'Операция завершена без каких-либо ошибок';
}


echo $content;
цитата
11/05/22 в 17:27
 Alexs
fredsazx писал:
изучаю PHP, пытаюсь залогинится на сайте badoo.com но чет не получается, появляются три точки и все, может кто подскажет в чем проблема?

Код:

$url = "https://badoo.com/en-us/signin/?f=top";

$params = [
'email' => 'sssss@gmail.com',
'password' => 'pass',
'remember' => '1'
];

// создание нового cURL ресурса
$ch = curl_init();



// установка URL и других необходимых параметров
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($params));
curl_setopt($ch, CURLOPT_COOKIEFILE, "cookie.txt");
curl_setopt($ch, CURLOPT_COOKIEJAR, "cookie.txt");
// загрузка страницы и выдача её браузеру
$content = curl_exec($ch);

echo $content;

твой код работает но он тебе не поможет

В соврименном мире доебоватся до чужих сайтов через php + curl не лучшая идея точнее херовая.

Если перехватить запрос баузора по нажатию кнопки мы увидим докуя интересного чего Код:

curl 'https://badoo.com/webapi.phtml?SERVER_LOGIN_BY_PASSWORD' -H 'User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/23100101 Firefox/91.0' -H 'Accept: */*' -H 'Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3' --compressed -H 'Referer: https://badoo.com/en-us/signin/?f=top' -H 'Content-Type: application/json' -H 'X-Pingback: a9705944c323fabcf8713b00bff5f15d69' -H 'X-Message-type: 15' -H 'X-User-id: ' -H 'X-Use-Session-Cookie: 1' -H 'Origin: https://badoo.com' -H 'Connection: keep-alive' -H 'Cookie: session=s1:9999:Tr9MElXHhErgS76FqscAk1b31RpUOWT43CaU94GMLd; session_cookie_name=session; device_id=c3496cea-6ce3a-ea67-67c9-c947b892f0e4; consentUUID=f84a339c-2eed-4472-8774-1dd5c67f4995; ccpaUUID=46bc72f1-b0b1-41f1-b729-4f8cae0da57d; dnsDisplayed=false; ccpaApplies=false; signedLspa=false; cookie_settings=%7B%22functional%22%3Atrue%2C%22analytics%22%3Atrue%7D; first_web_visit_id=b89dd127a49e7942ab7876d9d91b4f955b0a5ada; HDR-X-User-id=; cclick=signin%2C1652278064568' -H 'Sec-Fetch-Dest: empty' -H 'Sec-Fetch-Mode: cors' -H 'Sec-Fetch-Site: same-origin' -H 'Pragma: no-cache' -H 'Cache-Control: no-cache' --data-raw '{"$gpb":"badoo.bma.BadooMessage","body":[{"message_type":15,"server_login_by_password":{"remember_me":true,"user":"","password":"","stats_data":"JTE5dm5ybnNuc24lMTklMTlvcyU3Qm52JTdCcXFucXR3cnZwJTFGbiUxOW9wdm52cXV1bm92cXpydWx1cyU3QndycHF6JTdCcnUlMUZuJTE5b3AlN0JucXF1c25vd3V0d3JscnFwcCU3QnpxdnFydXYlMUZuJTE5b3FybnByc3Rub3ZxdCU3QnVsdnF0JTdCJTdCd3V1enN2JTFGbiUxOW92d25wd3RwbiU3QnR3cHFsc3R2cHB2JTdCdHVwdCUxRm4lMTlzdXVucHV3bm9zc3Zyc3ZybHJxdnR1enRxd3YlMUZuJTE5c3VybnAlN0J2cW5zd3VycHVsc3d0dHpxc3R1cXolMUZuJTE5c3R6bnVzc3Juc3ZwcHJzd2x6dnB6dXF1dXJ1JTFGbiUxOXN0d253cXJ0bm9zd3FzdyU3Qmx2JTdCcXV3dXFwdnV0JTFGbiUxOXN3dm5zd3pxbm9xcnRxdXFsdXBydXp3d3UlN0JzJTFGbiUxOXNwc25zendub3N0cXJxbHF2c3YlN0J1JTdCenV2dHMlMUZuJTE5c3YlN0JucHFxbnd3JTdCbHV1c3F6cyU3QnJ3c3Z6JTdCJTFGbiUxOXN3c25xcnFudXBybHQlN0J2c3IlN0J6d3CU3QnIlN0JycyUxRm4lMTlybnNwcm5vcHMlN0J0JTFGbiUxOXJucHNwd250enN1ciUxRm4lMTlybnBzd3Juc3J1dyUxRm4lMTlybnFwc3ZudnV6enIlMUZuJTE5cm5wdHR1bm9wdHB3dCUxRm4lMTlybnFzdnFucHIlN0J2diUxRm4lMTlvdW5wcnN0bm9xdHF2dmx0d3UlN0JwJTdCcXAlN0J6dCUxRm4lMTlvdW5zdnpzbm9zcXZ1cmwlN0J3d3UlN0Jxend3c3R2JTFGbiUxOW9zem51dnZubyU3QnFwcGxxJTdCdnd2cHN1dHF6cCUxRm4lMTlvcSU3Qm5wenZub3R3cXVsenB6cXp3dHFxenVwJTFGbiUxOW93dG5xcHpudnV3bCU3QnFwdXR6cXRzcHZ0dHYlMUZuJTE5b3V3bnolN0JxbnNzc3JybHZ6enVwdSU3QnUlN0J3cnAlMUZuJTE5byU3QnJuc3Z0dW5zcHRweiUxRm4lMTlvc3J6bnN6JTdCdW5zcHBxemxyc3Z3dnZ6d3N0cCU3QiUxRm4lMTlvc3F3bnB0d3BucXBycXNsJTdCcXVzenV1d3J0cnQlMUZuJTE5b3N3cG5xcHZxbnFydHRxbHVxc3p0dHpzdHByeiUxRm4lMTlvc3R2bnN0c3pub3Z1cXBybHVzdnB6cnFwcXF0dCUxRm4lMTlvc3V3bnR3dSU3Qm53enV2JTdCdGxxd3V6dHZ2d3dwJTFGbiUxOXN0em5xenN6bm9zd3pzcHRscnN3enBwenB2cnElMUZuJTE5c3dxbnN1eiU3Qm5vd3Z2dnFsdXpxc3N0c3R2enolMUZuJTE5c3ElN03JucXByem56dHdycmx6cHZ1c3B6cXN3JTFGbiUxOXNwdm5wcnJxbm92cXZ2dGx6JTdCcHp0JTdCcXZzcnUlMUZuJTE5c3MlN0JucHN6c25zcHJxcWxzc3clN0J1cHN6cHV0dCUxRm4lMTlzc3puJTdCcHFub3d3dXBwbHZ2cHBwJTdCcXByend3JTFGbiUxOW91JTdCbnAlN0Jxbm91c3N1cmx2enZyd3J0cHFzcyUxRm4lMTlvc3Fud3RxbnZ1c3dscXZ1cHpxcnV2dXJ2JTFGbiUxOW96bnUlN0J0bnVyd3NsenclN0J0c3B6JTdCdHZ2d3clMUZuJTE5b3NzbnNzcXRucHJ2dXJsdXNydXpxJTdCdnQlN0JycSUxRm4lMTlvc3Zuc3d2dG53cnVzbHZzJTdCJTdCcyU3QndyJTdCdXBxJTFGbiUxOW9zcm56c3Fub3ByenZ6bHR0dnB2JTdCdXV6dCU3QiUxRm4lMTlvJTdCbnN3dnVucyU3QnFyemx3cHdxdXIlN0JxcSU3QnclMUZuJTE5byU3Qm52cXpub3N2d3p0bHRzdXclN0IlN0J1cnZzenolMUZuJTE5b3NybnF2cW5vcHBzdWx1JTdCdXFxcnR6dHZ0cSUxRm4lMTlvc25zcHR3biU3QnR6cHVsd3RycXNwc3F2cHUlMUZuJTE5b3Ruc3F2c25wc3ZybHN1JTdCdnFzdXAlN0IlN0J0dCUxRm4lMTlvc3Vuc3pwdG5wdXZ3dWxzdHolN0JzenN3cXBxJTFGbiUxOW9wd25wcHJ1bnNwdHNxbHF2dnF0cHBwcHIlN0J6JTFGbiUxOW9wcG5zd3p2bm9zdHV1dmx1enpxdXZwcHElN0J6JTFGbiUxOW9xdG5zc3Rxbm91enFzbHJ3cHR1d3J6dXpzcSUxRm4lMTlvcXZuc3JycG5vcCU3QnJwbHZ0enV1dHV2endzcyUxRm4lMTlvdnBuJTdCJTdCc25vc3RxbHdwdHV3dHBwcndycXd0JTFGbiUxOXN1c25xdG5vc3N0c3pscnV0dnFwenQlN0J3JTdCJTdCJTFGbiUxOXZucHAlN0Juc3Jwd3psciU3QnJ1ciU3QnB6eiU3QnF1JTFGbiUxOXJucHolN0J3bnN2dHRxciUxRm4lMTlvdW53JTdCcnNucHZ6cXN6bHN0cHN1c3JxdnMlMUZuJTE5b3Rud3FwdW5vd3MlN0J1dWwlN0JzcnQlN0JwJTdCcnp1dSUxRm4lMTlvJTdCbndwdnBub3V3dXZscnR1dyU3QiU3QnF6c3Z3dXclMUZuJTE35b3FudnpwJTdCbm9xcSU3QnJ0bHB0enV2cyU3QnFycXJ2JTFGbiUxOW90bndycHduc3d1d3pscHJ2JTdCdXElN0JzdXd3dCUxRm4lMTlvdG52diU3Qndub3Zyd3JwbHd2cXNxcnJxcnVxJTFGbiUxOW9zcm5wc3d6bm964lNjAxNyUyMCUyRiUyQjYlNjAlMUZucm5ybnJucm5ybnJucm5ybnJuc3Nucm5ybnJucm5zbnNucm5ybnNucm51bnVuc24lMTklMTlzdHdwcHV6cnd1cnpxbnNybiUxOXZxdW5wc3MlMUYlMUZuJTE5cyU3QndybnNybiUxOXclN0JzbnZzdiUxRiUxRm4lMTlwc3R1bnNybiUxOXNzdnVucHR2JTFGJTFGbiUxOXBxenFuc3JuJTE5c3Jxcm5wd3clMUYlMUZuJTE5cHRyc25zcm4lMTl6d3RucXdwJTFGJTFGbiUxOXB6c3Ruc3JuJTE5c3B1em5wcXAlMUYlMUZuJTE5cXBycG5zcm4lMTlzcHd1bnBwJTdCJTFGJTFGbiUxOXF2c3duc3JuJTE5c3J1cG5wdHElMUYlMUZuJTE5cXRxcW5zcm4lMTl6cXBucXJxJTFGJTFGbiUxOXElN0JxcW5zcm4lMTl1dHducXdwJTFGJTFGbiUxOXZwcXFuc3JuJTE5dXUlN0JucXF6JTFGJTFGbiUxOXZ2diU3Qm5zcm4lMTl2cW52c3olMUYlMUZuJTE5dHd6cW5zcm4lMTl1JTdCdW52cXUlMUYlMUZuJTE5dHUlN0IlN0Juc3JuJTE5enRwbnFxdSUxRiUxRm4lMTl1cnFxbnNybiUxOXp3JTdCbnFydiUxRiUxRm4lMTl1cHYlN0Juc3JuJTE5enB2bnFwciUxRiUxRm4lMTl1dnpybnBzbiUxOXpwdm5xcHJuJTYwJTIwNzY2LSUyQ2wlMjA2JTJDbCUyMDYlMkNvbyUyMC4tISklNjAlMUYlMUYlMUZuenRuJTYwJTBGLTglMkIuLiUyM213bHJiaiUxQXNzeWIlMEUlMkIlMkM3JTNBYiUzQXp0JTFEdHZ5YjA0eCU3QnNscmtiJTA1JyEpLW1wcnNycnNyc2IlMDQlMkIwJyUyNC0lM0FtJTdCc2xyJTYwbiU2MDA3byUxMCUxNyU2MG5wdm5ybnZub3N6cm5zbnNuc25ybnJuJTYwJTBFJTJCJTJDNyUzQWIlM0F6dCUxRHR2JTYwbiU2MCUwRSUyQiUyQzclM0FiJTNBenQlMUR0diU2MG42MDcnbiUyNCUyMy4xJ24lMkM3Li5uNjA3J24lMjQlMjMuMSduJTI0JTIzLjEnbiUyNCUyMy4xJ24lMTlybiUyNCUyMy4xJ24lMjQlMjMuMSclMUZuJTI0JTIzLjEnbiUxOXMlN0Jwcm5zcnpyJTFGbiUxOXMlN0Jwcm5zcnpyJTFGbnNuJTE5JTFGbiUxOSUxRm4lMjQlMjMuMSduJTE5JTI0JTIzLjEnbiUyNCUyMy4xJyUxRiUxRg=="}}],"message_id":2,"message_type":15,"version":1,"is_background":false}'




А имено что пароль надо слать на этот url https://badoo.com/webapi.phtml?SERVER_LOGIN_BY_PASSWORD
И еще до куя чего.




Поэтому надо использовать Selenium + Python или Selenium + java
Вот пример нечего сложного
цитата
29/09/22 в 23:57
 Quattronium
Не знаю, актуально ли еще, но может, на будущее кому поможет.
В общем, curl'ом стало проблематично заходить на сайты. Крупные площадки (а к ним относится Badoo) палят такое. Во-первых, надо ставить человеческий useragent.
Во-вторых, внимательно смотрел запросы в консоли при логине? У меня был случай, когда js-скрипт при логине через браузер отправлял какое-то специальное событие (не помню, какое, давно это было), я этот запрос просмотрел и штук 5 акков у меня погорело (не Баду, другой какой-то сервис был). Так что надо *очень* внимательно смотреть лог запросов в DevTools.

И потом, как подсказывает товарищ Alexs,
Alexs писал:
В соврименном мире доебоватся до чужих сайтов через php + curl не лучшая идея точнее херовая.


В зависимости от технологий сайта, иногда бывает проще, лучше, надежнее и быстрее заюзать Puppeteer (при всей моей нелюбви к Ноде). Selenium хорош, конечно, но он для другого предназначен, и палится он тоже, там флаг стоит, что это автоматизированный запрос отправляется. Хотите убрать флаг - компильте его без флага самостоятельно. Честно, мне было лень заморачиваться, я юзаю Puppeteer.

Curl хорош и он до сих пор используется, когда надо по-быстрому что-то сделать и проверить, но если имеешь дело с PWA или просто "heavy js" сайтом, на курлах далеко не улетишь - слишком уж много ручной работы добавляется без гарантий остаться незамеченным.


Эта страница в полной версии