php - 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);
但是上面的脚本将我重定向到向我显示选择区域的屏幕的页面。请帮助我,因为我需要更改以使脚本正常工作。
谢谢。
解决方案
要设置位置,总会有一个网络调用在 cookie 或其他地方设置您的位置,完全依赖于网络。您可以做的是,找到该调用,首先模拟位置调用以设置位置,然后使用相同的 cookie 访问主页。
推荐阅读
- python - QWebEngineView 适用于 Windows,但 Pyside2 中的 OSX 上的灰色空白页面
- javascript - 按 JavaScript 中的第一个元素对 2d 数组进行排序
- flutter - I/chatty - 控制台输出中的 1 行相同
- json - 使用 Lambda 解析在 S3 中上传的 JSON 文件
- html - 如何使我的背景颜色填充我的所有内容,并为奇数和偶数单元格进行水平滚动?
- terraform - Terraform AWS EKS ALB Kubernetes Ingress 不会创建侦听器或目标组
- android - 如何在非 Android 类中使用 HiltViewModelFactory?
- android - 具有不同ndk版本的多个so文件的Android项目
- javascript - 三.js 初始化与靠近相机的对象
- python - 来自 CSV 的 Python 列表切片