花了整整一个下午,终于在新浪sae部署完成WeRoBot,现在将其中的曲折记录下来。

  首先下载WeRoBot-SAE-demo,按照README.md中的要求,执行下述命令:

git clone git://github.com/whtsky/WeRoBot-SAE-demo.git
cd WeRoBot-SAE-demo
virtualenv --no-site-packages .
source bin/activate
pip install sae-python-dev
saecloud install werobot

  然后编辑config.yaml文件,更改其中的name

  接着打包该路径下的所有文件:

zip -r data.zip ./*

  进入新浪sae的代码管理界面,将刚才打包好的文件data.zip上传到代码库中。

  此时,访问sae应用的链接还有问题,如下(来自网络):

Traceback (most recent call last):
File "/data1/www/htdocs/783/booksearcher/1/index.wsgi", line 14, in <module>
from baymax import robot
File "/data1/www/htdocs/783/booksearcher/1/baymax.py", line 4, in <module>
robot = werobot.WeRoBot(token='kidult00')
File "/data1/www/htdocs/783/booksearcher/1/site-packages/werobot/robot.py", line 47, in __init__
filename=os.path.abspath("werobot_session")
File "/data1/www/htdocs/783/booksearcher/1/site-packages/werobot/session/filestorage.py", line 20, in __init__
self.db = dbm.open(filename, "c")
File "/usr/local/sae/python/lib/python2.7/anydbm.py", line 85, in open
return mod.open(file, flag, mode)
File "/usr/local/sae/python/lib/python2.7/dumbdbm.py", line 246, in open
return _Database(file, mode)
File "/usr/local/sae/python/lib/python2.7/dumbdbm.py", line 71, in __init__
with _open(self._datfile, 'w') as f:
IOError: [Errno 13] Permission denied: '/data1/www/htdocs/783/booksearcher/1/werobot_session.dat'

  需要进一步对robot.py做出下述更改:

from werobot.session.saekvstorage import SaeKVDBStorage
session_storage = SaeKVDBStorage()
robot = werobot.WeRoBot(token="your_token", enable_session=True,
session_storage=session_storage)

  此时再访问sae应用网址:

  

  此时公众号对任何输入都会返回Hello World!

  太好了,Hello World 部署完成,下面开始愉快的玩耍吧!

在新浪sae上部署WeRoBot的更多相关文章

  1. 【网站开发】在新浪SAE上搭建一个博客

    概述 在新浪SAE上搭建一个博客 1.访问新浪SAE站点 http://sae.sina.com.cn/ 2.注册新浪SAE 3.选择应用仓库 4.选择WordPress 5.安装WordPress ...

  2. 新浪sae上安装原生wordpress4.1

    1. 加入/改动wp-config.php文件 <?php /** * WordPress 基础配置文件. * * 本文件包括下面配置选项: MySQL 设置.数据库表名前缀. * 密匙.Wor ...

  3. 从Python爬虫到SAE云和微信公众号:二、新浪SAE上搭建微信服务

    目的:用PHP在SAE上搭建一个微信公众号的服务器. 1.申请一个SAE云账号 SAE申请地址:http://sae.sina.com.cn/  可以使用微博账号登陆,SAE是新浪的云服务,时间也比较 ...

  4. 在新浪SAE上搭建微信公众号的python应用

    微信公众平台的开发者文档https://www.w3cschool.cn/weixinkaifawendang/ python,flask,SAE(新浪云),搭建开发微信公众账号http://www. ...

  5. 如何利用php+android+新浪sae服务器做一个app下载应用

    功能简介:提供一个app下载的平台,类似于appstore,上面有很多app可供下载 实现基本思路:利用android,在手机桌面建立一个图标,点击该图标不是打开app应用,而是跳转到一个web页面, ...

  6. 基于新浪SAE平台的微信开发

      自己的微信公众平台开发差不多了,欢迎关注试用哦,我会不定期在那里分享技术文章! 主要功能: 输入t+中文或者英文返回对应的英中翻译 输入[m]随机来首音乐听,建议在wifi下听 输入[ly+你的留 ...

  7. 部署新浪SAE web.py Session及图片上传等问题注意事项

    1.以下几条代码解决编码问题 import sysreload(sys)sys.setdefaultencoding('utf-8') 2.图片上传问题 需要开通sina的Storage服务,随便建个 ...

  8. 新浪SAE部署django博客

    步骤: 第一步:注册新浪SAE账号(即新浪微博),下载TortoiseSVN 第二步:部署代码 使用SAE来部署代码,SAE提供的是PAAS层的云服务,即不是给你一个虚拟主机而是直接上传应用.进入SA ...

  9. Thinkcmf 在新浪云上的部署问题

    最近要开发一个社团主页,于是想到了CMF内容管理系统的,但是直接在自己的服务器测试成本太高,于是选择了在新浪云上进行部署测试. 但是在安装Thinkcmf的过程中产生了一些技术性的问题.但最后终于在自 ...

随机推荐

  1. SD卡读写扇区注意事项(转)

    源:http://blog.163.com/zhaojun_xf/blog/static/30050580201151410635516/ 在调试SD卡时,大家都喜欢使用扇区进行验证.也就是说,一般都 ...

  2. C#入门经典第八章面向对象编程简介-1

    面向对象编程(Object-Oriented Programming,OOP)技术 本章中的OPP实际上是.NET OOP,这里讲的一些技术不能应用于其他OOP环境.

  3. 把MSSQL的表数据查询成 insert into格式的函数

    USE [db] GO /****** Object: StoredProcedure [dbo].[proc_insert] Script Date: 12/05/2012 17:18:31 *** ...

  4. 生日蛋糕(DFS)

    题意: Description 7月17日是Mr.W的生日,ACM-THU为此要制作一个体积为Nπ的M层生日蛋糕,每层都是一个圆柱体.   设从下往上数第i(1 <= i <= M)层蛋糕 ...

  5. HDU 1434 幸福列车(优先队列)

    优先队列的应用 #include<iostream> #include<cstdio> #include<cstring> #include<queue> ...

  6. HDU 5569 matrix

    简单DP /* *********************************************** Author :Zhou Zhentao Email :774388357@qq.com ...

  7. 需要注意的subList方法!和substring是不一样的!从源码解释他们的不同。

    很多时候我们截取字符串用的是substring方法,很自然用着,但是对于列表的截取时很多时候就用得很少,但是其实他们是很不一样的,具体哪里不一样呢? package main; import java ...

  8. opencart配置

    1.安装opencart 2.修改后台目录(慎重,修改后插件安装会出错) Opencart默认的后台是网站/admin这样子,很多人可以猜到这种组合对于正式生产环境很不安全,我们可以把这个admin改 ...

  9. Size Balanced Tree(SBT) 模板

    首先是从二叉搜索树开始,一棵二叉搜索树的定义是: 1.这是一棵二叉树: 2.令x为二叉树中某个结点上表示的值,那么其左子树上所有结点的值都要不大于x,其右子树上所有结点的值都要不小于x. 由二叉搜索树 ...

  10. GPU

    GPU主要是进行计算机图形这种大运算量的图形处理器,包括顶点设置.光影.像素操作.对CPU发出的数据和指令,进行着色,材质填充,渲染. 在没有GPU的系统中,3D游戏中物体移动时的坐标转换与光源处理, ...