搜索
博主信息
博文 26
粉丝 0
评论 3
访问量 24572
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
京东的详情页和列表页 2019/10/18
西门吃雪
原创
855人浏览过

<?php


$url = 'https://diannao.jd.com';


$ret = curl($url);

$params = '/^/';

$preg = preg_match($params,$ret,$matches);

var_dump($preg);

$content = $matches[1].'</div>';

$content = $matches[1].'</div>';

// 把来源网站的图片标识,替换为HTML标识

$content = preg_replace('/data-original/','src',$content);

$content = preg_replace('/<div id="shortcut-2014">/','src',$content);

print_r($matches);

print_r($ret);



// 通过curl请求接口

function curl($url, $params = false, $ispost = 0)

{

    header('content-type: text/html; charset=utf-8');

    $httpInfo = array();

    $ch = curl_init();


    if ($ispost) {

        curl_setopt($ch, CURLOPT_POST, true); // 发送一个常规的Post请求

        curl_setopt($ch, CURLOPT_POSTFIELDS, $params); // Post提交的数据包

        curl_setopt($ch, CURLOPT_URL, $url); // 设置URL

    } else {

        // GET请求,组装url

        if ($params) {

            $url = $url . '?';

            foreach ($params as $k => $v) {

                $url = $url . $k . '=' . $v . '&';

            }

            curl_setopt($ch, CURLOPT_URL, $url);

        } else {

            curl_setopt($ch, CURLOPT_URL, $url);

        }

    }

    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);//爬取重定向页面

    curl_setopt($ch, CURLOPT_AUTOREFERER, 1);//自动设置Referer,防止盗链

    curl_setopt($ch, CURLOPT_HEADER, 0);//显示放回Header区域内容

    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);//对证书来源的检查

    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);//从证书中检查SSL加密算法是否存在

    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);// 要求结果保存到字符串中还是输出到屏幕上

    curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1); // 默认值,让 cURL 自己判断使用哪个版本。 (强制使用 HTTP/1.1)。

    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 60); // 在尝试连接时等待的秒数。设置为0,则无限等待。

    curl_setopt($ch, CURLOPT_TIMEOUT, 30);  // 设置超时限制防止死循环



    curl_setopt($ch, CURLOPT_USERAGENT, 'JuheData'); // 在HTTP请求中包含一个"User-Agent:"头的字符串

    $html = curl_exec($ch);   // 运行Curl,请求URL ,把结果复制给变量

    if (curl_error($ch)) {

        echo 'Error' . curl_error($curl);  // 捕抓异常

    }

    curl_close($ch);                    // 关闭cURL连接

    return $html;

}

?>

运行效果图

QQ截图20191027215320.jpg

QQ截图20191027215345.jpg

总结

说实话我感觉我还是对爬虫不是很理解暂时只能这样了.不过通过项目也许会好一点。只是大致理解了爬虫但是真正实战我估计我会慌的一笔

批改状态:合格

老师批语:虽然现在封装好的这类工具很多, 但掌握原始的用法 ,还是很重要
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学