PHP-如何采集这个url跳转内容呢
如何采集这个url跳转内容呢
http://s.click.taobao.com/t_9?p=mm_0_0_0&l=http%3A%2F%2F3c.tmall.com
php asp 都可以
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
发布评论
评论(3)
瑾兮2017-05-09 23:42:10
这个链接跳转过程是这样的:
第1步: http://s.click.taobao.com/t_9?p=mm_0_0_0&l=http%3A%2F%2F3c.tmall.com
第2步: http://s.click.taobao.com/t_js?tu=http%3A%2F%2Fs.click.taobao.com%2Ft_9%3Fp%3Dmm_0_0_0%26l%3Dhttp%253A%252F%252F3c.tmall.com%26ref%3D%26et%3DjFBB2s50lFpgLg%253D%253D
第3步: http://3c.tmall.com/?ali_trackid=2:mm_0_0_0:1354708376_4k9_1111452281
很明显, 第3个页面是第2个中转页面利用第1个网址传过来的参数计算后跳转的, 自己可以弄明白第2个页面的算法, 计算出第3个页面, 直接采集第3个页面内容即可
~没有更多了~
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
<?php
$url = "http://s.click.taobao.com/t_9?p=mm_0_0_0&l=http%3A%2F%2F3c.tmall.com";
// 创建一个cURL资源
$ch = curl_init();
// 设置URL和相应的选项
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// 第一次获取
curl_exec($ch);
// redirect_url
if(!curl_errno($ch)) {
$info = curl_getinfo($ch);
// 获取跳转的url
if(isset($info['redirect_url'])) {
$querys = array();
parse_str(parse_url($info['redirect_url'], PHP_URL_QUERY), $querys);
if(isset($querys['tu'])) {
curl_setopt($ch, CURLOPT_URL, $querys['tu']);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); // 允许跳转
curl_setopt($ch, CURLOPT_MAXREDIRS, 3);
curl_setopt($ch, CURLOPT_REFERER, $info['redirect_url']);
$result = curl_exec($ch);
print_r($result); // 这里输出的就是最终结果
}
}
}
// 关闭cURL资源,并且释放系统资源
curl_close($ch);