Я пытаюсь получить результаты веб-страницы, созданной после отправки формы. В форме есть 2 входа: 1- Название города 2- Дата. Когда я проверяю страницу в Chrome на предмет того, какие заголовки отправляются, я получаю следующее:
------WebKitFormBoundarymHxte4apsmNuBb5n
Content-Disposition: form-data; name="town"
CENTER
------WebKitFormBoundarymHxte4apsmNuBb5n
Content-Disposition: form-data; name="Date_Start"
17-05-2020
------WebKitFormBoundarymHxte4apsmNuBb5n--
Граница, которая в данном случае «mHxte4apsmNuBb5n», меняется при каждой подаче.
Я пробовал этот код безрезультатно:
function curl($url) {
//POST string
$postfields['town'] = 'CENTER';
$postfields['Date_Start'] = '17-05-2020';
$headers = array("Content-Type:multipart/form-data; boundary=gc0p4Jq0M2Yt08jU534c0p");
$options = Array(
CURLOPT_RETURNTRANSFER => TRUE,
CURLOPT_FOLLOWLOCATION => TRUE,
CURLOPT_AUTOREFERER => TRUE,
CURLOPT_CONNECTTIMEOUT => 120,
CURLOPT_TIMEOUT => 120,
CURLOPT_MAXREDIRS => 10,
CURLOPT_USERAGENT => "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1a2pre) Gecko/2008073000 Shredder/3.0a2pre ThunderBrowse/3.2.1.8",
CURLOPT_URL => $url,
CURLOPT_CAINFO => dirname(__FILE__)."/cacert.pem",
CURLOPT_POSTFIELDS => $postfields,
CURLOPT_HTTPHEADER => $headers,
);
$ch = curl_init();
curl_setopt_array($ch, $options);
$data = curl_exec($ch);
curl_error($ch);
curl_close($ch);
return $data;
}
$scraped_page = curl("http://...");
echo $scraped_page;
Любая помощь будет оценена.