【免费开源】利用云数据API接口,开发属于自己的采集器
<br />复制下面的代码,保存为一个php文件即可,可以把代码封装一下,变成自己的东西!<br /><ol><li><?php<br /><li>header("Content-type: text/html; charset=utf-8");<br /><li>function get_sign($dataArr) //计算签名验证的函数<br /><li>{<br /><li> if(!is_array($dataArr))<br /><li> {<br /><li> return 'no';<br /><li><br /><li> } else {<br /><li><br /><li> ksort($dataArr, SORT_STRING);<br /><li> $string1 = '';<br /><li> foreach ($dataArr as $k => $v) {<br /><li> $v=urlencode($v);<br /><li> $string1 .= "{$k}={$v}&";<br /><li> }<br /><li> return strtoupper(md5($string1));<br /><li> }<br /><li>}<br /><li>function get_json_data($dataUrl) // 根据接口地址,转换成具体列表内容,展示结果<br /><li>{<br /><li> $nowTime=time();<br /><li> $tokenStr=file_get_contents('./appid.txt'); // 读取保存的appid和对应的密钥<br /><li> $tokenArr=explode('_ZW_',$tokenStr);<br /><li> $appid=$tokenArr;<br /><li> $appid_key=$tokenArr;<br /><li> $dataJson=file_get_contents($dataUrl); <br /><li> $dataJson=trim($dataJson);<br /><li> $dataNewsArr=json_decode($dataJson,true);<br /><li> $result='<hr><h2>下面是结果内容</h2><hr><p><br></p>';<br /><li> $result=$result.'<table border=1 cellpadding=12 style="width:100%;">';<br /><li> $result=$result.'<tr><th>一键采集</th><th>标题</th><th>链接地址</th><th>发布时间</th></tr>';<br /><li> foreach($dataNewsArr as $item)<br /><li> {<br /><li> $signArr=array();<br /><li> $signArr['url']=urldecode($item['fromurl']);<br /><li> $signArr['appid']=$appid;<br /><li> $signArr['t']=$nowTime;<br /><li> $signArr['appsecret']=$appid_key; // 密钥仅用于计算签名,不要公开,私密<br /><li> $sign=get_sign($signArr);<br /><li> $result=$result.'<tr style="text-align:center">';<br /><li> $result=$result.'<td nowrap><a href="./sdk_demo.php?ac=content&url='.urlencode($item['fromurl']).'&appid='.$appid.'&t='.$nowTime.'&sign='.$sign.'"> 点击采集 </a></td>';<br /><li> $result=$result.'<td>'.$item['title'].'</td>';<br /><li> $result=$result.'<td><a href="'.$item['fromurl'].'" target="_blank">'.$item['fromurl'].'</a></td>';<br /><li> $result=$result.'<td nowrap>'.date('Y-m-d H:i:s',$item['sendtime']).'</td>';<br /><li> $result=$result.'</tr>';<br /><li> }<br /><li> $result=$result.'</table>';<br /><li> return $result;<br /><li>}<br /><li>if(!empty($_GET['ac']) && $_GET['ac']=='register')<br /><li>{<br /><li> if(!file_exists('./appid.txt'))<br /><li> { <br /><li> $appid=php_uname('s').php_uname('n').php_uname('m'); // 根据服务器的特征,生成唯一appid,请求获得密钥之后,保存到本地<br /><li> $appid=$appid.__DIR__;<br /><li> $appid=md5($appid);<br /><li> $appid_key=file_get_contents("http://api.zhiwu55.net/v1/catch_data/register/?appid=".$appid);<br /><li> $dataStr=$appid.'_ZW_'.$appid_key;<br /><li> file_put_contents('./appid.txt',$dataStr); //生产环境中,上线了,千万不要这样保存appid和密钥,相当于公开暴露出去了<br /><li> }<br /><li> $result='<hr><h2>下面是结果内容</h2><hr><p><br></p>注册appid成功!已经保存到appid.txt文件中'; <br /><li>}<br /><li>if(!empty($_GET['ac']) && $_GET['ac']=='content')<br /><li>{<br /><li> $fromurl=urlencode($_GET['url']);<br /><li> $dataUrl="http://api.zhiwu55.net/v1/catch_data/content/?url={$fromurl}&appid={$_GET['appid']}&t={$_GET['t']}&sign={$_GET['sign']}";<br /><li> $content=file_get_contents($dataUrl);<br /><li> if($content=='Requests are too frequent')<br /><li> {<br /><li> $result='<h1>采集过于频繁!</h1>';<br /><li> <br /><li> } elseif(strlen($content)<50) {<br /><li> <br /><li> $result='<h1>'.$content.'</h1>';<br /><li> <br /><li> } elseif(stripos($content,'__zhiwu55.com__')!==false) {<br /><li> <br /><li> <br /><li> $firstPost=substr($content,0,strpos($content,'__zhiwu55.com__')); <br /><li> $comment=substr($content,strpos($content,'__zhiwu55.com__')+15); <br /><li> $comment=str_replace('__zhiwu55.cn__','</li><li>',$comment); <br /><li> $result='<hr><h2>下面是结果内容</h2><hr><p><br></p>'.$firstPost.'<br><br><strong>评论如下:</strong><br><br><li>'.$comment.'</li>';<br /><li> <br /><li> } else {<br /><li> <br /><li> $result='<hr><h2>下面是结果内容</h2><hr><p><br></p>'.$content;<br /><li> <br /><li> }<br /><li>}<br /><li>if(!empty($_GET['ac']) && $_GET['ac']=='search_keyword' && !empty($_GET['keyword']))<br /><li>{<br /><li> $tokenStr=file_get_contents('./appid.txt'); // 读取保存的appid和对应的密钥<br /><li> $tokenArr=explode('_ZW_',$tokenStr);<br /><li> $appid=$tokenArr; <br /><li> $dataUrl="http://api.zhiwu55.net/v1/catch_data/search/?appid={$appid}&keyword=".urlencode($_GET['keyword']);<br /><li> $result=get_json_data($dataUrl);<br /><li>} <br /><li>if(!empty($_GET['ac']) && $_GET['ac']=='hotnews')<br /><li>{<br /><li> $result=get_json_data('http://api.zhiwu55.net/v1/catch_data/batch_run/hotnews_json.html');<br /><li>}<br /><li>if(!empty($_GET['ac']) && $_GET['ac']=='top_news')<br /><li>{<br /><li> $result=get_json_data('http://api.zhiwu55.net/v1/catch_data/batch_run/updatenews_json.html'); <br /><li>}<br /><li>if(!empty($_GET['ac']) && $_GET['ac']=='toutiao')<br /><li>{<br /><li> $result=get_json_data('http://api.zhiwu55.net/v1/catch_data/batch_run/toutiao.com_json.html'); <br /><li>}<br /><li>if(!empty($_GET['ac']) && $_GET['ac']=='thepaper')<br /><li>{<br /><li> $result=get_json_data('http://api.zhiwu55.net/v1/catch_data/batch_run/thepaper.cn_json.html'); <br /><li>}<br /><li>if(!empty($_GET['ac']) && $_GET['ac']=='sohu')<br /><li>{<br /><li> $result=get_json_data('http://api.zhiwu55.net/v1/catch_data/batch_run/sohu.com_json.html'); <br /><li>}<br /><li>if(!empty($_GET['ac']) && $_GET['ac']=='sina')<br /><li>{<br /><li> $result=get_json_data('http://api.zhiwu55.net/v1/catch_data/batch_run/sina.com.cn_json.html'); <br /><li>}<br /><li>if(!empty($_GET['ac']) && $_GET['ac']=='qq')<br /><li>{<br /><li> $result=get_json_data('http://api.zhiwu55.net/v1/catch_data/batch_run/qq.com_json.html'); <br /><li>}<br /><li>if(!empty($_GET['ac']) && $_GET['ac']=='myzaker')<br /><li>{<br /><li> $result=get_json_data('http://api.zhiwu55.net/v1/catch_data/batch_run/myzaker.com_json.html'); <br /><li>}<br /><li>if(!empty($_GET['ac']) && $_GET['ac']=='guokr')<br /><li>{<br /><li> $result=get_json_data('http://api.zhiwu55.net/v1/catch_data/batch_run/guokr.com_json.html'); <br /><li>}<br /><li>if(!empty($_GET['ac']) && $_GET['ac']=='163')<br /><li>{<br /><li> $result=get_json_data('http://api.zhiwu55.net/v1/catch_data/batch_run/163.com_json.html'); <br /><li>}<br /><li>if(!empty($_GET['ac']) && $_GET['ac']=='keyword01')<br /><li>{<br /><li> $result=get_json_data('http://api.zhiwu55.net/v1/catch_data/batch_run/E4BD93E882B2_json.html'); <br /><li>}<br /><li>if(!empty($_GET['ac']) && $_GET['ac']=='keyword02')<br /><li>{<br /><li> $result=get_json_data('http://api.zhiwu55.net/v1/catch_data/batch_run/E8B4A2E7BB8F_json.html'); <br /><li>}<br /><li>if(!empty($_GET['ac']) && $_GET['ac']=='keyword03')<br /><li>{<br /><li> $result=get_json_data('http://api.zhiwu55.net/v1/catch_data/batch_run/E6989FE5BAA7_json.html'); <br /><li>}<br /><li>if(!empty($_GET['ac']) && $_GET['ac']=='keyword04')<br /><li>{<br /><li> $result=get_json_data('http://api.zhiwu55.net/v1/catch_data/batch_run/E59BBDE99985_json.html'); <br /><li>}<br /><li>if(!empty($_GET['ac']) && $_GET['ac']=='keyword05')<br /><li>{<br /><li> $result=get_json_data('http://api.zhiwu55.net/v1/catch_data/batch_run/E5869BE4BA8B_json.html'); <br /><li>}<br /><li>if(!empty($_GET['ac']) && $_GET['ac']=='keyword06')<br /><li>{<br /><li> $result=get_json_data('http://api.zhiwu55.net/v1/catch_data/batch_run/E5BDA9E7A5A8_json.html'); <br /><li>}<br /><li>if(!empty($_GET['ac']) && $_GET['ac']=='keyword07')<br /><li>{<br /><li> $result=get_json_data('http://api.zhiwu55.net/v1/catch_data/batch_run/E7949FE6B4BB_json.html'); <br /><li>}<br /><li>?><br /><li><!DOCTYPE html><br /><li><html><br /><li><head><br /><li><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><br /><li><meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0,viewport-fit=cover"><br /><li></head><br /><li><body style="padding:16px;"><br /><li><div style="margin-bottom:64px;line-height:32px;"><br /><li> <a href="./sdk_demo.php?ac=register">【必须】注册appid</a> <br /><li> <a href="./sdk_demo.php?ac=hotnews">获取热搜榜单的内容</a> <br /><li> <a href="./sdk_demo.php?ac=top_news">获取最新内容</a> <br /><li> <a href="./sdk_demo.php?ac=toutiao">今日头条</a> <br /><li> <a href="./sdk_demo.php?ac=thepaper">澎拜新闻</a> <br /><li> <a href="./sdk_demo.php?ac=sohu">搜狐</a> <br /><li> <a href="./sdk_demo.php?ac=sina">新浪</a> <br /><li> <a href="./sdk_demo.php?ac=qq">腾讯网</a> <br /><li> <a href="./sdk_demo.php?ac=myzaker">ZAKER扎克</a> <br /><li> <a href="./sdk_demo.php?ac=guokr">果壳</a> <br /><li> <a href="./sdk_demo.php?ac=163">网易</a><br><br><br /><li> <a href="./sdk_demo.php?ac=keyword01">体育</a> <br /><li> <a href="./sdk_demo.php?ac=keyword02">财经</a> <br /><li> <a href="./sdk_demo.php?ac=keyword03">星座</a> <br /><li> <a href="./sdk_demo.php?ac=keyword04">国际</a> <br /><li> <a href="./sdk_demo.php?ac=keyword05">军事</a> <br /><li> <a href="./sdk_demo.php?ac=keyword06">彩票</a> <br /><li> <a href="./sdk_demo.php?ac=keyword07">生活</a><br><br><br /><li> <form action="./sdk_demo.php" method="GET"><br /><li> <input type="hidden" name="ac" value="search_keyword"><br /><li> 请输入简短精准关键词:<br /><li> <input type="text" name="keyword" value="房地产" style="padding:4px;height:30px;line-height:30px;width:300px;"><br /><li> <br /><li> <input type="submit" value="确定采集" style="height:38px;"><br /><li> </form><br /><li></div><br /><li><br /><li><?php<br /><li>echo $result;<br /><li>/*********<br /><li><br /><li>接口所有的请求方式都是GET请求,即直接访问接口地址即可,简单、方便、快捷使用智伍云数据的API接口<br /><li><br /><li>注意事项:<br /><li><br /><li>1、请自行用接口,注册一个自己的appid和密钥,不要用公开泄露出去,因为同一个appid请求过于频繁,会禁止访问一段时间<br /><li><br /><li>2、所有的数据都有过期时间,获取到数据之后,请保存到自己的服务器,图片做好本地化存储<br /><li><br /><li>3、如果appid对应的密钥忘记了,或者密钥泄露出去,需要重置密钥,暂时只能联系智伍应用在线客服处理<br /><li><br /><li>-----------------------------------------------------------------------------<br /><li><br /><li>接口地址:http://api.zhiwu55.net/v1/catch_data/register/<br /><li><br /><li>接口说明:注册一个访问智伍云数据的appid和密钥,获得拉取数据的权限,仅一个appid请求参数,其中appid为自定义32位的数字和字母的组合,注册成功之后,会返回32位的密钥,请把这个返回的密钥保存起来,为了安全10分钟过后,此接口不再显示注册appid的密钥<br /><li><br /><li>调用示例:http://api.zhiwu55.net/v1/catch_data/register/?appid=ZW3456789812X45678901234567890a1 返回密钥:OuHZ552V20hi5ie3HCKTtyez3HR5ukhc 再次提醒,请把返回的密钥保存起来,以备需要的时候使用。<br /><li><br /><li>-----------------------------------------------------------------------------<br /><li><br /><li>接口地址:http://api.zhiwu55.net/v1/catch_data/search/<br /><li><br /><li>接口说明:根据特定的关键语,返回指定的内容,有二个参数,分别是appid和keyword,返回json数据格式,如果看上了近期的某一篇文章内容,可以直接把标题当作关键词来访问该接口<br /><li><br /><li>调用示例:http://api.zhiwu55.net/v1/catch_data/search/?appid=ZW3456789812X45678901234567890a1&keyword=%E6%90%9E%E7%AC%91<br /><li><br /><li>-----------------------------------------------------------------------------<br /><li><br /><li><br /><li>接口地址:http://api.zhiwu55.net/v1/catch_data/content/<br /><li><br /><li>接口说明:这里一个最重要的接口,调用稍微麻烦一点,根据链接地址,拉取对应的数据和图片,需要用注册appid的32位密钥签名验证,一共有4个参数,分别如下<br /><li><br /><li>第1个参数:url,链接地址,请用接口返回的fromurl数值<br /><li>第2个参数:appid,即自己注册的appid<br /><li>第3个参数:t,当前的时间戳,请确保自己服务器的时间是中国的标准时间<br /><li>第4个参数:sign,根据参数计算出来的签名<br /><li><br /><li>下面是调用示例代码:<br /><li><br /><li>function get_sign($dataArr) //计算签名验证的函数<br /><li>{<br /><li> if(!is_array($dataArr))<br /><li> {<br /><li> return 'no';<br /><li><br /><li> } else {<br /><li><br /><li> ksort($dataArr, SORT_STRING);<br /><li> $string1 = '';<br /><li> foreach ($dataArr as $k => $v) {<br /><li> $v=urlencode($v);<br /><li> $string1 .= "{$k}={$v}&";<br /><li> }<br /><li> return strtoupper(md5($string1));<br /><li> }<br /><li>}<br /><li>$mySignArr=array();<br /><li>$mySignArr['url']=urldecode($fromurl); //通过接口返回的fromurl链接地址<br /><li>$mySignArr['appid']='ZW3456789812X45678901234567890a1'; // 注册的appid<br /><li>$mySignArr['t']=time(); //当前时间戳<br /><li>$mySignArr['appsecret']='OuHZ552V20hi5ie3HCKTtyez3HR5ukhc'; // 密钥<br /><li>$mySignStr=get_sign($signArr); // 根据参数计算出来的签名<br /><li>$dataUrl="http://api.zhiwu55.net/v1/catch_data/content/?url={$fromurl}&appid=ZW3456789812X45678901234567890a1&t={$mySignArr['t']}&sign={$mySignStr}";<br /><li>echo file_get_contents($dataUrl);<br /><li><br /><li>-----------------------------------------------------------------------------<br /><li><br /><li>接口地址:http://api.zhiwu55.net/v1/catch_data/batch_run/updatenews_json.html<br /><li><br /><li>接口说明:获取全网最新的内容,直接访问即可,返回json数据格式,隔一段时间自动更新内容<br /><li><br /><li>-----------------------------------------------------------------------------<br /><li><br /><li>接口地址:http://api.zhiwu55.net/v1/catch_data/batch_run/hotnews_json.html<br /><li><br /><li>接口说明:今日热搜榜单火爆全网的内容,直接访问即可,返回json数据格式,隔一段时间自动更新内容<br /><li><br /><li>-----------------------------------------------------------------------------<br /><li><br /><li>接口地址:http://api.zhiwu55.net/v1/catch_data/batch_run/toutiao.com_json.html<br /><li><br /><li>接口说明:今日头条最新内容,直接访问即可,返回json数据格式,隔一段时间自动更新内容<br /><li><br /><li>-----------------------------------------------------------------------------<br /><li><br /><li>接口地址:http://api.zhiwu55.net/v1/catch_data/batch_run/thepaper.cn_json.html<br /><li><br /><li>接口说明:澎拜新闻最新内容,直接访问即可,返回json数据格式,隔一段时间自动更新内容<br /><li><br /><li>-----------------------------------------------------------------------------<br /><li><br /><li>接口地址:http://api.zhiwu55.net/v1/catch_data/batch_run/sohu.com_json.html<br /><li><br /><li>接口说明:搜狐最新内容,直接访问即可,返回json数据格式,隔一段时间自动更新内容<br /><li><br /><li>-----------------------------------------------------------------------------<br /><li><br /><li>接口地址:http://api.zhiwu55.net/v1/catch_data/batch_run/sina.com.cn_json.html<br /><li><br /><li>接口说明:新浪最新内容,直接访问即可,返回json数据格式,隔一段时间自动更新内容<br /><li><br /><li>-----------------------------------------------------------------------------<br /><li><br /><li>接口地址:http://api.zhiwu55.net/v1/catch_data/batch_run/qq.com_json.html<br /><li><br /><li>接口说明:腾讯网最新内容,直接访问即可,返回json数据格式,隔一段时间自动更新内容<br /><li><br /><li>-----------------------------------------------------------------------------<br /><li><br /><li>接口地址:http://api.zhiwu55.net/v1/catch_data/batch_run/myzaker.com_json.html<br /><li><br /><li>接口说明:扎客新闻网最新内容,直接访问即可,返回json数据格式,隔一段时间自动更新内容<br /><li><br /><li>-----------------------------------------------------------------------------<br /><li><br /><li>接口地址:http://api.zhiwu55.net/v1/catch_data/batch_run/guokr.com_json.html<br /><li><br /><li>接口说明:果壳网最新内容,直接访问即可,返回json数据格式,隔一段时间自动更新内容<br /><li><br /><li>-----------------------------------------------------------------------------<br /><li><br /><li>接口地址:http://api.zhiwu55.net/v1/catch_data/batch_run/163.com_json.html<br /><li><br /><li>接口说明:网易最新内容,直接访问即可,返回json数据格式,隔一段时间自动更新内容<br /><li><br /><li>********/<br /><li>?><br /><li></body><br /><li></html></ol><br /><br />代码<em>, </em>自己的<em>, </em>复制<em>, </em>面的<em>, </em>存为 下面的这二个插件,都是用上面的API接口二次开发的,大家可以参考看一下。<br /><br /><ignore_js_op><dl class="tattl"><dt></dt><dd><p class="attnm">【Discuz插件】众大云采集_v9.7.3.zip<p class="y">2022-8-25 14:58 上传</p><p>点击文件名下载附件</p></p><p>320.82 KB, 下载次数: 363</p><p></p><p class="xg2">众大云采集</p></dd></dl></ignore_js_op><ignore_js_op><dl class="tattl"><dt></dt><dd><p class="attnm">【Discuz插件】智伍云采集_zhiwu55_v2.0.2.zip<p class="y">2022-8-25 14:58 上传</p><p>点击文件名下载附件</p></p><p>105.58 KB, 下载次数: 333</p><p></p><p class="xg2">智伍云采集</p></dd></dl></ignore_js_op>
頁:
[1]