2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > open淘宝酒店API open淘宝属性API open淘宝类目API

open淘宝酒店API open淘宝属性API open淘宝类目API

时间:2023-06-04 23:46:18

相关推荐

open淘宝酒店API  open淘宝属性API  open淘宝类目API

首先,在类目属性API下面我找到一个接口:taobao.itemcats.get

通过这个API我们可以获取所有的商品种类,我们就从这个地方查找酒店的种类ID(cid)

代码如下:

public function getAll()

{

//初始化淘宝API,将一些配置参数引入进来

$Taoapi_Config = Taoapi_Config::Init();

//实例化淘宝API

$Taoapi = new Taoapi;

//获取酒店cid

$Taoapi->method = 'taobao.itemcats.get';

$Taoapi->fields = 'cid,name';

//$Taoapi->parent_cid = 0;//注意:如果传了parent_cid或者cids,则忽略datetime

$Taoapi->datetime = '-01-01 00:00:00';

$ret = $Taoapi->Send('get','xml')->getArrayData();

return $ret;

}

我们发现酒店的cid就是50016161

然后我们先获取酒店都有哪些属性:

代码如下:

public function getpid()

{

//初始化淘宝API,将一些配置参数引入进来

$Taoapi_Config = Taoapi_Config::Init();

//实例化淘宝API

$Taoapi = new Taoapi;

//获取酒店cid

$Taoapi->method = 'taobao.itemprops.get';

$Taoapi->fields = 'pid,name';

$Taoapi->cid = '50016161';

$Taoapi->datetime = '-01-01 00:00:00';

$ret = $Taoapi->Send('get','xml')->getArrayData();

return $ret;

}

最后我们根据这些基本信息取回所有的酒店信息:

public function SearchHotels($city, $keyword, $page_size=5, $page_no=1, $order_by='volume', $price = 0, $star = 0)

{

//初始化淘宝API,将一些配置参数引入进来

$Taoapi_Config = Taoapi_Config::Init();

//实例化淘宝API

$Taoapi = new Taoapi;

//获取商品属性值 Get property values

$pvs = $this->GetPvs($Taoapi);

foreach($pvs['prop_values']['prop_value'] as $prop)

{

if(@strstr($prop['name'], $city) or @strstr($prop['name_alias'], $city)){

$Taoapi->props = $prop['pid'].':'.$prop['vid'].';';

break;

}

}

switch($price)

{

case 1:

$Taoapi->props .= '4209241:42425;';

break;

case 2:

$Taoapi->props .= '4209241:2985;';

break;

case 3:

$Taoapi->props .= '4209241:63771061;';

break;

case 4:

$Taoapi->props .= '4209241:63771134;';

break;

case 5:

$Taoapi->props .= '4209241:45690;';

break;

default:

break;

}

switch($star)

{

case 1:

$Taoapi->props .= '4618707:63595280;';

break;

case 2:

$Taoapi->props .= '4618707:63595341;';

break;

case 3:

$Taoapi->props .= '4618707:105345;';

break;

case 4:

$Taoapi->props .= '4618707:72109529;';

break;

case 5:

$Taoapi->props .= '4618707:72109612;';

break;

case 6:

$Taoapi->props .= '4618707:72109692;';

break;

case 7:

$Taoapi->props .= '4618707:86482201;';

break;

case 8:

$Taoapi->props .= '4618707:86482260;';

break;

case 9:

$Taoapi->props .= '4618707:86482296;';

break;

case 10:

$Taoapi->props .= '4618707:86482353;';

break;

default:

break;

}

if(!empty($Taoapi->props)){

$Taoapi->props = trim($Taoapi->props,';');

}

$Taoapi->method = 'taobao.items.get';

$Taoapi->q = $keyword;

//$Taoapi->fields = 'detail_url,num_iid,title,nick,type,cid,seller_cids,props,input_pids,input_str,desc,pic_url,num,valid_thru,list_time,delist_time,stuff_status,location,price,post_fee,express_fee,ems_fee,has_discount,freight_payer,has_invoice,has_warranty,has_showcase,modified,increment,approve_status,postage_id,product_id,auction_point,property_alias,item_img,prop_img,sku,video,outer_id,is_virtual';

$Taoapi->fields = 'iid,num_iid,title,nick,pic_url,price,props_name,item_img,volume,score,detail_url';

$Taoapi->cid = '50016161';

if($order_by=='volume'){

$order_by .= ':desc';

}else if($order_by=='price'){

$order_by .= ':asc';

}else{

$order_by = 'volume:desc';

}

$Taoapi->order_by = $order_by;

$Taoapi->page_no = $page_no;

$Taoapi->page_size = $page_size;

$result = $Taoapi->Send('get','xml')->getArrayData();

return $result;

}

//这个是我们调用的获取pid,vid,name,name_alias的函数,可以帮我们找到具体的省市的酒店

public function GetPvs($Taoapi)

{

$Taoapi->method = 'taobao.itempropvalues.get';

$Taoapi->fields = 'pid,vid,name,name_alias';

$Taoapi->cid = '50016161';

$Taoapi->datetime = '-01-01 00:00:00';

$TaobaokeData = $Taoapi->Send('get','xml')->getArrayData();

return $TaobaokeData;

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。