首页 > 解决方案 > Curl GET 请求将我重定向到一个页面以选择位置

问题描述

我想从此链接获取 html 内容

https://store.nike.com/in/en_gb/pw/boys-shoes/7pvZoi3

为此,我创建了以下 curl 请求 php 脚本

$ua = 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.A.B.C Safari/525.13';

$ch = curl_init();

curl_setopt($ch,CURLOPT_URL, 'https://store.nike.com/in/en_gb/pw/boys-shoes/7pvZoi3');

curl_setopt($ch, CURLOPT_HEADER, true);

curl_setopt($ch, CURLOPT_RETURNTRANSFER,true);
curl_setopt($ch, CURLOPT_USERAGENT, $ua);
curl_setopt($ch, CURLOPT_COOKIE, '<Pasted_cookie>');

curl_setopt($ch, CURLOPT_AUTOREFERER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_MAXREDIRS, 20);


$result = curl_exec($ch);
$last = curl_getinfo($ch, CURLINFO_EFFECTIVE_URL);
curl_close($ch);
print_r($result);

但是上面的脚本将我重定向到向我显示选择区域的屏幕的页面。请帮助我,因为我需要更改以使脚本正常工作。

谢谢。

标签: phpcurlweb-scraping

解决方案


要设置位置,总会有一个网络调用在 cookie 或其他地方设置您的位置,完全依赖于网络。您可以做的是,找到该调用,首先模拟位置调用以设置位置,然后使用相同的 cookie 访问主页。


推荐阅读