首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python 学习手册
Python Cookbook
Python 基础教程
Python Sites
PyPI - Python Package Index
http://www.simple-is-better.com/
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
V2EX  ›  Python

阿里的官方 Python 文档控制 lot 设备,迷..

  •  
  •   kayseen · 5 天前 · 3031 次点击

    如下代码是控制物联网设备的一个官方文档,我实在是在各处都找不到from com.aliyun.api.gateway.sdk import这三个导入的包是怎么安装的...已经安装了 aliyun 的 python 的 sdk 也不行,有做过的吗请教下...

    import uuid
    import json
    from com.aliyun.api.gateway.sdk import client
    from com.aliyun.api.gateway.sdk.http import request
    from com.aliyun.api.gateway.sdk.common import constant
    
    host = "https://api.link.aliyun.com"
    url = "/thing/properties/set"
    
    cli = client.DefaultClient(app_key="你的<AppKey>", app_secret="你的<AppSecret>")
    
    #post form
    
    req_post = request.Request(host=host, protocol=constant.HTTP, url=url, method="POST", time_out=30000)
    bodyMap = {
      'id': str(uuid.uuid4()),
      'version': "1.0",
      'request': {
          'iotToken': "xxxx",
          'apiVer': "1.0.5"
      },
      'params': {
          #接口参数
          'iotId':"value1",
          'items':"value2",
          'userId':"value3",
          'userType':"value4",
          'origin':"value5",
          'productKey':"value6",
          'deviceName':"value7"
      }
    }
    
    headers = {
      'accept': 'application/json'
    }
    
    req_post.set_body(bodyMap)
    req_post.set_headers(headers)
    req_post.set_content_type(constant.CONTENT_TYPE_JSON)
    print cli.execute(req_post)
    
    24 回复  |  直到 2019-09-11 13:55:08 +08:00
        1
    guiqiqi   5 天前 via iPhone
    我怎么觉得是从 java 粘贴过来的,python 少见有用 com 做的包名呐……
        2
    kayseen   5 天前
    @guiqiqi 额 搞不懂,但是看他这个 Python 代码好像还是 python2 的,但是我现在连他的包都装不起来...
        3
    watsy0007   5 天前
    文档地址发出来看下. 或者 github 地址发出来.
        4
    Kilerd   5 天前   ♥ 2
    这段代码怎么有股咖喱味。。。啊。不,是 java 味。
        6
    lolizeppelin   5 天前 via Android
    哈哈哈 咖喱味
        7
    janxin   5 天前 via iPad
    @Kilerd 咖灰味
        8
    Hopetree   5 天前
    既然能引用肯定有包吧,看看是不是环境变量 path 里面需要添加包路径
        9
    Trim21   5 天前 via iPhone
    这包名起的也是很可以了…
        10
    nuistzhou   5 天前 via iPhone
    说实话,这文档写的真不咋滴
        11
    default7   5 天前
    这个是放到哪里去运行呢?
        12
    kayseen   5 天前 via Android
    @default7 这就已经可以直接运行的,就是发送请求,但是阿里云的包装不上。。所以就运行不起来
        13
    kayseen   5 天前 via Android
    @nieyujiang
    你好,请问那几个从 com 导包的路径找不到,是需要先安装什么吗?
        14
    caqiko   5 天前 via Android
    @kayseen #13 com 文件夹复制到你的.py 同级目录
        15
    nieyujiang   5 天前 via iPhone
    @kayseen #13 仔细看他的 demo
        16
    kayseen   5 天前
    @nieyujiang
    @caqiko
    了解了,感谢~
        17
    jy02201949   5 天前
    阿里的文档有时候是看着挺迷的
        18
    kayseen   5 天前
    @nieyujiang 我现在看阿里他们的文档,好多入参什么的都没有解释..
    然后就是,比如说我要控制一个阿里的板子的开关,是不是可以使用 https://dev.iot.aliyun.com/iotstudio/api_center?spm=a2c56.pc_iot_community_api_center.0.0.667a520652w076&serviceId=716 这个页面上的触发物的模型属性或者是使用其他的什么服务?而且入参的话,我控制开关应该入什么参数啊...麻烦了
        19
    nieyujiang   4 天前 via iPhone
    @kayseen #18 不知道,我只是睡不着随手搜索就找到了
        20
    kayseen   4 天前
    @nieyujiang 好的,谢谢哈
        21
    todd7zhang   4 天前
    ```python
    com/aliyun/api/gateway/sdk/http/request.py

    def get_protocol(self):
    return self.__protocol

    def set_protocol(self, protocol):
    self.__protocol = protocol

    def get_method(self):
    return self.__method

    def set_method(self, method):
    self.__method = method

    def get_host(self):
    return self.__host

    def set_host(self, host):
    self.__host = host
    ```

    真一股 java 味...
        22
    hurrytospring   4 天前
    @todd7zhang 说不定就是 java 转译的
        23
    Phariel   4 天前
    Ali 多是 Java 栈的 开发风格从 Java 沿袭过来也并不奇怪
        24
    skinny   4 天前
    用代码生成器从 Java 代码转的?或者人工转写的?
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4179 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 21ms · UTC 02:05 · PVG 10:05 · LAX 19:05 · JFK 22:05
    ♥ Do have faith in what you're doing.