本文整理汇总了Python中werobot.utils.to_text函数的典型用法代码示例。如果您正苦于以下问题:Python to_text函数的具体用法?Python to_text怎么用?Python to_text使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了to_text函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: TEMPLATE
def TEMPLATE(self):
if 'account' in self._args:
return to_text(
"""
<xml>
<ToUserName><![CDATA[{target}]]></ToUserName>
<FromUserName><![CDATA[{source}]]></FromUserName>
<CreateTime>{time}</CreateTime>
<MsgType><![CDATA[transfer_customer_service]]></MsgType>
<TransInfo>
<KfAccount><![CDATA[{account}]]></KfAccount>
</TransInfo>
</xml>
"""
)
else:
return to_text(
"""
<xml>
<ToUserName><![CDATA[{target}]]></ToUserName>
<FromUserName><![CDATA[{source}]]></FromUserName>
<CreateTime>{time}</CreateTime>
<MsgType><![CDATA[transfer_customer_service]]></MsgType>
</xml>
"""
)
开发者ID:whtsky,项目名称:WeRoBot,代码行数:26,代码来源:replies.py
示例2: test_to_text
def test_to_text():
assert to_text(6) == six.text_type(6)
assert to_text(b"aa") == "aa"
assert to_text("cc") == "cc"
if six.PY2:
assert to_text(u"喵") == u"喵"
assert to_text("喵") == u"喵"
开发者ID:adam139,项目名称:WeRobot,代码行数:7,代码来源:test_utils.py
示例3: render
def render(self):
items = []
for article in self._articles:
items.append(ArticlesReply.ITEM_TEMPLATE.format(
title=to_text(article.title),
description=to_text(article.description),
img=to_text(article.img),
url=to_text(article.url)
))
self._args["items"] = ''.join(items)
self._args["count"] = len(items)
if "content" not in self._args:
self._args["content"] = ''
return ArticlesReply.TEMPLATE.format(**self._args)
开发者ID:FlyRabbit,项目名称:WeRoBot,代码行数:14,代码来源:replies.py
示例4: process_args
def process_args(self, kwargs):
args = defaultdict(str)
for k, v in kwargs.items():
if is_string(v):
v = to_text(v)
args[k] = v
return args
开发者ID:adam139,项目名称:WeRobot,代码行数:7,代码来源:replies.py
示例5: test_filter
def test_filter():
import re
import werobot.testing
robot = WeRoBot(SESSION_STORAGE=False)
@robot.filter("喵")
def _1():
return "喵"
assert len(robot._handlers["text"]) == 1
@robot.filter(re.compile(to_text(".*?呵呵.*?")))
def _2():
return "哼"
assert len(robot._handlers["text"]) == 2
@robot.text
def _3():
return "汪"
assert len(robot._handlers["text"]) == 3
tester = werobot.testing.WeTest(robot)
assert tester.send_xml(_make_xml("啊"))._args['content'] == u"汪"
assert tester.send_xml(_make_xml("啊呵呵"))._args['content'] == u"哼"
assert tester.send_xml(_make_xml("喵"))._args['content'] == u"喵"
try:
os.remove(os.path.abspath("werobot_session"))
except OSError:
pass
robot = WeRoBot(SESSION_STORAGE=False)
@robot.filter("帮助", "跪求帮助", re.compile("(.*?)help.*?"))
def _(message, session, match):
if match and match.group(1) == u"小姐姐":
return "本小姐就帮你一下"
return "就不帮"
assert len(robot._handlers["text"]) == 3
@robot.text
def _4():
return "哦"
assert len(robot._handlers["text"]) == 4
tester = werobot.testing.WeTest(robot)
assert tester.send_xml(_make_xml("啊"))._args['content'] == u"哦"
assert tester.send_xml(_make_xml("帮助"))._args['content'] == u"就不帮"
assert tester.send_xml(_make_xml("跪求帮助"))._args['content'] == u"就不帮"
assert tester.send_xml(_make_xml("ooohelp"))._args['content'] == u"就不帮"
assert tester.send_xml(_make_xml("小姐姐help")
)._args['content'] == u"本小姐就帮你一下"
开发者ID:whtsky,项目名称:WeRoBot,代码行数:57,代码来源:test_robot.py
示例6: test_filter
def test_filter():
import re
import werobot.testing
robot = WeRoBot()
@robot.filter("喵")
def _():
return "喵"
assert len(robot._handlers["text"]) == 1
@robot.filter(re.compile(to_text(".*?呵呵.*?")))
def _():
return "哼"
assert len(robot._handlers["text"]) == 2
@robot.text
def _():
return "汪"
def _make_xml(content):
return """
<xml>
<ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[fromUser]]></FromUserName>
<CreateTime>1348831860</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[%s]]></Content>
<MsgId>1234567890123456</MsgId>
</xml>
""" % content
tester = werobot.testing.WeTest(robot)
assert tester.send_xml(_make_xml("啊")) == "汪"
assert tester.send_xml(_make_xml("啊呵呵")) == "哼"
assert tester.send_xml(_make_xml("喵")) == "喵"
robot = WeRoBot()
@robot.filter("帮助", "跪求帮助", re.compile(".*?help.*?"))
def _():
return "就不帮"
assert len(robot._handlers["text"]) == 3
@robot.text
def _():
return "哦"
tester = werobot.testing.WeTest(robot)
assert tester.send_xml(_make_xml("啊")) == "哦"
assert tester.send_xml(_make_xml("帮助")) == "就不帮"
assert tester.send_xml(_make_xml("跪求帮助")) == "就不帮"
assert tester.send_xml(_make_xml("ooohelp")) == "就不帮"
开发者ID:1060460048,项目名称:WeRoBot,代码行数:57,代码来源:test_robot.py
示例7: test_string_entry
def test_string_entry():
assert isinstance(t.test_string, six.text_type)
assert t.test_string == "hello"
assert isinstance(t.test_int_to_string, six.text_type)
assert t.test_int_to_string == "123"
assert isinstance(t.test_float_to_string, six.text_type)
assert t.test_float_to_string == "1e-05"
assert isinstance(t.test_chinese, six.text_type)
assert t.test_chinese == to_text("喵")
assert t.test_string_none is None
开发者ID:adam139,项目名称:WeRobot,代码行数:10,代码来源:test_entry.py
示例8: create_group
def create_group(self, name):
"""
创建分组
详情请参考 http://mp.weixin.qq.com/wiki/index.php?title=分组管理接口
:param name: 分组名字(30个字符以内)
:return: 返回的 JSON 数据包
"""
name = to_text(name)
return self.post(url="https://api.weixin.qq.com/cgi-bin/groups/create", data={"group": {"name": name}})
开发者ID:whtsky,项目名称:WeRoBot,代码行数:11,代码来源:client.py
示例9: test_filter
def test_filter():
import re
import werobot.testing
robot = WeRoBot(enable_session=False)
@robot.filter("喵")
def _1():
return "喵"
assert len(robot._handlers["text"]) == 1
@robot.filter(re.compile(to_text(".*?呵呵.*?")))
def _2():
return "哼"
assert len(robot._handlers["text"]) == 2
@robot.text
def _3():
return "汪"
assert len(robot._handlers["text"]) == 3
tester = werobot.testing.WeTest(robot)
assert tester.send_xml(_make_xml("啊"))._args['content'] == u"汪"
assert tester.send_xml(_make_xml("啊呵呵"))._args['content'] == u"哼"
assert tester.send_xml(_make_xml("喵"))._args['content'] == u"喵"
try:
os.remove(os.path.abspath("werobot_session"))
except OSError:
pass
robot = WeRoBot(enable_session=False)
@robot.filter("帮助", "跪求帮助", re.compile(".*?help.*?"))
def _():
return "就不帮"
assert len(robot._handlers["text"]) == 3
@robot.text
def _4():
return "哦"
assert len(robot._handlers["text"]) == 4
tester = werobot.testing.WeTest(robot)
assert tester.send_xml(_make_xml("啊"))._args['content'] == u"哦"
assert tester.send_xml(_make_xml("帮助"))._args['content'] == u"就不帮"
assert tester.send_xml(_make_xml("跪求帮助"))._args['content'] == u"就不帮"
assert tester.send_xml(_make_xml("ooohelp"))._args['content'] == u"就不帮"
开发者ID:shijingyu,项目名称:WeRoBot,代码行数:53,代码来源:test_robot.py
示例10: parse_user_msg
def parse_user_msg(xml):
"""
Parse xml from wechat server and return an Message
:param xml: raw xml from wechat server.
:return: an Message object
"""
if not xml:
return
root = ElementTree.fromstring(xml)
wechat_message = dict((child.tag, to_text(child.text))
for child in root)
locationinfo = root.find('SendLocationInfo')
if locationinfo:
wechat_message.pop("SendLocationInfo")
wechat_message.update(dict((child.tag, to_text(child.text))
for child in locationinfo))
wechat_message["raw"] = xml
wechat_message["type"] = wechat_message.pop("MsgType")
message_type = MESSAGE_TYPES.get(wechat_message["type"], UnknownMessage)
return message_type(wechat_message)
开发者ID:railu,项目名称:WeRoBot,代码行数:22,代码来源:parser.py
示例11: create_group
def create_group(self, name):
"""
创建分组。
:param name: 分组名字(30个字符以内)
:return: 返回的 JSON 数据包
"""
name = to_text(name)
return self.post(
url="https://api.weixin.qq.com/cgi-bin/groups/create",
data={"group": {"name": name}}
)
开发者ID:adam139,项目名称:WeRobot,代码行数:13,代码来源:client.py
示例12: update_group
def update_group(self, group_id, name):
"""
修改分组名
详情请参考 http://mp.weixin.qq.com/wiki/index.php?title=分组管理接口
:param group_id: 分组id,由微信分配
:param name: 分组名字(30个字符以内)
:return: 返回的 JSON 数据包
"""
return self.post(
url="https://api.weixin.qq.com/cgi-bin/groups/update",
data={"group": {"id": int(group_id), "name": to_text(name)}},
)
开发者ID:whtsky,项目名称:WeRoBot,代码行数:13,代码来源:client.py
示例13: test_article
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()
开发者ID:whtsky,项目名称:WeRoBot,代码行数:14,代码来源:test_replies.py
示例14: update_group
def update_group(self, group_id, name):
"""
修改分组名。
:param group_id: 分组 ID,由微信分配
:param name: 分组名字(30个字符以内)
:return: 返回的 JSON 数据包
"""
return self.post(
url="https://api.weixin.qq.com/cgi-bin/groups/update",
data={"group": {
"id": int(group_id),
"name": to_text(name)
}}
)
开发者ID:adam139,项目名称:WeRobot,代码行数:15,代码来源:client.py
示例15: parse_user_msg
def parse_user_msg(xml):
"""
Parse xml from wechat server and return an Message
:param xml: raw xml from wechat server.
:return: an Message object
"""
if not xml:
return
wechat_message = dict((child.tag, to_text(child.text))
for child in ElementTree.fromstring(xml))
wechat_message["raw"] = xml
wechat_message["type"] = wechat_message.pop("MsgType").lower()
message_type = MESSAGE_TYPES.get(wechat_message["type"], UnknownMessage)
return message_type(wechat_message)
开发者ID:1060460048,项目名称:WeRoBot,代码行数:16,代码来源:parser.py
示例16: __init__
def __init__(self, message=None, **kwargs):
if "source" not in kwargs and isinstance(message, WeChatMessage):
kwargs["source"] = message.target
if "target" not in kwargs and isinstance(message, WeChatMessage):
kwargs["target"] = message.source
if 'time' not in kwargs:
kwargs["time"] = int(time.time())
args = dict()
for k, v in kwargs.items():
if is_string(v):
v = to_text(v)
args[k] = v
self._args = args
开发者ID:railu,项目名称:WeRoBot,代码行数:17,代码来源:reply.py
示例17: __init__
def __init__(self, message=None, **kwargs):
if message and "source" not in kwargs:
kwargs["source"] = message.target
if message and "target" not in kwargs:
kwargs["target"] = message.source
if 'time' not in kwargs:
kwargs["time"] = int(time.time())
args = defaultdict(str)
for k, v in kwargs.items():
if is_string(v):
v = to_text(v)
args[k] = v
self.process_args(args)
self._args = args
开发者ID:adam139,项目名称:WeRobot,代码行数:17,代码来源:replies.py
示例18: test_message_crypt
def test_message_crypt():
encoding_aes_key = generate_token(32) + generate_token(11)
token = generate_token()
timestamp = to_text(int(time.time()))
nonce = generate_token(5)
app_id = generate_token(18)
crypt = MessageCrypt(
token=token, encoding_aes_key=encoding_aes_key, app_id=app_id
)
message = crypt.encrypt_message('hello', timestamp, nonce)
assert message is not None
message = parse_xml(message)
assert message is not None
message = crypt.decrypt_message(
message['TimeStamp'], message['Nonce'], message['MsgSignature'],
message['Encrypt']
)
assert message == to_binary('hello')
开发者ID:whtsky,项目名称:WeRoBot,代码行数:19,代码来源:test_crypto.py
示例19: decrypt
def decrypt(self, text, app_id):
"""
对密文进行解密
:param text: 需要解密的密文
:param app_id: 微信公众平台的 AppID
:return: 解密后的字符串
"""
text = to_binary(text)
plain_text = self.cipher.decrypt(base64.b64decode(text))
padding = byte2int(plain_text, -1)
content = plain_text[16:-padding]
xml_len = socket.ntohl(struct.unpack("I", content[:4])[0])
xml_content = content[4:xml_len+4]
from_appid = content[xml_len+4:]
if to_text(from_appid) != app_id:
raise AppIdValidationError(text, app_id)
return xml_content
开发者ID:FlyRabbit,项目名称:WeRoBot,代码行数:21,代码来源:__init__.py
示例20: add_filter
def add_filter(self, func, rules):
"""
为 BaseRoBot 添加一个 ``filter handler``。
:param func: 如果 rules 通过,则处理该消息的 handler。
:param rules: 一个 list,包含要匹配的字符串或者正则表达式。
:return: None
"""
if not callable(func):
raise ValueError("{} is not callable".format(func))
if not isinstance(rules, list):
raise ValueError("{} is not list".format(rules))
if len(rules) > 1:
for x in rules:
self.add_filter(func, [x])
else:
target_content = rules[0]
if isinstance(target_content, six.string_types):
target_content = to_text(target_content)
def _check_content(message):
return message.content == target_content
elif is_regex(target_content):
def _check_content(message):
return target_content.match(message.content)
else:
raise TypeError("%s is not a valid rule" % target_content)
argc = len(signature(func).parameters.keys())
@self.text
def _f(message, session=None):
_check_result = _check_content(message)
if _check_result:
if isinstance(_check_result, bool):
_check_result = None
return func(*[message, session, _check_result][:argc])
开发者ID:bug3306,项目名称:WeRoBot,代码行数:37,代码来源:robot.py
注:本文中的werobot.utils.to_text函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论