import time import pymysql import random import traceback from log_settings import * import logging from auto_request import login, click, time_convs from auto_request import host, user, db, passwd def get_data(numtime, numtime2): try: pc = pymysql.connect(host=host, user=user, passwd=passwd, db=db, port=3306) cursor = pc.cursor() cursor.execute( "SELECT user_id,id FROM topic WHERE is_online=1 and create_time > '%s' and create_time <= '%s'" % ( numtime, numtime2)) data = cursor.fetchall() topic_id = list(data) topic_id_list = [] for i in topic_id and topic_id: cursor.execute( "select user_id from user_extra where user_id =" + str(i[0]) + " and is_shadow =0") data = cursor.fetchall() user_id = list(data) if user_id: topic_id_list.append(i) logging.info("Database version : %s " % topic_id_list) pc.close() return topic_id_list except: logging.error("catch exception,get_data:%s" % traceback.format_exc()) return [] if __name__ == "__main__": try: time_list = [1, 2, 3, 4, 5, 6, 7] for i in time_list: numtime, numtime2 = time_convs(i + 1, i - 1) user_id = get_data(numtime, numtime2) dicts = {} if user_id: for i in user_id: if i[0] not in dicts.keys(): dicts.setdefault(i[0], []) dicts[i[0]].append(i[1]) else: dicts[i[0]].append(i[1]) for key, value in dicts.items(): rand_num = random.randint(0, len(value) - 1) rand_id = value[rand_num] urge_num = random.randint(0, 1) for i in range(urge_num): time.sleep(random.randint(1, 10)) cook = login() if cook is not None: click(cook, rand_id) else: pass except: logging.error("catch exception,main:%s" % traceback.format_exc())