PHP中的数据传输神器curl

  [复制链接]

2198

主题

2239

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
11808
admin 发表于 2021-5-29 13:47:20
26436 101

课程目录
什么是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();
//对网页内容进行替换
echo str_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 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.152 Safari/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 'Curl error: '.curl_error($curlobj);
}
var_dump($xml);
curl_close($curlobj);
?>

资源存放>百度网盘

下载地址
游客,如果您要查看本帖隐藏内容请回复

VIP会员全站免金币
IT直通车已为全国各地程序员提供上千G课程资源
如您需要购买本站VIP会员,请点击「开通VIP」享受全站资源免金币无限制下载!

失效反馈
IT直通车所有资源都存放在自己注册的百度网盘,失效可修复,确保持续可用
如您需要的资源链接提示失效,请尽情反馈给我们,将在收到反馈后尽快修复「点击反馈

获得帮助
需要帮助吗?点击网站右侧在线客服,7X12小时在线!

回复

使用道具 举报

阿豆学长长ov 发表于 2021-5-29 13:50:11
<<HP中的数据传输神器curl>>[复制链接]
回复

使用道具 举报

湿湿二 发表于 2021-6-3 09:49:44
ttttttttttttt
回复

使用道具 举报

什么大师特 发表于 2021-6-10 15:20:49
ttttttttttttt
回复

使用道具 举报

HY107 发表于 2021-6-12 13:04:59 来自手机
终于找到了,哈哈
回复

使用道具 举报

干将发硎鞘 发表于 2021-6-14 17:33:29
太多需要的课程了
回复

使用道具 举报

立郎 发表于 2021-6-14 20:46:57
谢谢大哥
回复

使用道具 举报

爱无声爱留痕列 发表于 2021-6-19 13:31:36 来自手机
祝IT直通车越办越好
回复

使用道具 举报

忆清静丫 发表于 2021-6-20 13:05:58
6666666666666
回复

使用道具 举报

简0 发表于 2021-6-21 14:30:14
2222222222222222222
回复

使用道具 举报

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

本版积分规则

遇到问题联系客服

售后保障

如您充值或开通会员后资源无法下载

本站有售后服务,联系客服修复即可

[联系客服]-[会员充值]

更多课程

需要帮助吗?请右侧联系在线QQ客服

关于本站

VIP介绍 加入我们

售后服务

QQ客服 Email邮件

网站声明

IT直通车(www.itztc.com)是一个IT视频教程、软件、书籍资源整合分享平台
站内所有资源均来自于互联网,版权归属原资源作者,如无意侵犯您的版权,请联系我们删除处理。

Archiver|手机版|小黑屋|IT学习网 |网站地图

Powered by Discuz! X3.4  © 2001-2013 IT直通车 ICP证:粤ICP备13026616号 增值电信业务经营许可证:粤B2-20140196

返回顶部 返回列表