淘宝等电商api的简单调用

简介: 淘宝等电商api的简单调用

调用地址


下面是调用淘宝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);
1


10

// 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();



20
// 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());
}


相关文章
|
9天前
|
XML 存储 API
电商商品详情页面的获取,详情图属性sku价格的采集,API接口系列
在电商平台上,商品详情页面的获取,包括详情图、属性、SKU(Stock Keeping Unit,库存量单位)、价格等信息的采集,通常可以通过多种方式实现,其中之一是利用电商平台提供的API接口。以下是一个基于通用流程的概述,用于说明如何通过API接口系列来采集这些信息。
|
10天前
|
数据采集 存储 安全
在电商API采集过程中违反数据隐私和合规性规定如何避免?
为确保电商API数据采集合规与安全,需遵循多项措施:熟悉GDPR等法规;遵守API条款;最小化数据收集;匿名化处理;获用户同意;应用数据加密;实行访问控制;定期安全审计;设定数据保留政策;响应数据主体请求;记录处理活动;建立泄露应对计划;加强员工培训;审查合作伙伴合规性;必要时咨询法律意见。这些步骤有助于降低违规风险。
|
19天前
|
安全 算法 测试技术
淘宝API接口测试中的安全性保障
在电商领域,淘宝API连接商家与消费者,安全性至关重要。本文探讨了确保API接口测试安全的方法与最佳实践:接口签名确保请求完整性;Token方案防抓包和数据爬取;使用Postman和Katalon Studio提高测试效率。此外,还强调了使用授权认证、数据加密、参数验证及限制请求频率等安全配置的重要性。最后,提醒测试者注意账户授权、数据格式、遵循安全规范及保持工具更新。这些措施共同保障了API的安全性和稳定性。
|
24天前
|
安全 Java 测试技术
淘宝API接口测试全攻略
淘宝提供丰富的API接口以促进与平台的数据交互和功能开发。为确保稳定性和安全性,API接口测试至关重要。测试前需熟悉API文档、选配工具(如Postman、JUnit、Selenium)并在独立环境中进行。测试包括端到端、单元及集成测试,并需关注安全问题和正确的数据传输格式。通过有效测试可提升API质量与用户体验。
|
4天前
|
缓存 测试技术 API
电商平台 API 接入技术要点深度剖析
这段内容详述了电商API接入的关键步骤:首先,深入了解API文档以明确功能权限及数据格式;其次,选择恰当的接入方式如RESTful API或RPC;接着实施身份验证与授权保障数据安全;处理数据传输与异常情况;利用缓存和并发提升性能;采用加密手段和限流策略加强安全防护;持续监控API状态并记录日志;最后,通过充分测试确保稳定性和进行版本管理以适应API迭代。
|
21天前
|
安全 测试技术 API
淘宝API接口测试的详细步骤
理解API文档和规范至关重要; 它们详细描述了请求参数、方法、路径及预期响应, 帮助测试人员准确设计测试用例。测试用例需覆盖正常与异常流程, 可采用自动化工具如Postman辅助编写。测试前要配置好环境, 包括服务器、数据库及测试数据, 并确保安全措施到位。执行测试时选择合适的工具, 如JMeter或SoapUI, 并验证结果符合预期。使用问题跟踪工具记录并跟进测试中发现的问题, 以提升软件质量。
|
25天前
|
API 开发者 Python
淘宝商品详情API接口开发实战
在电商领域,获取淘宝商品详情是关键需求。需先注册淘宝开放平台账号并创建应用,获取AppKey与AppSecret;随后申请商品服务API权限。利用Python,通过AppKey和AppSecret获取Access Token,进而调用商品详情API,需替换示例代码中的`your_app_key`, `your_app_secret`, `your_access_token`, 和`item_id`。注意遵守平台限制,处理可能的错误及合理规划调用策略以避免违规。[示例代码](https://)展示了从获取Access Token到调用商品详情API的全过程。
|
1月前
|
数据采集 自然语言处理 算法
淘宝评论的 API 接口获取:技术探索与应用
这篇文稿探讨了淘宝评论API在数据驱动的商业环境中的重要性。API接口使得高效、精准地获取淘宝评论成为可能,帮助企业分析消费者反馈、优化产品和服务,以及训练智能算法。通过API,商家能实时监控评论以快速响应市场变化,同时确保数据合规性和安全性。然而,获取和使用数据涉及复杂的接口调用、数据清洗、反爬虫机制应对等挑战。通过实际案例,展示了API如何促进产品优化、市场研究和智能客服改进。随着技术发展,未来将有更多创新应用,但也需面对更严格的法规监管。
|
4天前
|
机器人 API Python
智能对话机器人(通义版)会话接口API使用Quick Start
本文主要演示了如何使用python脚本快速调用智能对话机器人API接口,在参数获取的部分给出了具体的获取位置截图,这部分容易出错,第一次使用务必仔细参考接入参数获取的位置。
|
2天前
|
XML JSON API
RESTful API设计最佳实践:构建高效、可扩展的接口
【8月更文挑战第17天】RESTful API设计是一个涉及多方面因素的复杂过程。通过遵循上述最佳实践,开发者可以构建出更加高效、可扩展、易于维护的API。然而,值得注意的是,最佳实践并非一成不变,随着技术的发展和业务需求的变化,可能需要不断调整和优化API设计。因此,保持对新技术和最佳实践的关注,是成为一名优秀API设计师的关键。