关于thinkphp5.1中vendor目录与extend目录说明
1、vendor

vendor的是通过composer的方法进行自动引入到第三方扩展库vendor目录里的,调用方法是利用的vendor方法:

2、extend

extend是通过手动的方法直接把第三方扩展库或者自己写的封装库直接引入到extend目录里,调用方法的实例:

   require '../extend/taobao/TopSdk.php';require '../extend/taobao/QimenCloud/top/request/WdgjTradenosensitiveinfoListGetRequest.php';

调取淘系数据需要下载第三方类库包好相应开放功能

<?php
//获取网店管家测试数据
namespace app\index\controller;
use app\facade\HttpRequest;
use \think\Request;class Qimen
{/** 问题  1.弄清楚 ASCII排序 与 字典序排序* 系统级参数* Appkey = "71005530"  //接入应用需要的key*  AppSecret = "n800m9iaei27l1n3b5eh7ko87gfl2k0g"  //用于生成sign*  AccessToken = "191167eb31f242bfa4a089359b77f5e4" //授权码*/public $Appkey = "71005530";public $AppSecret = "n800m9iaei27l1n3b5eh7ko87gfl2k0g";public $AccessToken = "191167eb31f242bfa4a089359b77f5e4";//奇门keypublic $Appkeyqm    = "对应奇门appkeyqm";//奇门secretpublic $Appsecretqm = "对应奇门appsecretqm";//授权方的奇门 应用 的Appkey    貌似该代码中没有使用到public $targetAppkey='对应奇门targetAppkey';//授权方给客户配置的奇门路由参数routeParameter  有的接口本身就有这个参数直接传值即可,例如订单查询;有的接口入参没有这个参数,需要额外传入这个参数例如会员查询,目前设置的值与自己的奇门应用Appkey一致public $routeParameter='*****';//调用入口地址public $gatewayUrl = "http://t33hglzv00.api.taobao.com/router/qm";// 查询仓库信息  应用级参数public $Method = "wdgj.warehouse.list.get";public $Format  ="json";public $Versions = "1.0";
//    public $Timestamp = "1581228150";public $Apiurl = "http://api.wdgj.com/wdgjcloud/api";public $Heades = array('application/x-www-form-urlencoded;charset=UTF8');/*** 对象 转 数组* @param object $obj 对象* @return array*/public function object_to_array($obj) {$obj = (array)$obj;foreach ($obj as $k => $v) {if (gettype($v) == 'resource') {echo '资源非对象';die();}if (gettype($v) == 'object' || gettype($v) == 'array') {//数据为空默认给空字符if (empty($v)){$obj[$k] = '';continue;}$obj[$k] = (array)$this->object_to_array($v);}}return $obj;}//网店管家对奇门数据抓取的类库引用public function WdgjTradenosensitiveinfoListGetRequest($data){//抓取淘系数据/**引入类库*/require '../extend/taobao/TopSdk.php';require '../extend/taobao/QimenCloud/top/request/WdgjTradenosensitiveinfoListGetRequest.php';$c   = new \QimenCloudClient($this->Appkeyqm,$this->Appsecretqm);$req = new \WdgjTradenosensitiveinfoListGetRequest();$req->setBegintime($data['begintime']);$req->setEndtime($data['endtime']);$req->setPageno('1');$req->setPagesize('20');$req->setSearchtype('0');$req->setwdgjaccesstoken($this->AccessToken);$req->setWdgjappkey($this->Appkey);$req->setWdgjmethod('wdgj.tradenosensitiveinfo.list.get');$req->setWdgjformat("json");$req->setWdgjversions('1.0');$req->setWdgjtimestamp($data['timestamp']);$req->setWdgjsign($data['sign']);$rsp = $c->execute($req);//对象转数组$res = $this->object_to_array($rsp);return $res;}/** 抓取网店管家淘系数据 订单数据*/public function WdgjTradenosensitiveinfoListGet(Request $request){//系统级参数$paramArr = array();$paramArr['appkey'] = $this->Appkey;$paramArr['accesstoken'] = $this->AccessToken;$paramArr['aethod'] = $this->Method;$paramArr['format'] = $this->Format;$paramArr['versions'] = $this->Versions;$paramArr['timestamp'] = (string)time();//应用级参数$paramArr['searchtype'] = "0";$paramArr['pageno']     = "1";$paramArr['pagesize']   = "1";$paramArr['begintime']  = date('Y-m-d H:i:s',strtotime("-1 day"));$paramArr['endtime']    = date('Y-m-d H:i:s');$paramArr['method']     = 'wdgj.tradenosensitiveinfo.list.get';$paramArrDemo = $paramArr;//生成Sign签名   将除Sign参数外的所有系统级参数和应用级级参数的值进行字典排序生成串(versions=1.1时按ASCII码排序)if($paramArr['versions']=='1.1'){// 发现问题  ASCCII的排序与测试工具的排序是不一样的 所以version值我改成1.0的字典排序//ksort($paramArrDemo);sort($paramArrDemo,SORT_LOCALE_STRING);}else{sort($paramArrDemo,SORT_LOCALE_STRING);}//2. 将AppSecret加到该串的首和尾并进行MD5加密生成32位字符串$paramString =  join($paramArrDemo);//Sign签名  所有系统级参数 和 必要的应用级参数 的值进行 字典排序 生成串$sign = MD5($this->AppSecret.$paramString.$this->AppSecret);$paramArr['sign'] = $sign;//抓取淘系数据$res = $this->WdgjTradenosensitiveinfoListGetRequest($paramArr);dump(1111);halt($res);}// 不通过淘系sdk抓取 查询仓库信息的接口public function wdgjwarehouselistGet(Request $request)
{//1. 进行字典序排序 或者 ASCII码排序//系统级参数$paramArr = array();$paramArr['Appkey'] = $this->Appkey;$paramArr['Accesstoken'] = $this->AccessToken;$paramArr['Method'] = $this->Method;$paramArr['Format'] = $this->Format;$paramArr['Versions'] = $this->Versions;$paramArr['Timestamp'] = (string)time();//应用级参数   依赖注入方式调用$paramArr['pageno']     = $request->get('page');$paramArr['pagesize']   = $request->get('pageSize');$paramArrDemo = $paramArr;//生成Sign签名   将除Sign参数外的所有系统级参数和应用级级参数的值进行字典排序生成串(versions=1.1时按ASCII码排序)if($paramArr['Versions']=='1.1'){// 发现问题  ASCCII的排序与测试工具的排序是不一样的 所以version值我改成1.0的字典排序
//            ksort($paramArrDemo);sort($paramArrDemo,SORT_LOCALE_STRING);}else{sort($paramArrDemo,SORT_LOCALE_STRING);}//2. 将AppSecret加到该串的首和尾并进行MD5加密生成32位字符串$paramString =  join($paramArrDemo);//Sign签名  所有系统级参数 和 必要的应用级参数 的值进行 字典排序 生成串$sign = MD5($this->AppSecret.$paramString.$this->AppSecret);$paramArr['Sign'] = $sign;//3. 发送post 请求获取网店管家数据\think\Facade::bind('app\facade\HttpRequest','\app\common\HttpRequest');/*** 请求数据* @param string $url 请求地址* @param array $postData 请求数据* @param string $head 请求头* @return array*///静态代理方式调用$res  = HttpRequest::httprequest($this->Apiurl, $paramArr, $this->Heades);dump($res);
}}

通过网店管家抓取奇门淘系订单数据相关推荐

  1. python行业中性_Python抓取分析淘宝连衣裙数据,128元真的是低价人群分界线吗?...

    1.我是一个低价人群用户 上周发表文章<一个匿名用户的淘宝"连衣裙"大观>后,交流群里面很热闹地讨论了起来,小伙伴们都在秀自己的淘宝连衣裙搜索价格,相较于小伙伴们搜索出 ...

  2. 网店管家 不入塔读取淘宝订单的方法

    网店管家 不入塔读取淘宝订单的方法 1.自建立api.授权,2.通过独立网店的接口读取 竟然测试..订单信息会被模糊了 [receiver_address] => 龙*镇[ 河南 郑州 新郑市] ...

  3. 静态代理和依赖注入方式获取网店管家查询仓库信息接口

    请求的URL地址http://localhost/tp5.1/public/index.php/index/wdgj/wdgjwarehouselistGet?page=1&pageSize= ...

  4. 【小程序源码】uni-app云开发的网盘助手抓取网盘资源

    这是一款uni-app开发的一款网盘小助手小程序源码 安装教程: 我们首先使用HBuilderx导入您的源码,然后点击manifest.json基础配置然后重新获取一下uni-app应用标识 然后我们 ...

  5. 解密最近几年的新型骗局-情侣网店、未交易、淘宝内部券,你中招了几个

    随着社会的发展,各类的骗局也是层出不穷,稍不留神就会中招,否则怎么会有''城市套路深,我想回农村,农村路太滑,人心更复杂''这句话呢?所以我们要擦亮双眼,今天我就先给大家解密几个最近几年的骗局,看下自 ...

  6. Python爬虫 | 斗图网表情包抓取

    Python爬虫 | 斗图网表情包抓取 1.数据来源分析 2.制作div_list 3.发起请求 4.保存图片 5.批量获取 6.完整代码 声明 1.数据来源分析   打开斗图吧的主页,发现网址非常有 ...

  7. 网店管家 ecshop 网店蜘蛛1.9的接口实现

    网店管家 ecshop 网店蜘蛛1.9的接口实现 1.问题速度的问题 2.漏单 3 付款方式不对

  8. 爬虫抓取糯米网上所有商家数据

    前段时间写了 爬取美团商家信息的博客 爬虫抓取美团网上所有商家信息 ,这次说说爬取糯米网,由于某些原因无法提供源代码,但是,代码不是关键,最关键的是思想,懂了思想,代码是很容易写的. 爬虫最重要的是分 ...

  9. 解决Spyder无法抓取Yahoo!finance财经数据

    问题描述:用Spyder在Yahoo!finance上抓取财经数据时,处于无反应状态,无法抓取所需的财经数据.主要是因为Yahoo!finance停用了它的历史数据API,所以为了能继续抓取数据,需要 ...

  10. python爬取大众点评评论_python爬虫抓取数据 小试Python——爬虫抓取大众点评上的数据 - 电脑常识 - 服务器之家...

    python爬虫抓取数据 小试Python--爬虫抓取大众点评上的数据 发布时间:2017-04-07

最新文章

  1. UWP x:bind
  2. python3多线程实例_python3多线程糗事百科案例
  3. Collection源码阅读
  4. UOJ#52. 【UR #4】元旦激光炮(交互)
  5. 三种方式解决vue中v-html元素中标签样式
  6. iOS:childViewController和view的声明周期及其原理
  7. 均值滤波计算_基于FPGA的中值滤波算法实现
  8. 叮咚志汇超级外卖餐饮 6.3.8 + 超级跑腿 v2.0.3 打包下载 小程序模块
  9. 微信小程序做出 物流签收信息(步骤条) 源码
  10. java monitor怎么使用_Java monitor机制使用方法解析
  11. LeetCode算法之蓄水池算法
  12. 微信公众号 自定义分享功能
  13. rk1808交叉编译opencv_ubuntu16.04交叉编译opencv 移植到rk1808上
  14. MAC使用Bootcamp安装win7
  15. php网页全屏背景图代码,HTML5 body设置全屏背景图片的示例代码
  16. HTML外边框塌陷什么意思,html如何解决高度塌陷问题
  17. svn 提交 认证失败 170001 已解决
  18. 学生成绩查询系统(Java实现),你第一个Java小项目
  19. 24v升100/110/150/200高压电源模块
  20. ECCV 2022 | RFLA:基于高斯感受野的微小目标检测标签分配

热门文章

  1. oracle client 客户端 安装 oracle客户端安装
  2. 蓝桥杯单片机Proteus仿真源文件
  3. Picasa2图片查找浏览工具
  4. 网吧游戏服务器制作教程,网吧服务器系统环境部署
  5. 遗传算法matlab_通俗易懂地解释遗传算法
  6. android+tv局域网播放器,【实用教程】电视盒子局域网播放全攻略
  7. 数字化营销的意义所在
  8. 浅谈信息系统设计原则与架构思路
  9. iss服务器显示不符合要求,IIS站点启动错误提示“值不在预期的范围内”解决方法...
  10. laravel框架解决sql注入问题