什么是扇贝编程,扇贝python课程怎么样

  什么是扇贝编程,扇贝python课程怎么样

  扇贝还是一个不错的背单词系统,但我一直不明白,为什么批量添加单词的官方页面限定一次10==个。美剧的时候挤了很多字要导入,从一个字本导入的时候,很尴尬。我查了一下,还没有人写过关于它的东西,所以我试着用python写了一个。

  下载地址:http://pan.baidu.com/s/1bn93yft

  github:https://github . com/林雨辰/shanbayAddWords

  扇贝API文件:http://www.shanbay.com/developer/wiki/intro/

  基本理念:

  1.请求用户授权

  2.循环查找单词以获得单词的ID。

  3.循环添加到同义词库中(需要单词的ID)

  功能很简单,思路也很清晰,但是第一次接触到关于API的东西,还是没什么概念。所以我看了廖雪峰写的新浪微博API的小demo,明白了具体原理。

  A.关于获取用户授权

  A.1设置参数

  Demo创建了一个名为APIclient的类来集成各种属性和各种get post方法的源码,使用起来很方便。

  可以简单地固定几个重要参数,例如app_key secret redirect_url,然后可以为用户生成固定的引导授权地址。

  A.2获取代码

  用户授权时,系统会根据回调地址自动回调代码参数。如果设置为扇贝的默认回调地址,代码部分会直接显示在url中,方便用户复制回给我。虽然不够友好,但这是唯一的办法。毕竟要想自动接收,首先得用python调用浏览器打开这个授权的网页。这种感觉好像很麻烦。

  A.3根据代码生成令牌。

  这个也是直接写在类里的,但是很简单。只需按照文档一步操作即可,后续所有操作都是基于令牌来与服务器进行标识,所以非常重要,每一步都要确认令牌是否过期。

  b .进行单词搜索

  这个很简单,就不说了。最主要的亮点是json的数据格式非常好。导入JSON后,系统自动将其处理为dict类型,调用起来特别方便。

  c .张贴歌词

  比较简单,但是要判断添加是否成功,毕竟不是每个单词都记录在词库里。

  D.连接

  Tkinter是挺方便的,但是在win和mac里面不太好调整大小,而且mac下面的输入框不能输入中文也很烦。如果有一天出现一个像winform带vs一样简单无脑的IDE,我大概离不开python了吧~

  E.

  同时学到了一个惊人的高级python技能。郁闷的是我不知道这东西的学名。从功能上看,实现了动态解析函数名的功能。

  例如:

  BDC _ body=client . get . BDC _ _ search(word=w)

  客户端. get这里看起来像这样

  def __getattr__(self,attr):def wrap(* * kw):if self . client . is _ expires():raiseAPIError( 21327 , expired_token ,attr)

  URL= % s % s/ %(self . client . API _ URL,attr.replace(__ ,/))

  # print(URL)return _ http _ call(URL,self.method,self.client.access_token,**kw)

  返回包装

  它使用“_ _”作为分节符,将函数名中的bdc和search作为字符串处理添加到url中,传入参数word=w作为attr字典,调用http_call进行连接。在这里,函数完全被视为一个变量,可以返回。这个操作让语言非常简洁漂亮~ ~

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: