Пример #1
0
def on_wechat_message(message):
    print('type=%s' % message.type)
    if message.type == 'voice':
        return recognize_sound(message.media_id)
    if message.type == 'text':
        reply = ArticlesReply(message=message)
        article = Article(title="WeRoBot",
                          description="WeRoBot是一个微信机器人框架",
                          img="https://github.com/apple-touch-icon-144.png",
                          url="https://github.com/whtsky/WeRoBot")
        article1 = Article(title="WeRoBot",
                           description="WeRoBot是一个微信机器人框架",
                           img="https://github.com/apple-touch-icon-144.png",
                           url="https://github.com/whtsky/WeRoBot")
        article2 = Article(title="WeRoBot",
                           description="WeRoBot是一个微信机器人框架",
                           img="https://github.com/apple-touch-icon-144.png",
                           url="https://github.com/whtsky/WeRoBot")
        article3 = Article(title="WeRoBot",
                           description="WeRoBot是一个微信机器人框架",
                           img="https://github.com/apple-touch-icon-144.png",
                           url="https://github.com/whtsky/WeRoBot")
        reply.add_article(article)
        reply.add_article(article1)
        reply.add_article(article2)
        reply.add_article(article3)
        return reply
        '''logger.info(message.source)
Пример #2
0
def test_articles_reply():
    article = Article(
        title="tt",
        description="附近的萨卡里发生",
        img="http",
        url="uuu"
    )
    t = int(time.time())
    reply = ArticlesReply(
        target='tg',
        source='ss',
        time=t
    )
    assert reply.render().strip() == """
    <xml>
    <ToUserName><![CDATA[tg]]></ToUserName>
    <FromUserName><![CDATA[ss]]></FromUserName>
    <CreateTime>{time}</CreateTime>
    <MsgType><![CDATA[news]]></MsgType>
    <Content><![CDATA[]]></Content>
    <ArticleCount>0</ArticleCount>
    <Articles></Articles>
    </xml>""".format(time=t).strip()

    reply._args['content'] = 'wwww'
    assert '<Content><![CDATA[wwww]]></Content>' in reply.render()
    reply.add_article(article)
    assert '<ArticleCount>1</ArticleCount>' in reply.render()
    assert article.render() in reply.render()
    for _ in range(9):
        reply.add_article(article)
    assert '<ArticleCount>10</ArticleCount>' in reply.render()
    with pytest.raises(AttributeError):
        reply.add_article(article)
Пример #3
0
def test_article():
    article = Article(title="tt",
                      description=to_binary("附近的萨卡里发生"),
                      img="http",
                      url="uuu")
    assert article.render().strip() == to_text("""
    <item>
    <Title><![CDATA[tt]]></Title>
    <Description><![CDATA[附近的萨卡里发生]]></Description>
    <PicUrl><![CDATA[http]]></PicUrl>
    <Url><![CDATA[uuu]]></Url>
    </item>
    """).strip()
Пример #4
0
def test_article():
    article = Article(
        title="tt", description=to_binary("附近的萨卡里发生"), img="http", url="uuu"
    )
    assert article.render().strip() == to_text(
        """
    <item>
    <Title><![CDATA[tt]]></Title>
    <Description><![CDATA[附近的萨卡里发生]]></Description>
    <PicUrl><![CDATA[http]]></PicUrl>
    <Url><![CDATA[uuu]]></Url>
    </item>
    """
    ).strip()
Пример #5
0
    def test_send_article_messages(self):
        responses.add_callback(responses.POST,
                               self.URL,
                               callback=self.article_callback)

        from werobot.replies import Article
        articles = []
        for _ in range(0, 8):
            articles.append(
                Article(*[
                    "test_title", "test_description", "test_img", "test_url"
                ]))

        r = self.client.send_article_message("test_id", articles)
        assert r == {"errcode": 0, "errmsg": "ok"}

        articles = []
        for _ in range(0, 8):
            articles.append({
                "title": "test_title",
                "description": "test_description",
                "url": "test_url",
                "picurl": "test_pic_url"
            })

        r = self.client.send_article_message("test_id", articles)
        assert r == {"errcode": 0, "errmsg": "ok"}
Пример #6
0
def img(message):
    media_id = message.MediaId
    #reply = ImageReply(message=message, media_id=media_id)
    # embed()
    source_url = message.PicUrl
    source_path = "test.png"
    source_path = "test_images/{}.png".format(media_id)
    os.system("wget -O {} {}".format(source_path, source_url))

    #result_path = colorizer.plot_transformed_image(path=source_path, render_factor=render_factor, compare=False)
    #result_path = "test.png"
    #result_path = "result_images/test.png"
    #print("#"*100, result_path)

    result_url = "http://8.140.106.109/flask/?imageId={}.png".format(
        message.MediaId)
    background_process = Process(target=process, args=(source_path, ))
    background_process.start()
    #media_id = client.upload_media("image", open(r"{}".format(result_path), "rb"))['media_id']
    #reply = ImageReply(message=message, media_id=media_id)

    reply = ArticlesReply(message=message)
    article = Article(
        title="彩色化后的图片",
        description="点击进去即可看到原始图片",
        img=
        "https://mmbiz.qpic.cn/mmbiz_png/BU6V4FVSBN53fVic0xKfhTnXmLvJDAk8TKbRfF4f8HHjRtTpZzsrGhBzKUqF8lG0XCqKZhf9WtzsSicRe2auWzNQ/0?wx_fmt=png",
        url=result_url,
    )
    reply.add_article(article)

    return reply
Пример #7
0
 def reply(self, message, **kwargs):
     if self.type == 'text':
         return TextReply(
             message=message,
             content=self.content if self.content else '欢迎关注花胶!')
     elif self.type == 'music':
         if self.music.url:
             return MusicReply(message=message,
                               title=self.music.music_title,
                               description=self.music.music_description,
                               url=self.music.url.link,
                               hq_url=self.music.hq_url.link)
     elif self.type == 'article':
         reply = ArticlesReply(message=message)
         if self.article:
             for art in self.article:
                 article = Article(
                     title=art.title,
                     description=art.description,
                     img=art.img.get_link(),
                     url=art.url,
                 )
                 reply.add_article(article)
             return reply
     return ''
Пример #8
0
def blog(message):
    reply = ArticlesReply(message=message)
    article = Article(title="v1coder",
                      description="我的个人博客",
                      img=".png",
                      url="https://www.jianshu.com/u/7cb04d09491e")
    reply.add_article(article)
    return reply
Пример #9
0
def ArticleReturn(key, message):
    article = Article(title=key["title"],
                      description=key["description"],
                      img=key["img"],
                      url=key["url"])
    reply = ArticlesReply(message)
    reply.add_article(article)
    return reply
Пример #10
0
def get_ss(message):
    ss = eval(helper.get('ss'))
    reply = ArticlesReply(message=message)
    article = Article(title='ss账号',
                      description=ss_to_str(ss),
                      img=ss.get('qr_code'),
                      url='http://wechat.long2ice.cn/')
    reply.add_article(article)
    return reply
Пример #11
0
def blog(message):
    reply = ArticlesReply(message=message)
    article = Article(
        title="标题",
        description="测试百度",
        img=
        "https://upload.jianshu.io/users/upload_avatars/9691564/d4404291-308a-4159-b324-4ae400d8c977.png",
        url="http://www.baidu.com")
    reply.add_article(article)
    return reply
Пример #12
0
def blog(message):
    reply = ArticlesReply(message=message)
    article = Article(
        title="Python零基础学习",
        description="廖雪峰学习网站",
        img=
        "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1581182922983&di=99797126d30557e47892e7af4b5c663b&imgtype=jpg&src=http%3A%2F%2Fimg1.imgtn.bdimg.com%2Fit%2Fu%3D2046400996%2C3772250545%26fm%3D214%26gp%3D0.jpg",
        url="https://www.liaoxuefeng.com/wiki/1016959663602400")
    reply.add_article(article)
    return reply
Пример #13
0
def reply(message):
    reply = ArticlesReply(content="HoneywellMobilebus", message=message)
    article = Article(
        title="Mobilebus",
        description="点击进入Honeywell移动班车系统",
        img=
        "https://secure.gravatar.com/avatar/0024710771815ef9b74881ab21ba4173?s=420",
        url="http://mbus.honeywell.com.cn")
    reply.add_article(article)
    return reply
Пример #14
0
def blog(message):
    reply = ArticlesReply(message=message)
    article = Article(
        title="CSDN首页",
        description="我的个人博客",
        img=
        "https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=2146046871,2611785107&fm=27&gp=0.jpg",
        url="https://www.csdn.net/")
    reply.add_article(article)
    return reply
Пример #15
0
def blog(message):
    reply = ArticlesReply(message=message)
    article = Article(
        title="v1coder",
        description="我的个人博客",
        img="https://upload.jianshu.io/users/upload_avatars/9691564/d4404291-308a-4159-b324-4ae400d8c977.png",
        url="https://www.jianshu.com/u/7cb04d09491e"
    )
    reply.add_article(article)
    return reply
Пример #16
0
def baidu(message):
    reply = ArticlesReply(message=message)
    article = Article(
        title="百度网盘首页",
        description="我的百度网盘",
        img=
        "http://i0.hdslb.com/bfs/face/e3151d681ef3917565e757e5bee885ba1e528b54.jpg",
        url="https://pan.baidu.com")
    reply.add_article(article)
    return reply
Пример #17
0
def first(message, session):
    changdu = str(len(session))
    session[changdu] = message.content
    print(message.content)
    if '王方冰' in message.content:
        ans = '听名字就知道很漂亮~~'
        return ans
    elif '李韬' in message.content:
        ans = '听名字就知道很肥~~'
        return ans
    elif '李坤' in message.content:
        ans = '嗯,我见过,很帅~~'
        return ans
    elif '音乐' in message.content or '歌' in message.content:
        music1 = music_data()
        return music1
    elif '名字' in message.content:
        ans = '我叫昵昵~~'
        return ans
    elif '颜值' in message.content:
        ans = '请回复要测颜值的照片哦~~'
        return ans
    elif message.content in qishu_dict.keys():
        reply = ArticlesReply(message=message)
        article = Article(
            title=qishu_dict[message.content]['title'],
            description=qishu_dict[message.content]['description'],
            img=qishu_dict[message.content]['img'],
            url=qishu_dict[message.content]['url'])
        reply.add_article(article)
        return reply
    elif '报名' in message.content or '脱单' in message.content:
        reply = ArticlesReply(message=message)
        article = Article(
            title='等你脱单报名~~',
            description='等你脱单~~',
            img='http://kan.027cgb.com/623324/177048046.jpg',
            url='https://mp.weixin.qq.com/s/ruwj9ARcQX5tIj-B9et1FQ')
        reply.add_article(article)
        return reply
    else:
        ans = joke.chat_module(message.content)
        return ans
Пример #18
0
def sing(message):
    reply = ArticlesReply(message=message)
    article = Article(
        title="网易云音乐",
        description="即将跳转网易云",
        img=
        'http://img1.imgtn.bdimg.com/it/u=3397394635,2323693060&fm=26&gp=0.jpg',
        url="https://music.163.com/")
    reply.add_article(article)
    return reply
Пример #19
0
def yuyin(message, session):
    len_res = len(message.recognition)  #语音识别结果,微信自带
    res = message.recognition[0:len_res - 1]
    #print (res)
    if '王方冰' in res:
        ans = '听名字就知道很漂亮~~'
        return ans
    elif '李韬' in res:
        ans = '听名字就知道很肥~~'
        return ans
    elif '李坤' in res:
        ans = '嗯,我见过,很帅~~'
        return ans
    elif '音乐' in res or '歌' in res:
        music1 = music_data()
        return music1
    elif '名字' in res or '叫啥' in res:
        ans = '我叫昵昵~~'
        return ans
    elif '颜值' in res:
        ans = '请回复要测颜值的照片哦~~'
        return ans
    elif res in qishu_dict.keys():
        reply = ArticlesReply(message=message)
        article = Article(title=qishu_dict[res]['title'],
                          description=qishu_dict[res]['description'],
                          img=qishu_dict[res]['img'],
                          url=qishu_dict[res]['url'])
        reply.add_article(article)
        return reply
    elif '报名' in res or '脱单' in res:
        reply = ArticlesReply(message=message)
        article = Article(
            title='等你脱单报名~~',
            description='等你脱单~~',
            img='http://kan.027cgb.com/623324/177048046.jpg',
            url='https://mp.weixin.qq.com/s/ruwj9ARcQX5tIj-B9et1FQ')
        reply.add_article(article)
        return reply
    else:
        ans = joke.chat_module(res)
        return ans
Пример #20
0
def blog(message):
    reply = ArticlesReply(message=message)
    article = Article(
        title="历史视频",
        description="乱七八糟的",
        img="http://img.duoziwang.com/2016/12/30/19570835988.jpg",
        url=
        "https://mp.weixin.qq.com/mp/homepage?__biz=MzI4Nzc4NjE2Nw==&hid=10&sn=39b20b7102bbfc7352a92e631b47b295"
    )
    reply.add_article(article)
    return reply
Пример #21
0
def menu1(message):
    reply = ArticlesReply(message=message)
    article = Article(
        title="胡说八道",
        description="找个树洞 打着胡说八道的名义 说那些只能、只敢、只想在梦里说的话",
        img='''https://mmbiz.qpic.cn/mmbiz_jpg/RnMhjm9oqzBG3
                      PcfuXDcxOdd9BhUBKibIMXDdOicU0sEKa1tYy1JOFsGu3icG73Xh4p0zSgicXP6zKJ5JWPPO5BLKQ/0?wx_fmt=jpeg''',
        url='''https://mp.weixin.qq.com/advanced/selfmenu?action=index&t=advanced
                      /menu-setting&token=1153211364&lang=zh_CN''')
    reply.add_article(article)
    return reply
Пример #22
0
def echo(message):
    reply = ArticlesReply(message=message)
    article = Article(
        title="Learn by doing",
        description="相信自己",
        img=
        "http://img.taopic.com/uploads/allimg/120727/201995-120HG1030762.jpg",
        url="https://www.baidu.com/")

    reply.add_article(article)
    return reply
Пример #23
0
def blog(message):
    reply = ArticlesReply(message=message)
    article = Article(
        title="忧郁的炸酱面",
        description="我的个人博客",
        img="https://cdn2.jianshu.io/assets/default_avatar/8-a356878e44b45ab268a3b0bbaaadeeb7.jpg?imageMogr2/"
            "auto-orient/strip|imageView2/1/w/120/h/120",
        url="https://www.jianshu.com/u/3c58aa6164de"
    )
    reply.add_article(article)
    return reply
Пример #24
0
def blog(message):
    reply = ArticlesReply(message=message)
    article = Article(
        title="历史群发",
        description="乱七八糟的",
        img=
        "http://image.biaobaiju.com/uploads/20180227/11/1519701852-pQFCqdYWoD.jpg",
        url=
        "https://mp.weixin.qq.com/mp/homepage?__biz=MzI4Nzc4NjE2Nw==&hid=9&sn=0fb12269521137c0bac5355777058cca"
    )
    reply.add_article(article)
    return reply
Пример #25
0
 def get_blog(message):
     reply = ArticlesReply(message=message)
     article = Article(
         title="王炳明の博客",
         description="明哥的个人网站",
         img=
         "https://mmbiz.qpic.cn/mmbiz_jpg/UFM3uMlAXxMehvNJYJ5uwlE1n2rfwbUkHl4MXaBUJO8xflmdLmNShqK9iaMQaLeqbpLbicGHe5V8MyibmhZ9lqbkA/0?wx_fmt=jpeg",
         url="https://iswbm.com")
     reply.add_article(article)
     client.send_text_message(
         message.source, content=cfg_dict["werobot"]["common"]["blog"])
     return reply
Пример #26
0
def first(message, session):
    #changdu=str(len(session))
    #session[changdu] = message.content
    input_shuxing = message.content[0:2]  #检测是否是查找属性
    number = re.sub("\D", "", message.content)  #基于正则化找出字符串里面的数字
    #print (input_shuxing)
    if input_shuxing in message_people.list_can:
        ans = message_people.check_message(message.content)
        #print (ans)
        return ans
    elif '音乐' in message.content or '歌' in message.content or '曲' in message.content or '睡觉' in message.content or '催眠' in message.content:
        music1 = music.music_data(message.content)
        return music1
    elif '名字' in message.content or '叫啥' in message.content:
        ans = '我叫昵昵~~'
        return ans
    elif '颜值' in message.content:
        ans = '请回复要测颜值的照片哦~~'
        return ans
    elif number in message_people.qishu_dict.keys():
        reply = ArticlesReply(message=message)
        article = Article(
            title=message_people.qishu_dict[number]['title'],
            description=message_people.qishu_dict[number]['description'],
            img=message_people.qishu_dict[number]['img'],
            url=message_people.qishu_dict[number]['url'])
        reply.add_article(article)
        return reply
    elif '报名' in message.content or '脱单' in message.content:
        reply = ArticlesReply(message=message)
        article = Article(
            title='等你脱单报名~~',
            description='等你脱单~~',
            img='http://kan.026cgb.com/623324/177048046.jpg',
            url='https://mp.weixin.qq.com/s/ruwj9ARcQX5tIj-B9et1FQ')
        reply.add_article(article)
        return reply
    else:
        ans = joke.chat_module(message.content)
        return ans
Пример #27
0
def yuyin(message, session):
    len_res = len(message.recognition)  #语音识别结果,微信自带
    res = message.recognition[0:len_res - 1]
    number = re.sub("\D", "", res)  #基于正则化找出字符串里面的数字
    #print (number)
    print(res)
    input_shuxing = res[0:2]  #检测是否是查找属性
    if input_shuxing in message_people.list_can:
        ans = message_people.check_message(res)
        return ans
    elif '音乐' in res or '歌' in res or '曲' in res or '睡觉' in res or '催眠' in res:
        music1 = music.music_data(res)
        return music1
    elif '名字' in res or '叫啥' in res:
        ans = '我叫昵昵~~'
        return ans
    elif '颜值' in res:
        ans = '请回复要测颜值的照片哦~~'
        return ans
    elif number in message_people.qishu_dict.keys():
        reply = ArticlesReply(message=message)
        article = Article(
            title=message_people.qishu_dict[number]['title'],
            description=message_people.qishu_dict[number]['description'],
            img=message_people.qishu_dict[number]['img'],
            url=message_people.qishu_dict[number]['url'])
        reply.add_article(article)
        return reply
    elif '报名' in res or '脱单' in res:
        reply = ArticlesReply(message=message)
        article = Article(
            title='等你脱单报名~~',
            description='等你脱单~~',
            img='http://kan.027cgb.com/623324/177048046.jpg',
            url='https://mp.weixin.qq.com/s/ruwj9ARcQX5tIj-B9et1FQ')
        reply.add_article(article)
        return reply
    else:
        ans = joke.chat_module(res)
        return ans
Пример #28
0
 def get_index(message):
     user_info = client.get_user_info(message.source)
     reply = ArticlesReply(message=message)
     article = Article(
         title="三年的 Python 精华文章汇总",
         description="专属于「{}」的干货目录".format(user_info["nickname"]),
         img=
         "https://mmbiz.qpic.cn/mmbiz_jpg/UFM3uMlAXxMehvNJYJ5uwlE1n2rfwbUkHl4MXaBUJO8xflmdLmNShqK9iaMQaLeqbpLbicGHe5V8MyibmhZ9lqbkA/0?wx_fmt=jpeg",
         url="https://t.1yb.co/69Kw"
         # url="https://github.com/iswbm/PythonCodingTime"
     )
     reply.add_article(article)
     return reply
Пример #29
0
def feedback(message):
    try:
        if message.content:
            if re.compile(".*?反馈.*?信息.*?").match(message.content):
                reply = ArticlesReply(message=message)
                article = Article(
                    title="用户反馈",
                    description="基于微信的校园投票系统",
                    img="https://github.com/apple-touch-icon-144.png",
                    url="http://www.yourdomain.xyz:yourport/feedback")
                reply.add_article(article)
                return reply
    except AttributeError:
        if message.recognition:
            if re.compile(".*?反馈.*?信息.*?").match(message.recognition):
                reply = ArticlesReply(message=message)
                article = Article(
                    title="查看用户反馈",
                    description="基于微信的校园投票系统",
                    img="https://github.com/apple-touch-icon-144.png",
                    url="http://www.yourdomain.xyz:yourport/watchfeedback")
                reply.add_article(article)
                return reply
Пример #30
0
def createVote(message):
    try:
        if message.content:
            if re.compile(".*?创建.*?投票.*?").match(message.content):
                reply = ArticlesReply(message=message)
                article = Article(
                    title="创建投票",
                    description="基于微信的校园投票系统",
                    img="https://github.com/apple-touch-icon-144.png",
                    url="http://www.yourdomain.xyz:yourport/vote")
                reply.add_article(article)
                return reply
    except AttributeError:
        if message.recognition:
            if re.compile(".*?创建.*?投票.*?").match(message.recognition):
                reply = ArticlesReply(message=message)
                article = Article(
                    title="创建投票",
                    description="基于微信的校园投票系统",
                    img="https://github.com/apple-touch-icon-144.png",
                    url="http://www.yourdomain.xyz:yourport/vote")
                reply.add_article(article)
                return reply
Пример #31
0
def old_alarm_handler(message):
    source = message.source
    if not check_auth(source):
        return '您不是授权用户,无法使用该功能。'
    content = message.content
    query_id, url = old_alarm_query(content)
    print(new_query(source, query_id, url))
    reply = ArticlesReply(message=message)
    article = Article(title="告警详情",
                      description="南阳网络运维一点通",
                      img="https://github.com/apple-touch-icon-144.png",
                      url=APP_URL + "?open_id=%s&uuid=%s" % (source, query_id))
    reply.add_article(article)
    return reply