def extract_msg_layout(layout): sender, msg = None, None for elem in layout.children: if elem.getId() == 'id/chat_item_nick_name': sender = vc_view_text(elem)[:-1] elif elem.getId() == 'id/chat_item_content_layout': msg = vc_view_text(elem) return sender, msg
def extract_group_info(self): #调用这个函数时,需要已经位于群信息界面 xlist = self.get_vc_view_by_id('id/common_xlistview', 3) if not xlist: logger.error("提取群信息失败,已重试!") return None, None nameAndId = xlist.children[0].children[2].children[0].children[1] name = vc_view_text(nameAndId.children[0]) groupId = vc_view_text(nameAndId.children[1].children[0]) return name, groupId
def enter_group_by_search(self, gid): self.touch_button('GROUP_SEARCH') time.sleep(0.5) self.device.type(gid) time.sleep(0.5) search_result = self.get_vc_view_by_id('id/tv_name', 3) if not search_result: # 没有搜索到,点击取消 logger.error("搜索结果查找id/tv_name失败,可能需要取消搜索") self.cancel_search() return False # 搜索到结果了,验证一下id对不对,结果示例: 北航人在点评(71771261) _text = vc_view_text(search_result) logger.debug('群搜索结果: %s', to_str(_text)) _id = self.split_group_id(_text) if not _id: logger.error("搜索结果[%s]解析群号失败", to_str(_text)) self.cancel_search() return False if not str_equal(_id, gid): logger.error("搜索结果的群号[%s]和需要进的群号[%s]不一致", to_str(_id), to_str(gid)) self.cancel_search() return False #都对了,进群吧 if not self.switch_by_pixel("GROUP_LIST", "GROUP_CHAT", *BUTTON_LOCATION["SEARCH_RESULT"]): logger.error("点击搜索结果进群失败!!!!") self.cancel_search() return False return True
def get_member_id(self): content = self.get_vc_view_by_id('id/content') tmpqqid = '' try: _view = content.children[0].children[0].\ children[1].children[2].children[1] tmpqqid = vc_view_text(_view) except: return '' qqid = tmpqqid.split(' ')[0] print "Info : get the member id %s !" % qqid self.goto('GROUP_MEMBER') return qqid
def get_qq_name_id(self): if not self.goto('PROFILE_CARD'): return None, None qq_id = self.get_vc_view_text_by_id('id/info') qq_id = re.sub(r'\D', '', qq_id.strip()) qq_name_view = self.get_vc_view_by_id('id/common_xlistview')\ .children[0].children[0].children[0].children[0]\ .children[5].children[2].children[0] qq_name = vc_view_text(qq_name_view) if not self.goto('CONTACTS'): return None, None self.qq, self.nickname = int(qq_id), to_str(qq_name) return self.qq, self.nickname