1. 程式人生 > >淘寶api的簡單呼叫

淘寶api的簡單呼叫

SessionKey、AppKey、AppSecret的名詞解釋:

1、當你註冊為淘寶開放平臺的使用者時,就可以建立一個應用:


2、下面的應用的詳細資訊


3、淘寶api查詢的就是該應用下使用的賣家資訊,因為淘寶api主要是給賣家做一些擴充套件功能的,比如裝修店鋪等。所以如果你的應用下面沒有賣家的話,那麼呼叫淘寶api的話就基本上沒有什麼返回值咯,賣家怎麼使用該應用呢?見下圖


4、下面是呼叫淘寶api的簡單程式碼示例:

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.junit.Test;
import com.taobao.api.ApiException;
import com.taobao.api.DefaultTaobaoClient;
import com.taobao.api.TaobaoClient;
import com.taobao.api.domain.Item;
import com.taobao.api.domain.User;
import com.taobao.api.request.ItemGetRequest;
import com.taobao.api.request.ItemsOnsaleGetRequest;
import com.taobao.api.request.LogisticsAddressSearchRequest;
import com.taobao.api.request.LogisticsCompaniesGetRequest;
import com.taobao.api.request.ProductsGetRequest;
import com.taobao.api.request.ShopGetRequest;
import com.taobao.api.request.ShopUpdateRequest;
import com.taobao.api.request.TopatsTradesSoldGetRequest;
import com.taobao.api.request.TraderatesGetRequest;
import com.taobao.api.request.UserSellerGetRequest;
import com.taobao.api.request.WangwangEserviceChatpeersGetRequest;
import com.taobao.api.response.ItemGetResponse;
import com.taobao.api.response.ItemsOnsaleGetResponse;
import com.taobao.api.response.LogisticsAddressSearchResponse;
import com.taobao.api.response.LogisticsCompaniesGetResponse;
import com.taobao.api.response.ProductsGetResponse;
import com.taobao.api.response.ShopGetResponse;
import com.taobao.api.response.ShopUpdateResponse;
import com.taobao.api.response.TopatsTradesSoldGetResponse;
import com.taobao.api.response.TraderatesGetResponse;
import com.taobao.api.response.UserSellerGetResponse;
import com.taobao.api.response.WangwangEserviceChatpeersGetResponse;

/**
 */
public class App3{

	public static final String url = "http://gw.api.taobao.com/router/rest";
	
	//建立應用時,TOP頒發的唯一標識,TOP通過App Key來鑑別應用的身份。呼叫介面時必須傳入的引數。
	public static final String appkey = "124####";
	
	/**
	 * SessionKey簡單的說就是代表賣家的登入session
	 * SessionKey是使用者身份的標識,應用獲取到了SessionKey即意味著應用取得了使用者的授權,可以替使用者向TOP請求使用者的
	 */
	public static final String sessionKey = "#########################";
	
	//App Secret是TOP給應用分配的金鑰,開發者需要妥善儲存這個金鑰,這個金鑰用來保證應用來源的可靠性,防止被偽造。
	public static final String secret = "##############";
	
	/**
	 * 查詢賣家使用者資訊
	 * @throws ApiException
	 */
	@Test
	public void test1() throws ApiException{
		
		TaobaoClient client=new DefaultTaobaoClient(url, appkey, secret);
		UserSellerGetRequest req=new UserSellerGetRequest();
		req.setFields("location,user_id,nick,sex,seller_credit,type,has_more_pic,item_img_num,item_img_size,prop_img_num,prop_img_size,auto_repost,promoted_type,status,alipay_bind,consumer_protection,avatar,liangpin,sign_food_seller_promise,has_shop,is_lightning_consignment,has_sub_stock,is_golden_seller,vip_info,magazine_subscribe,vertical_market,online_gaming");
		UserSellerGetResponse response = client.execute(req , sessionKey);
		
		System.out.println(response.getBody());
		System.out.println(response.getMsg());
		User user = response.getUser();
	}
	
	/**
	 * 獲取產品列表
	 * @throws ApiException
	 */
	@Test
	public void test2() throws ApiException{
		TaobaoClient client=new DefaultTaobaoClient(url, appkey, secret);
		ProductsGetRequest req=new ProductsGetRequest();
		req.setFields("product_id,tsc,cat_name,name");
		req.setNick("yukilovesummer");
		req.setPageNo(1L);
		req.setPageSize(40L);
		ProductsGetResponse response = client.execute(req);
		System.out.println(response.getBody());
	}
	
	/**
	 * 獲取賣家店鋪的基本資訊
	 * cid:14
	 * @throws ApiException
	 */
	@Test
	public void test3() throws ApiException{
		TaobaoClient client=new DefaultTaobaoClient(url, appkey, secret);
		ShopGetRequest req=new ShopGetRequest();
		req.setFields("sid,cid,title,nick,desc,bulletin,pic_path,created,modified");
		req.setNick("yukilovesummer");
		ShopGetResponse response = client.execute(req);
		System.out.println(response.getBody());
	}
	
	/**
	 * 更新店鋪基本資訊
	 * @throws ApiException
	 */
	@Test
	public void test4() throws ApiException{
		TaobaoClient client=new DefaultTaobaoClient(url, appkey, secret);
		ShopUpdateRequest req=new ShopUpdateRequest();
		req.setTitle("女裝");
		req.setBulletin("大放價咯");
		req.setDesc("<p>歡迎廣大顧客前來放心選購,我店將竭誠為您服務!</p>");
		ShopUpdateResponse response = client.execute(req , sessionKey);
		System.out.println(response.getBody());
	}
	
	/**
	 * 搜尋評價資訊
	 * @throws ParseException
	 * @throws ApiException
	 */
	@Test
	public void test5() throws ParseException, ApiException{
		TaobaoClient client=new DefaultTaobaoClient(url, appkey, secret);
		TraderatesGetRequest req=new TraderatesGetRequest();
		req.setFields("tid,oid,role,nick,result,created,rated_nick,item_title,item_price,content,reply,num_iid");
//		req.setRateType("get");
//		req.setRole("buyer");
		req.setRateType("give");
		req.setRole("seller");
		req.setResult("good");
		req.setPageNo(1L);
		req.setPageSize(100L);
		Date dateTime = SimpleDateFormat.getDateTimeInstance().parse("2011-01-01 00:00:00");
		req.setStartDate(dateTime);
		dateTime = SimpleDateFormat.getDateTimeInstance().parse("2013-11-02 00:00:00");
		req.setEndDate(dateTime);
//		req.setTid(123456L);
		req.setUseHasNext(true);
//		req.setNumIid(1234L);
		TraderatesGetResponse response = client.execute(req , sessionKey);
		System.out.println(response.getBody());
	}
	
	/**
	 * 非同步獲取三個月內已賣出的交易詳情(支援超大賣家)
	 * @throws ApiException
	 */
	@Test
	public void test6() throws ApiException{
		TaobaoClient client=new DefaultTaobaoClient(url, appkey, secret);
		TopatsTradesSoldGetRequest req=new TopatsTradesSoldGetRequest();
		req.setFields("tid,seller_nick,buyer_nick,payment");
		req.setStartTime("20131101");
		req.setEndTime("20131130");
		req.setIsAcookie(true);
		TopatsTradesSoldGetResponse response = client.execute(req , sessionKey);
		System.out.println(response.getBody());
	}
	
	/**
	 * 獲取當前會話使用者出售中的商品列表
	 * @throws Exception
	 */
	@Test
	public void test7() throws Exception{
		TaobaoClient client=new DefaultTaobaoClient(url, appkey, secret);
		ItemsOnsaleGetRequest req=new ItemsOnsaleGetRequest();
		req.setFields("num_iid,title,price");
//		req.setQ("N97");
//		req.setCid(14L);
//		req.setSellerCids("14");
//		req.setHasDiscount(true);
//		req.setHasShowcase(true);
//		req.setOrderBy("list_time:desc");
//		req.setIsTaobao(true);
//		req.setIsEx(true);
		req.setPageNo(1L);
		req.setPageSize(1000L);
//		Date dateTime = SimpleDateFormat.getDateTimeInstance().parse("2000-01-01 00:00:00");
//		req.setStartModified(dateTime);
//		dateTime = SimpleDateFormat.getDateTimeInstance().parse("2000-01-01 00:00:00");
//		req.setEndModified(dateTime);
		ItemsOnsaleGetResponse response = client.execute(req , sessionKey);
		System.out.println(response.getBody());
	}
	
	/**
	 * 得到單個商品資訊
	 * @throws ApiException 
	 */
	@Test
	public void test8() throws ApiException{
		TaobaoClient client=new DefaultTaobaoClient(url, appkey, secret);
		ItemGetRequest req=new ItemGetRequest();
		req.setFields("num_iid,title,price,desc_modules,sell_point");
		req.setNumIid(20554027669L);
//		req.setTrackIid("123_track_456");
		ItemGetResponse response = client.execute(req , sessionKey);
		System.out.println(response.getBody());
		Item item = response.getItem();
		System.out.println(item.getTitle());
		System.out.println(item.getDesc());
		System.out.println(item.getPropImgs());
	}
	
	@Test
	public void test9() throws ApiException{
		TaobaoClient client=new DefaultTaobaoClient(url, appkey, secret);
		WangwangEserviceChatpeersGetRequest req=new WangwangEserviceChatpeersGetRequest();
		req.setChatId("abcd");
		req.setStartDate("2013-02-01");
		req.setEndDate("2013-03-24");
		req.setCharset("utf-8");
		WangwangEserviceChatpeersGetResponse response = client.execute(req , sessionKey);
		System.out.println(response.getBody());
	}
	
	/**
	 * 查詢賣家地址庫
	 * @throws Exception
	 */
	@Test
	public void test10() throws Exception{
		TaobaoClient client=new DefaultTaobaoClient(url, appkey, secret);
		LogisticsAddressSearchRequest req=new LogisticsAddressSearchRequest();
//		req.setRdef("no_def");
		LogisticsAddressSearchResponse response = client.execute(req , sessionKey);
		System.out.println(response.getBody());
	}
	
	/**
	 * 查詢物流公司資訊
	 * @throws ApiException
	 */
	@Test
	public void test11() throws ApiException{
		TaobaoClient client=new DefaultTaobaoClient(url, appkey, secret);
		LogisticsCompaniesGetRequest req=new LogisticsCompaniesGetRequest();
		req.setFields("id,code,name,reg_mail_no");
		req.setIsRecommended(true);
		req.setOrderMode("offline");
		LogisticsCompaniesGetResponse response = client.execute(req);
		System.out.println(response.getBody());
	}
	
}


相關推薦

api簡單呼叫

SessionKey、AppKey、AppSecret的名詞解釋: 1、當你註冊為淘寶開放平臺的使用者時,就可以建立一個應用: 2、下面的應用的詳細資訊 3、淘寶api查詢的就是該應用下使用的賣家資訊,因為淘寶api主要是給賣家做一些擴充套件功能的,比如裝修店鋪等。

java呼叫api例項

SessionKey、AppKey、AppSecret的名詞解釋: 1、當你註冊為淘寶開放平臺的使用者時,就可以建立一個應用: 2、下面的應用的詳細資訊 3、淘寶api查詢的就是該應用下使用的賣家資訊,因為淘寶api主

API開發(一) 簡單的用TOPAPI來獲取使用者資訊

1.首先建立一個C#  windows窗體應用程式,暫時把專案叫topapi 2.找到專案topapi的引用,右鍵新增引用,找到下載的sdk裡的dll檔案,(TopSdk.dll)  2.點選Form1編輯程式碼 4.新增淘寶api名稱空間 using

回顧篇:API web開發二 呼叫API

上一篇已經說明了如何引導使用者授權登入,獲取access_token。這樣,我們就可以正式呼叫API了。 淘寶提供了兩種呼叫方法,一種為http呼叫方法,一種為https免籤呼叫方式。因為專案用的是第一種方法,那麼在這裡,我們就只介紹http的呼叫方法。 淘寶API採用RE

征信接口之API接口

淘寶接口小貸公司對用戶征信數據的把控只能依賴傳統的央行征信這一單一維度,當需要驗證用戶購買力、住址穩定性、工作單位地址等特征時,往往會很無力。貸款用戶的淘寶數據包含了貸款人的消費能力、收貨地址穩定性等特征,在已有的技術方案上,要獲取淘寶數據需自行研發爬蟲,將碰到以下困難:1 淘寶登錄機制的破解,具體表現在破解

事件簡單分析

近日內,淘寶商城的事情鬧得沸沸揚揚的,搞得大家覺得都有點動盪不安了,比發射天宮一號還熱鬧,大概是因為天宮一號不關大家的事情吧,純粹為了欣賞火箭升空吧。淘寶事件的起因是因為淘寶要調整商戶的管理費用,導致淘寶商戶做出的一些舉動。10日,淘寶商城公佈了2012年度商家招商續簽及相關規則:技術服務年費從6000元提至

api的封裝

這是全部寫在一起的,你們可以根據需求,拆分成類,就可以直接用了<?php /** * Filename: TopApi.php * Created: 2010-12-20 * Author: blog.csdn.net/jakieyoung *

API開發系列---阿里.聚石塔.開放平臺的使用

好久沒有繼續跟進淘寶的API使用了,有很多做相關應用的同行都來諮詢,很多都因為自己開發工作比較忙而沒有來得及好的處理,前幾天,有一個朋友叫幫忙指導如何使用淘寶API,由於原來有一些成熟的例子應用,因此原以為直接執行或者稍微修改一下即可,因此沒有太多的注意。 首先我們需要申請一個應用 特別的是,現在的淘寶

Python初識 python隨機調取api獲取資料

import requests import sys import random api = { 'number':[ 'https://acs.m.taobao.co

api自己的封裝之python版

#!/usr/bin/env python import datetime try : import json except ImportError : import simplejson as json import urllib, hashlib impo

談談Magento與API整合

在群裡聊到了這個話題,把聊的內容整理下放這裡。 現在用Magento來建國內B2C網站的越來越多了,而淘寶是國內電子商務界的老大,這也就帶來一種現象就是,使用Magento做獨立B2C運營的公司,必然

API學習之道:TOP之API介面接入教程

作為一箇中小型網站開發者,淘寶API的開放大大縮短了網站的開發週期和運作效率,面對海量的資料,開發者只要仔細閱讀開發文件,熟悉相應的介面,就可以把資料匯入自己的網站,這樣就不必望洋興嘆了。目前淘寶TOP的API介面正日益完善,但相應的介面和開發文件還不是很全,經過了3天的仔

API——獲取IP歸屬地等資訊

簡介 使用淘寶API,獲取IP地址所在的國家、省、市、地區,以及訪問介面時所使用的ISP(電信/聯通/移動/鐵通等)。 此介面採集自這裡。 介面型別 HTTP(GET) / UTF-8 介面返回值型別 json 請求地址: http://ip.tao

API系列

一、 淘寶官方文件中心 http://open.taobao.com/doc2/doc_index.htm?spm=a219a.7629140.0.0.zn4POM 關鍵名詞解釋: https://open.taobao.com/docs/doc.htm?spm=a219

JAVA 呼叫IP地址庫API

1. 請求介面(GET): 2. 響應資訊: (json格式的)國家 、省(自治區或直轄市)、市(縣)、運營商 3. 返回資料格式: {"code":0,"data":{"ip":"210.75.225.254","country":"\u4e2d\u56fd","area":"\u534e\

百度--360搜索引擎搜索API

進化 rap 索引 lis sig als -c list 理學 百度(baidu)Api地址:http://suggestion.baidu.com/su?wd=設計&p=3&cb=window.bdsug.sugwindow.bdsug.sug({q:”

jq左側tab簡單切換效果

<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=ut

用nodejs寫簡單爬蟲抓取https頁面

2016-09-23 周海漢 2016.9.23 淘寶有很多反爬措施。其中https就是反爬措施之一。一般的支援http協議的爬取失效了。 nodejs 是採用google V8引擎寫成的javascript後臺框架。自從有

百度翻譯API簡單呼叫

翻譯API HTTP地址 http://api.fanyi.baidu.com/api/trans/vip/translate 您需要向該地址通過POST或GET方法傳送下列欄位來訪問服務 欄位名 型別 必填引數 描述 備註 q TEXT Y 請求翻譯query UTF-8

簡單python爬蟲圖片+介面程式設計+打包成exe

原始碼解析 新建GetImg.py檔案: 第一步:編寫爬蟲程式碼 import re import urllib.request def getHtml(url='') : page =