采集网站接口与图片两种方案

第一种方案  这种方案代码太多 获取到的数据还是对象

$loginUrl = "采集地址";
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL, $loginUrl);
$result = curl_exec($ch);
curl_close($ch);
$json = json_decode($result);
$arr[] = json_decode(json_encode($json), true);//php系统函数转换obj转数组

 

第二种方案   这种方案执行出来的接口数据直接是数组  代码简洁  明了  个人推荐使用

$url = '地址';
$str = file_get_contents($url);
$arr = json_decode($str,true);
dump($arr);

使用讲解如下

 header("Content-type: text/html; charset=utf-8");
    //连接数据库
    try{
         $pdo = new PDO("mysql:host=localhost;dbname=xxxxxx","root","xxxxxx");
         $pdo->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
     }catch(PDOException $e){
         echo"数据库连接失败".$e->getMessage();
     }
     //设置时区
     date_default_timezone_set("PRC");
     //采集地址
     $url = 'xxxxxx';
     $str = file_get_contents($url);
     $arr = json_decode($str,true);
     foreach($arr as $val){
         //组装数据入库,例如:
         $title = $val['title'];
         $content= $val['content'];
         $addtime = $val['addtime'];
         //ignore  忽略主键与唯一ID重复的元素,不出错
         $sql1 = "INSERT ignore INTO `gao`( `id`, `title`,  `content`,  `addtime`) VALUES (null,'".$title."','".$content."','".$addtime."')";
         $stmt1 = $pdo->prepare($sql1);
         $res = $stmt1->execute();
     }
     if($res){
         die('success');
      }else{
         exit('fail');
    }

采集网站的图片

案例

$url = "http://www.tupianzj.com/meinv/guzhuang/list_177_1.html";

$ch  = curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, 30);
$html = curl_exec($ch);
curl_close($ch);

$img_preg = '/<img src="(.*)"/U';

preg_match_all($img_preg,$html,$img);
dump($img);
$filename = 'a.txt';
$fp = fopen($filename,'a');
for($i=0;$i<count($img[1]);$i++){

    $ext = pathinfo($img[1][$i])['extension'];


    $arr=fwrite($fp,$img[1][$i]."\r\n");
    if($arr){
        echo '数据导入成功';

    }else{
        echo "数据导入失败";

    }

不懂得随时留言

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值