Ejemplo n.º 1
0
def reward_author(ctx, author, url, percentage=50, memo="", debug=False):
    """ claim all the tokens of an account"""

    settings.set_steem_node()

    bot = TransferBot()
    bot.send_author_rewards(author, url, percentage, memo)
Ejemplo n.º 2
0
def all_tokens(ctx, account, debug=False):
    """ claim all the tokens of an account"""

    settings.set_steem_node()

    bot = ClaimBot()
    bot.claim_all_scot_tokens(account)
Ejemplo n.º 3
0
def all_users(ctx, debug=False):
    """ claim all the tokens of all accounts"""

    settings.set_steem_node()

    bot = ClaimBot()
    bot.claim_all_accounts()
Ejemplo n.º 4
0
 def _read_comments(self):
     if len(self.comments) == 0:
         # settings.set_steem_node(STEEM_API_NODES[1], overwrite=True)
         self.comments = get_comments(self.author)
         settings.set_steem_node(CURRENT_API_NODE,
                                 overwrite=True,
                                 condenser=False)
     return self.comments
Ejemplo n.º 5
0
def estimate_value(ctx, account, token, weight=100, debug=False):
    """ estimate the vote value of account """

    if debug:
        settings.set_debug_mode()
    settings.set_steem_node()

    print(Voter(account).estimate_vote_value_for_token(token, weight))
Ejemplo n.º 6
0
def estimate_weight(ctx, account, token, value, debug=False):
    """ estimate the needed weight to reach the vote value """

    if debug:
        settings.set_debug_mode()
    settings.set_steem_node()

    weight = Voter(account).estimate_vote_pct_for_token(token, float(value))
    print("{}%".format(round(weight, 2)))
Ejemplo n.º 7
0
 def fetch_posts(self, days):
     settings.set_hive_node()
     posts = query({
         "mode": "post",
         "account": self.account,
         "days": days
     })
     settings.set_steem_node()
     return posts
Ejemplo n.º 8
0
def vote(ctx, url, debug=False):
    """ vote a post by cn-hello """

    if debug:
        settings.set_debug_mode()

    settings.set_steem_node()

    bot = CnHelloBot()
    bot.vote(url=url)
Ejemplo n.º 9
0
def vote(ctx, recipe=None, debug=False):
    """ run a specific vote recipe"""

    # if debug:
    # settings.set_debug_mode()

    settings.set_steem_node()

    cookbook = VoteCookbook()
    cookbook.cook(recipe)
Ejemplo n.º 10
0
def daily_stats(ctx, tag="cn", days=7.0, debug=False):
    """ publish summary post for daily and weekly update """

    if debug:
        settings.set_debug_mode()

    settings.set_steem_node(STEEM_API_NODES[4], condenser=True)

    bot = CnHelloBot(tag=tag, days=days)
    bot.publish_daily_stats()
Ejemplo n.º 11
0
def votes(ctx, author=None, debug=False):
    """ vote a specific comment"""

    # if debug:
    # settings.set_debug_mode()

    settings.set_steem_node()

    bot = InfoBot("null")
    print(bot.get_votes([author]))
Ejemplo n.º 12
0
def comment(ctx, url=None, debug=False):
    """ vote a specific comment"""

    # if debug:
    # settings.set_debug_mode()

    settings.set_steem_node()

    bot = VoteBot()
    bot.vote(url=url)
Ejemplo n.º 13
0
def info(ctx, recipe=None, debug=False):
    """ run a specific info recipe"""

    # if debug:
    # settings.set_debug_mode()

    settings.set_steem_node()

    cookbook = InfoCookbook()
    cookbook.cook(recipe)
Ejemplo n.º 14
0
def reply(ctx, url, message_id="welcome", debug=False):
    """ reply to a post by cn-hello """

    if debug:
        settings.set_debug_mode()

    settings.set_steem_node()

    bot = CnHelloBot()
    bot.reply(url=url, message_id=message_id)
Ejemplo n.º 15
0
def get_payout(ctx, url, debug=False):
    """ get the payout value of a post """

    settings.set_steem_node()

    bot = TransferBot()
    payout = bot.get_post_payout(url=url)
    for token in payout:
        print(token, ":")
        reward = payout[token]
        for k, v in reward.items():
            print(k, ":", v)
Ejemplo n.º 16
0
 def _has_published(self, title, keyword):
     settings.set_steem_node(CURRENT_API_NODE,
                             overwrite=True,
                             condenser=True)
     posts = get_posts(account=self.author, keyword=keyword, limit=10)
     settings.set_steem_node(CURRENT_API_NODE,
                             overwrite=True,
                             condenser=False)
     if len(posts) > 0:
         for post in posts:
             if post.title == title:
                 return True
     return False
Ejemplo n.º 17
0
def token(ctx, account, token=None, debug=False):
    """ claim a specific token"""

    # if debug:
    # settings.set_debug_mode()

    settings.set_steem_node()

    bot = ClaimBot()
    if not token:
        bot.claim_all_scot_tokens(account)
    else:
        bot.claim_scot_token(account, token)
Ejemplo n.º 18
0
def welcome(ctx, tag="cn", days=3.0, debug=False):
    """ send welcome messages to newbies """

    if debug:
        settings.set_debug_mode()

    settings.set_steem_node()

    bot = CnHelloBot(tag=tag, days=days)
    posts = bot.welcome_all()
    if len(posts) > 0:
        filename = bot.write_posts()
    bot.send_notification()
Ejemplo n.º 19
0
def list_posts(ctx,
               account=None,
               tag=None,
               keyword=None,
               limit=None,
               days=None,
               debug=False):
    """ list the post by account, tag, keyword, etc. """

    if debug:
        settings.set_debug_mode()
    settings.set_steem_node()

    get_posts(account, tag, keyword, limit, days)
Ejemplo n.º 20
0
def stream_posts(ctx,
                 account=None,
                 tag=None,
                 keyword=None,
                 limit=None,
                 days=None,
                 debug=False):
    """ stream the post by account, tag, keyword, etc. """

    if debug:
        settings.set_debug_mode()
    settings.set_steem_node()

    monitor_posts()
Ejemplo n.º 21
0
def search(ctx, tag="cn", days=3.0, debug=False):
    """ search the latest posts by newbies"""

    if debug:
        settings.set_debug_mode()

    settings.set_steem_node()

    bot = CnHelloBot(tag=tag, days=days)
    posts = bot.get_latest_posts()
    if len(posts) > 0:
        filename = bot.write_posts()
        bot.list_newbies()
    bot.send_notification()
Ejemplo n.º 22
0
def weekly_stats(ctx, tag="cn", days=7.0, debug=False):
    """ publish weekly stats of cn-hello """

    if debug:
        settings.set_debug_mode()

    settings.set_steem_node(STEEM_API_NODES[4], condenser=True)

    day_of_the_week = datetime.datetime.today().weekday()

    # only Sunday
    if day_of_the_week == 6:
        logger.info("Create the weekly summary")
        bot = CnHelloBot(tag=tag, days=days)
        bot.publish_weekly_stats()
    else:
        logger.info("Skip the weekly summary until its Sunday")
Ejemplo n.º 23
0
def download(ctx, account=None, tag=None, days=None, host="github", debug=False, clear=False, production=False):
    """ download the posts to local by the account """

    if debug:
        settings.set_debug_mode()
    if clear:
        clean(ctx)

    settings.set_steem_node()

    account = account or settings.get_env_var("STEEM_ACCOUNT")
    tag = tag or settings.get_env_var("STEEM_TAG")
    days = days or settings.get_env_var("DURATION")
    clean_build = settings.get_env_var("CLEAN_BUILD")

    if clean_build and clean_build.lower() == "true":
        clean_build = True
    else:
        clean_build = False

    if clean_build:
        incremental = False
    else:
        incremental = production

    builder = BlogBuilder(account=account, tag=tag, days=days, host=host)
    if production and not clean_build:
        builder.set_smart_duration()
    builder.update_config(incremental=incremental)

    count = builder.download()
    if production:
        builder.update_workspace()

    if incremental:
        if production and count > 0:
            count = len(builder.list_new_posts())
    else:
        count = len(builder.list_all_posts())

    return count
Ejemplo n.º 24
0
def generate(ctx,
             account="teamcn-shop",
             tag=None,
             days=None,
             debug=False,
             production=False):
    """ generate the roster from the specified sources """

    if debug:
        settings.set_debug_mode()

    settings.set_steem_node()

    account = account or settings.get_env_var("STEEM_ACCOUNT")
    tag = tag or settings.get_env_var("STEEM_TAG")
    days = days or settings.get_env_var("DURATION")
    incremental = settings.get_env_var("INCREMENTAL") or False

    crawler = RosterBuilder(account=account,
                            tag=tag,
                            days=days,
                            incremental=incremental)
    crawler.crawl()
    return crawler.build()