公司外贸网站怎么做,番禺网站建设公司有哪些,wordpress站点logo多大合适,wordpress返回首页一直加载最近想做个微信机器人#xff0c;主要是为了个人方便。在腾云阁发现这个教程#xff0c;得到了一些启发。(修改转载已取得腾讯云授权)技术路径和实现思路首先编程语言使用了 Python #xff0c; Python 语法简洁、第三方扩展丰富#xff0c;也因为这里采用的微信消息框架 i…最近想做个微信机器人主要是为了个人方便。在腾云阁发现这个教程得到了一些启发。(修改转载已取得腾讯云授权)技术路径和实现思路首先编程语言使用了 Python Python 语法简洁、第三方扩展丰富也因为这里采用的微信消息框架 itchat 是基于 Python 的。服务器当然使用腾讯云这里我使用的是单核 1G 内存的最低配置因为作为个人用的这个配置绰绰有余了并且以后有更多用途的时候可以直接升级服务器配置和存储这就是云服务器的巨大优势。因为对于大部分人来说拿到一台崭新的服务器要部署服务是非常麻烦的所以我也不喜欢于是乎想到了使用 docker 容器来运行我的代码这样不用手动去配置服务器的运行环境我只需要创建一个 docker 镜像就可以了但是这样感觉还是挺麻烦的还要安装 docker 还要上传镜像。然后我发现了 daocloud 它可以帮助我完成容器管理和镜像生成的工作。所以我们部署路径是这样的编写代码-提交代码到 github 上-daocloud 自动生成 docker 镜像并部署到我们的云服务器上-自动运行也就是提交代码到分支然后然后自动更新发布服务就这么运行成功了具体过程所以对云服务器的配置而言我只需要为其安装 daocloud 的被控端程序即可然后就可以再也不用管这台服务器了太爽了吧~恰好发现腾讯云也支持了 daocloud 的系统在为云服务器安装系统的时候选择服务市场-Docker 容器-Daocloud 混合式容器管理平台即可。哇那这样岂不是爽上加爽不用登录服务器做任何配置~拿来即用真刺激。安装过程就不多说了他们也提供了文档非常简单两行命令而已然后我们可以在 daocloud 后台添加我们的主机了。然后我们去创建一个项目需要我们设置代码源可以选择 github 和 coding 确实比较人性化那么我们就需要自己去 github 创建好 git 项目了这里省略过选择好后就可以创建了。项目创建成功后我们只需要选择我们的代码分支构建一下就好了这时容器镜像就创建好了下来就是部署。创建一个应用会提示我们选择镜像来源这里选择之前构建的镜像点击部署最新版本就好了然后我们分别在项目设置和应用设置里配置自动构建和自动部署这样以后我们只要提交了代码 daocloud 会帮我们自动构建镜像然后部署不需要我们自己手动操作只需要专注代码逻辑不用再操心部署了。过程就是这么简单腾讯云服务器作为基础我们全程不用手动配置自己的服务器多么轻松惬意。程序实现前面重点讲了服务器配置和程序部署但是实际上部署的程序我们还没讲。容器打包必须要有一个 Dockerfile 来告诉容器如何构建镜像为了构建方便我们采用的 daocloud 提供的 python 镜像以下是 dockerfile 的内容FROM daocloud.io/python:3-onbuildENTRYPOINT [python]CMD [run.py]可以看到我们启动服务的文件是#!/usr/bin/env python3import bot.xiaoweiwei as wechatdef main():wechat.run()if __name__ __main__:main()import itchatfrom target.youku import YoukuDatafrom target.qqvideo import QQVideoDatafrom plugins.tuling import get_responseitchat.msg_register(Text)def text_reply(msg):itchat.send(/抠鼻,msg[FromUserName])return u你好请在群聊里面撩我 /微笑itchat.msg_register(Text, isGroupChatTrue)def group_reply(msg):if msg[isAt]:if u播放量 in msg[Text]:data YoukuData()if not data.check:return 查询失败num data.get_play_num()itchat.send(u优酷目前累计播放量为%s % num, msg[FromUserName])data QQVideoData()if not data.check:return 查询失败num data.get_play_num()return u腾讯视频目前累计播放量为%s % numelif u订阅 in msg[Text]:data YoukuData()if not data.check:return 查询失败num data.get_sub_num()return 目前优酷订阅人数为%s % numelif 详细播放 in msg[Text]:itchat.send(查询中..., msg[FromUserName])data YoukuData()if not data.check:return 查询失败d data.get_play_num_more()itchat.send(d, msg[FromUserName])data QQVideoData()if not data.check:return 查询失败d data.get_play_num_more()return delse:return get_response(msg[Text][5:])def run():itchat.auto_login(True,enableCmdQR2)itchat.run()youku.pypythonimport utilhomepage http://i.youku.com/i/UMzg0ODQyNDk4OA/videosclass YoukuData(object):def __init__(self,urlhomepage):self.ulr urlself.check Trueself.soup util.get_soup(url)if self.soup is None:self.check False#获得播放量def get_play_num(self):vnum self.soup.select(.vnum)if vnum is not None:x vnum[0]n x.get(title)num nelse:num **找不到播放量**return num#获得订阅数def get_sub_num(self):snum self.soup.select(.snum)if snum is not None:x snum[0]n x.get(title)num nelse:num **找不到订阅数**return num#详细播放量def get_play_num_more(self):titles self.soup.select(.v-meta-title)nums self.soup.select(.v-num)times self.soup.select(.v-publishtime)s 优酷视频-最新%d 个视频\n % len(titles)for x in range(len(titles)):s str(x1) .titles[x].string\n 播放量nums[x].string\nreturn s这里程序实现很简单使用的是 itchat 提供的方法具体可以参考 itchat 项目https://github.com/littlecodersh/ItChat总结以上就是快速实现微信机器人的思路其实主要想表达的就是现在的云技术对于开发者、对于编程初学者都是非常友好的我们完全不必要投入过多精力在运维和发布维护上只需要专注代码就可以。这也是云为我们生活带来的另一个方面的改变吧。