1. 首頁
  2. 創業文章

快速開發淘寶客系統-同步大淘客優惠券數據到本地數據庫

最近在開發一套淘寶客系統軟件,在解決各種的問題,導致沒有空寫文章,看了很多朋友都問這個數據如何導入到數據庫里面,那么今天我就以同步大淘客的數據作為例子,講解一下如何把數據同步到本地數據庫中。如果對我這個課程感興趣的話,可以訂閱我的頭條號:一點熱,也歡迎大家在下方的討論區討論。

既然是以大淘客的數據為例子,那么我們需要的就是大淘客的appkey,具體申請地址可以到這里查看

http://www.dataoke.com/ucenter/appkey_apply.asp

那么我們就開始我們要同步的數據了,由于我開始設計的數據庫的字段和大淘客返回的數據的字段有一些不一樣,那么我們需要對我們的數據庫進行改造,改造后的數據庫語句如下

DROP TABLE IF EXISTS `yeehot_taobaoke_product`;

CREATE TABLE `yeehot_taobaoke_product` (

`shopid` varchar(255) CHARACTER SET utf8 NOT NULL,

`name` varchar(255) CHARACTER SET utf8 NOT NULL,

`image` varchar(255) CHARACTER SET utf8 NOT NULL,

`detail` varchar(255) CHARACTER SET utf8 NOT NULL,

`type` varchar(255) CHARACTER SET utf8 NOT NULL,

`tbk_link` varchar(255) CHARACTER SET utf8 NOT NULL,

`price` varchar(255) CHARACTER SET utf8 NOT NULL,

`product_sale_count` varchar(255) CHARACTER SET utf8 NOT NULL,

`product_rate` varchar(255) CHARACTER SET utf8 NOT NULL,

`product_earn` varchar(255) CHARACTER SET utf8 NOT NULL,

`wangwang_name` varchar(255) CHARACTER SET utf8 NOT NULL,

`saler_id` varchar(255) CHARACTER SET utf8 NOT NULL,

`shop_name` varchar(255) CHARACTER SET utf8 NOT NULL,

`product_from` varchar(255) CHARACTER SET utf8 NOT NULL,

`card_id` varchar(255) CHARACTER SET utf8 NOT NULL,

`card_num` varchar(255) CHARACTER SET utf8 NOT NULL,

`card_own` varchar(255) CHARACTER SET utf8 NOT NULL,

`card_money` varchar(255) CHARACTER SET utf8 NOT NULL,

`card_begin` varchar(255) CHARACTER SET utf8 NOT NULL,

`card_end` varchar(255) CHARACTER SET utf8 NOT NULL,

`card_link` varchar(255) CHARACTER SET utf8 NOT NULL,

`card_share` varchar(255) CHARACTER SET utf8 NOT NULL,

`short_title` varchar(255) DEFAULT NULL,

`cid` varchar(255) DEFAULT NULL,

`quan_price` varchar(255) DEFAULT NULL,

`dsr` varchar(255) DEFAULT NULL,

`Commission_jihua` varchar(255) DEFAULT NULL,

`Commission_queqiao` varchar(255) DEFAULT NULL,

`Jihua_link` varchar(255) DEFAULT NULL,

`Jihua_shenhe` varchar(255) DEFAULT NULL,

`Introduce` varchar(255) DEFAULT NULL,

`Quan_m_link` varchar(255) DEFAULT NULL,

`Quan_link` varchar(255) DEFAULT NULL,

`id` int(10) unsigned NOT NULL AUTO_INCREMENT,

`Quan_condition` varchar(255) NOT NULL,

`after_price` varchar(255) NOT NULL,

PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=gbk;

SET FOREIGN_KEY_CHECKS = 1;

注意:如果這里不知道怎么操作更新的話,可以重新導入daogou.sql

快速開發淘寶客系統-同步大淘客優惠券數據到本地數據庫

使用PHP需要訪問數據,一般都是使用curl函數來實現的,簡單的幾個步驟就可以進行get操作了,代碼如下:

function getinfo($url) {

$ch = curl_init();

//設置選項,包括URL

curl_setopt($ch, CURLOPT_URL, $url);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

curl_setopt($ch, CURLOPT_HEADER, 0);

//執行并獲取HTML文檔內容

$output = curl_exec($ch);

//釋放curl句柄

curl_close($ch);

return $output;

}

有了這個網絡訪問鏈接,那么我們就可以進行數據的采集。

對比大淘客的全站領券商品API接口

http://api.dataoke.com/index.php?r=Port/index&type=total&appkey=”你的APPKEY”&v=2&page=”當前頁數”

基本就是兩個參數,一個是剛剛我們說到的KEY,還有一個頁數。

了解這個接口后,我們就可以開發采集的功能了

采集這里,基本就是解析大淘客的數據,然后查詢一下數據庫是否有這個商品,如果存在的話,我們就更新它,如果不存在,我們就插入這個數據。具體代碼如下:

function SysInfo($page) {

$caijiurl =”http://api.dataoke.com/index.php?r=Port/index&type=total&appkey=”. tk_key .”&v=2&page=”. $page;

$url = $caijiurl;

$info = getinfo($url);

$info = preg_replace(‘/\s/’,”, $info);

$info = str_replace(”,”, $info);

$resultinfo = json_decode($info, TRUE);

$totolnum = $resultinfo[‘data’][‘total_num’];

$page_all = $totolnum / 200 + 1;

$pnum = count($resultinfo[‘result’]);

echo”正在同步第”.$page.”頁…<br/>”.”總頁數:”.$page_all.”<br/>”;

echo”請稍等,同步需要時間,如果長時間沒有響應,返回鏈接數據庫超時,請將參數的page的數字記錄下來再同步”;

$nd = array();

for ($i = 0; $i < $pnum; $i++) {

$info = $resultinfo[‘result’][$i];

$nd[$i][‘name’] = $info[‘D_title’];

$nd[$i][‘shopid’] = $info[‘GoodsID’];

$nd[$i][‘image’] = $info[‘Pic’];

$nd[$i][‘detail’] = $info[‘GoodsID’];

$nd[$i][‘short_title’] = $info[‘D_title’];

$nd[$i][‘cid’] = $info[‘Cid’];

$nd[$i][‘Quan_link’] = $info[‘Quan_link’];

$nd[$i][‘Quan_m_link’] = $info[‘Quan_m_link’];

$nd[$i][‘Introduce’] = $info[‘Introduce’];

$nd[$i][‘Jihua_shenhe’] = $info[‘Jihua_shenhe’];

$nd[$i][‘Jihua_link’] = $info[‘Jihua_link’];

$nd[$i][‘Commission_queqiao’] = $info[‘Commission_queqiao’];

$nd[$i][‘Commission_jihua’] = $info[‘Commission_jihua’];

$nd[$i][‘dsr’] = $info[‘Dsr’];

$nd[$i][‘quan_price’] = $info[‘Quan_price’];

$nd[$i][‘card_share’] = $info[‘Quan_m_link’];

$nd[$i][‘card_link’] = $info[‘Quan_link’];

$nd[$i][‘card_begin’] = $info[‘Quan_time’];

$nd[$i][‘card_end’] = $info[‘Quan_time’];

$nd[$i][‘card_money’] = $info[‘Quan_price’];

$nd[$i][‘card_own’] = $info[‘Quan_surplus’];

//$nd[$i][‘card_num’] = $info[‘card_num’];

$nd[$i][‘card_id’] = $info[‘Quan_id’];

$nd[$i][‘Quan_condition’] = $info[‘Quan_condition’];

$nd[$i][‘product_from’] = $info[‘IsTmall’] == 1 ?”天貓”:”淘寶”;

$nd[$i][‘saler_id’] = $info[‘SellerID’];

$nd[$i][‘product_sale_count’] = $info[‘Sales_num’];

$nd[$i][‘price’] = $info[‘Org_Price’];

$nd[$i][‘after_price’] = $info[‘Price’];

$nd[$i][‘product_rate’] = $info[‘Commission_jihua’];

$values =”‘”. implode(“‘,'”, array_values($nd[$i])) .”‘”;

$keys =”`”. implode(“`,`”, array_keys($nd[$i])) .”`”;

$shopid_1 = $nd[$i][‘shopid’];

$query = mysql_query(“select * from yeehot_taobaoke_product where shopid=’$shopid_1′”);

//var_dump(“select * from yeehot_taobaoke_product where shopid='”.$shopid_1.”‘”);

$num = mysql_num_rows($query);

//var_dump($num);

if ($num > 0) {

$sql =’update `yeehot_taobaoke_product` set ‘;

for ($m = 0; $m < count(array_keys($nd[$i])); $m++) {

if($m== (count(array_keys($nd[$i]))-1)){

$sql.=array_keys($nd[$i])[$m].”= ‘”.array_values($nd[$i])[$m].”‘”;

}

else{

$sql.=array_keys($nd[$i])[$m].”= ‘”.array_values($nd[$i])[$m].”‘, “;

}

}

$sql.=” where shopid =”.$shopid_1;

} else {

$sql =’insert into `yeehot_taobaoke_product` ‘;

$sql .='(‘. $keys .’) ‘;

$sql .=’values ‘;

$sql .='(‘. $values .’) ‘;

}

//var_dump($sql);

mysql_query($sql);

}

return $page_all;

}

最好,我們需要調用這個數據,這里,我想調用第一頁,然后在根據第一頁返回總的頁數。然后通過循環更新頁數

$page_all=SysInfo(1);

for ($j=1; $j <$page_all ; $j++) {

SysInfo($j);

sleep(5);

}

echo”<br/>同步完成”;

這樣,我們的同步商品優惠券的頁面就開發完畢了

我也把最新的功能放上網站供大家測試了,同時也可以關注我的公眾號,可以登錄我的網站http://www.yeehot.com/右方有微信二維碼。我也把商品詳情的頁面代碼放上去,大家可以在源碼下載找到這個代碼下載

歡迎繼續關注我的頭條號:一點熱,如果有什么問題,歡迎留言咨詢,我看到之后會第一時間回復大家的。也歡迎收藏與轉發,如果需要轉載到其他網站,請與我聯系,yeehot.com,如果有什么意見或者想法歡迎在下方留言。如果有什么不明白的話,可以自己給我留言了。

原創文章,作者:聚創盟,如若轉載,請注明出處:http://www.fvezae.live/39754

發表評論

電子郵件地址不會被公開。 必填項已用*標注

聯系我們

兼職小項目可聯系

在線咨詢:點擊這里給我發消息

郵件:[email protected]

工作時間:周一至周五,9:30-18:30,節假日休息

江苏快3玩法技巧