联系客服1
联系客服2

PHP中的数据传输神器curl,全套视频教程学习资料通过百度云网盘下载

0
回复
229
查看
打印 上一主题 下一主题
[复制链接]
  • TA的每日心情
    开心
    2024-9-19 21:14
  • 签到天数: 757 天

    [LV.10]以坛为家III

    7335

    主题

    8751

    帖子

    131万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    1312677
    楼主
    发表于 2021-3-29 10:46:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    资源详情




    什么是cURL?
    官方是这样解释的:使用URL语法传输数据的命令行工具。 
    cURL:我不生产资源,我只是资源的搬运工。。。 


    cURL的使用场景


    网页资源

    编写网页爬虫


    WebService数据接口资源

    动态获取接口数据,比如天气,号码归属地等等


    FTP服务器里面的文件资源

    下载FTP服务器里面的文件


    其他资源

    所有网络上的资源都可以用cURL访问和下载到



            检查php是否可以使用cURL


    可以看到在我的Linux下是支持cURL的
    在PHP中使用cURL
    cURL实战
    用cURL做一个简单的网页爬虫
    用cURL获取天气信息
    用cURL操作FTP服务器中的数据
    用cURL访问HTTPS资源
    1.网页爬虫
    抓取百度的首页
    <?php
    //初始化
    $curl=curl_init("http://www.baidu.com");
    //进行抓取
    curl_exec($curl);
    //关闭
    curl_close($curl);
    ?>
    执行这段程序看看会发生什么吧!没错,打开这个文件就打印出了百度的首页! 


            那么问题来了!如果我想把取过来的网页中百度两个字替换为牛逼该怎么做呢?

    <?php
    //初始化curl,但不传入网页信息
    $curlobj=curl_init();
    //传入网页信息
    curl_setopt($curlobj,CURLOPT_URL,"http://www.baidu.com");
    //设置获取之后先不打印出获取到的值,而是保存到一个变量里
    curl_setopt($curlobj,CURLOPT_RETURNTRANSFER,true);
    $output=curl_exec($curlobj);
    //关闭
    curl_close();
    //对网页内容进行替换
    echostr_replace("百度","牛逼",$output);
    ?>
     
    执行这个文件看一下会发生什么吧!
    2.获取天气信息
    因为Webservice原因可能导致多次访问后不可用,这里说的只是一种方法,也可是使用百度天气api来获取天气信息哦。 
    代码如下:
    <?php

    $data='theCityName=北京';
    $curlobj=curl_init();
    curl_setopt($curlobj,CURLOPT_URL,"http://www.webxml.com.cn/WebServices/WeatherWebService.asmx/getWeatherbyCityName");
    curl_setopt($curlobj,CURLOPT_USERAGENT,'Mozilla/5.0(WindowsNT6.1;WOW64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/42.0.2311.152Safari/537.36');
    curl_setopt($curlobj,CURLOPT_HEADER,0);
    curl_setopt($curlobj,CURLOPT_RETURNTRANSFER,1);
    curl_setopt($curlobj,CURLOPT_POST,1);
    curl_setopt($curlobj,CURLOPT_POSTFIELDS,$data);
    curl_setopt($curlobj,CURLOPT_HTTPHEADER,array("application/x-www-form-urlencoded;charset=utf-8",
    "Content-length:".strlen($data)
    ));
    $rtn=curl_exec($curlobj);
    if(!curl_errno($curlobj)){
    $xml=simplexml_load_string($rtn);
    }else{
    echo'Curlerror:'.curl_error($curlobj);
    }
    var_dump($xml);
    curl_close($curlobj);
    ?>


    游客,如果您要查看本帖隐藏内容请回复
    收藏
    收藏0
    分享
    分享
    支持
    支持0
    反对
    反对0
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    学习课程!一站搞定!
    学途无忧VIP会员群

    973849140

    周一至周日9:00-23:00

    反馈建议

    1227072433@qq.com 在线QQ咨询

    扫描二维码关注我们

    学途无忧!为学习谋坦途,为会员谋福利!|网站地图