前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >基于百度识图的图床接口构建【附源码】

基于百度识图的图床接口构建【附源码】

作者头像
许坏
发布2019-07-09 14:39:34
2.6K1
发布2019-07-09 14:39:34
举报
文章被收录于专栏:宅机吧宅机吧

那些能找回的东西,从没丢失过;那些丢失了的东西,或许从未真正拥有。

功能介绍

通过百度识图接口,将图片上传百度存储。

实现原理

之前在做百度AI识图时,碰巧检索出了百度识图,通过简单浏览,发现了这个简单的图床功能,整体来说,就一个post提交加字符串组合。

①post请求

代码语言:javascript
复制
地址 https://graph.baidu.com/upload
参数 image : 图片链接
     from : pc (固定值)

示例image:

http://i1.whymtj.com/uploads/tu/201903/9999/457511a229.jpg

请求结果:

代码语言:javascript
复制
{
  "status": 0,
  "msg": "Success",
  "data": {
    "url": "https://graph.baidu.com/s?sign=106155b9029ce2901e0b601553844858&f=all&tn=wise&srcp=&tn=wise&idctag=gz&sids=10004_10191_10291_10391_10691_10705_10301_10709_10800_10902_11006_10905_10911_11001_10014_10117_10016_10018_11020_11032_9999&logid=2056445137&entrance=general&pageFrom=graph_upload_pcshitu&extUiData%5BisLogoShow%5D=1&tpl_from=pc",
    "sign": "106155b9029ce2901e0b601553844858"
  },
  "cost_nirs": 951,
  "cost_pfc": 1035
}

其中sign值极为图片特征值。

②组合

图片上传后地址为:

https://graph.baidu.com/resource/{sign}.jpg

示例中的为:

https://graph.baidu.com/resource/106155b9029ce2901e0b601553844858.jpg

完整示例代码:

代码语言:javascript
复制
<?php
$postData = http_build_query(array(
"from"=> "pc",
"image"=>"http://i1.whymtj.com/uploads/tu/201903/9999/457511a229.jpg"
));
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,"https://graph.baidu.com/upload");
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS,$postData);
$result=curl_exec ($ch);
curl_close($ch);
$url = "https://graph.baidu.com/resource/".json_decode($result,true)["data"]["sign"].".jpg";
echo $url;
?>

使用声明

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-03-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 宅机吧 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档