bo11
16-03-2020, 09:20
Всем привет,есть парсер на рутрекер. Он обрабатывает текст регулярными выражениями. Не давно на рутрекере появилась кнопочка код. При нажатии на нее,появляется готовый набор ббкодов. Пытаюсь получить этот набор...проблема в том,что он висит на аякс запросе. Проверил пост-запрос через сервис https://tools.seo-zona.ru/postget.html. Там всё проходит удачно. Пытаюсь сделать это через парсер:
вот POST запрос из браузера:
action=view_post&post_id=74212646&mode=text&form_token=1cc9fujhyyuyj
Делаю такой же запрос через cURL
$post_data = [
"action" => "view_post",
"post_id" => "$post_id",
"mode" => "text",
"form_token" => "$form_token"
];
В ответ получаю
"{"error_code":1,"error_msg":"Запрос не был обработан [ошибочная подпись формы]. Обновите страницу и повторите запрос еще раз","action":""}"
вроде данные передаются
array:4 [▼
"action" => "view_post"
"post_id" => "74212646"
"mode" => "text"
"form_token" => "1cc9fd83032ebd4af2d6e478076231c9"
]
Вот курл
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://rutracker.org/forum/ajax.php');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); // On dev server only!
$output = curl_exec($ch);
Говорю сразу...я начинающий пользователь,не всё знаю.
вот POST запрос из браузера:
action=view_post&post_id=74212646&mode=text&form_token=1cc9fujhyyuyj
Делаю такой же запрос через cURL
$post_data = [
"action" => "view_post",
"post_id" => "$post_id",
"mode" => "text",
"form_token" => "$form_token"
];
В ответ получаю
"{"error_code":1,"error_msg":"Запрос не был обработан [ошибочная подпись формы]. Обновите страницу и повторите запрос еще раз","action":""}"
вроде данные передаются
array:4 [▼
"action" => "view_post"
"post_id" => "74212646"
"mode" => "text"
"form_token" => "1cc9fd83032ebd4af2d6e478076231c9"
]
Вот курл
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://rutracker.org/forum/ajax.php');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); // On dev server only!
$output = curl_exec($ch);
Говорю сразу...я начинающий пользователь,не всё знаю.