Exemplo n.º 1
0
    def auto_click_url(self):
            imap = ImapClient(self._imap_host, self._imap_username, self._imap_password)
            imap.login()
            logging.info('IMAP login success')
            for i in range(60):
                try:
                    mid, url = imap.check_ok_new_emails(self._src_fid)
                except Exception as info:
                    logging.error("IMAP check email fail %s", info)
                    imap = ImapClient(self._imap_host, self._imap_username, self._imap_password)
                    imap.login()
                    continue

                if not mid or not url:
                    logging.info("OKCoin not new Email %s", i)
                    time.sleep(15)
                    continue
                res = self.retry_click(url)

                imap.move_message(mid, self._src_fid, self._dst_fid)
                fail = pq(res.content).find('.scr-reg-error')

                if fail:
                    logging.warning("OKCoin click withdraw url fail[url: %s]" % (url))
                else:
                    return True
            raise WithdrawException("OKCoin can not find withdraw email")