Commit 25d2fe8e authored by 吴升宇's avatar 吴升宇

add auto click

parent f4df8516
......@@ -9,7 +9,7 @@ from libs.es import ESPerform
from trans2es.type_info import get_type_info_map, TypeInfo
from vest.reply import true_comment_one, true_comment_two, true_comment_three, one_seven_topic_comment
from vest.click import true_click_five, true_click_two, true_click_four, true_click_one, true_click_three, \
one_seven_star_topic
one_seven_star_topic, auto_click_per_1d_by_post, auto_click_per_2h_by_post
from vest.follow import auto_follow, auto_follow_new, auto_follow_per_5m_by_followed, \
auto_follow_per_1d_by_regist, auto_follow_per_1d_by_post, auto_follow_per_2h_by_post_and_regist
from vest.urge import auto_star_urge, auto_lunch_app, auto_lunch_app2, auto_urge1, auto_urge2
......@@ -87,6 +87,10 @@ class Command(BaseCommand):
true_click_five.true_click_five()
if options["mvest"] == "one_seven_star_topic":
one_seven_star_topic.one_seven_star_topic()
if options["mvest"] == "auto_click_per_1d_by_post":
auto_click_per_1d_by_post.auto_click_per_1d_by_post()
if options["mvest"] == "auto_click_per_2h_by_post":
auto_click_per_2h_by_post.auto_click_per_2h_by_post()
# 评论
if options["mvest"] == "true_comment_one":
......
import pymysql
import random
import traceback
import logging
from threading import Thread
from vest.request.auto_request import login, time_convs, click
from vest.request.auto_request import host, user, db, passwd
from libs.error import logging_exception
def get_commnet_id(numtime, numtime2, content_level_low=0, content_level_top=6):
pc = pymysql.connect(host=host, user=user, passwd=passwd, db=db, port=3306)
cursor = pc.cursor()
cursor.execute(
"select t.id from topic t left join user_extra u on t.user_id = u.user_id "
"where u.is_shadow=0 and t.create_time > '%s' and t.create_time < '%s' "
"and t.content_level >= %s and t.content_level <= %s " % (numtime, numtime2, str(content_level_low), str(content_level_top)))
res = cursor.fetchall()
return res and [i for i, in res] or []
def batch_handle(auto_click_list):
for topic_id in auto_click_list:
try:
cookies = login()
if cookies is not None:
click(cookies, topic_id)
except:
pass
def auto_click_per_1d_by_post():
# 发帖触发自动点赞
auto_click_list = []
try:
# 1-3星及无星
# 1天前发的帖子:[2-6]个赞
numtime1, numtime2 = time_convs(1, 1)
topic_ids = get_commnet_id(numtime2, numtime1, content_level_low=0, content_level_top=3)
for topic_id in topic_ids:
click_num = random.randint(2, 6)
for i in range(click_num):
auto_click_list.append(topic_id)
# 2-15天前发的帖子:[0-2]个赞
numtime1, numtime2 = time_convs(2, 15)
topic_ids = get_commnet_id(numtime2, numtime1, content_level_low=0, content_level_top=3)
for topic_id in topic_ids:
click_num = random.randint(0, 2)
for i in range(click_num):
auto_click_list.append(topic_id)
# 15天前或更早发的帖子:每隔6天[0-1]个赞
numtime1, numtime2 = time_convs(2, 15)
topic_ids = get_commnet_id('0', numtime2, content_level_low=0, content_level_top=3)
for topic_id in topic_ids:
click_num = random.randint(1, 6)
if click_num == 6:
auto_click_list.append(topic_id)
# 4-6星帖
# 1天前发的帖子:[4-12]个赞
numtime1, numtime2 = time_convs(1, 1)
topic_ids = get_commnet_id(numtime2, numtime1, content_level_low=4, content_level_top=6)
for topic_id in topic_ids:
click_num = random.randint(4, 12)
for i in range(click_num):
auto_click_list.append(topic_id)
# 2-15天前发的帖子:[0-6]个赞
numtime1, numtime2 = time_convs(2, 15)
topic_ids = get_commnet_id(numtime2, numtime1, content_level_low=4, content_level_top=6)
for topic_id in topic_ids:
click_num = random.randint(0, 6)
for i in range(click_num):
auto_click_list.append(topic_id)
# 15天前或更早发的帖子:每隔5天[0-3]个赞
numtime1, numtime2 = time_convs(2, 15)
topic_ids = get_commnet_id('0', numtime2, content_level_low=4, content_level_top=6)
for topic_id in topic_ids:
click_num = random.randint(1, 3)
if click_num == 3:
auto_click_list.append(topic_id)
except:
logging_exception()
logging.error("catch exception,main:%s" % traceback.format_exc())
logging.info('auto_click_per_1d_by_post: len %s' % len(auto_click_list))
print('auto_click_per_1d_by_post: len %s' % len(auto_click_list))
total = len(auto_click_list)
limit = (total + 10) // 10
for start in range(0, total, limit):
batch = auto_click_list[start:start + limit]
t = Thread(target=batch_handle, args=[batch])
t.start()
import pymysql
import random
import traceback
import logging
from threading import Thread
from vest.request.auto_request import login, time_conv_hour, follow
from vest.request.auto_request import host, user, db, passwd
from libs.error import logging_exception
def get_commnet_id(numtime, numtime2, content_level_low=0, content_level_top=6):
pc = pymysql.connect(host=host, user=user, passwd=passwd, db=db, port=3306)
cursor = pc.cursor()
# 发贴后
cursor.execute(
"select t.id from topic t left join user_extra u on t.user_id = u.user_id "
"where u.is_shadow=0 and t.create_time > '%s' and t.create_time < '%s' "
"and t.content_level >= %s and t.content_level <= %s " % (numtime, numtime2, str(content_level_low), str(content_level_top)))
res = cursor.fetchall()
return res and [i for i, in res] or []
def batch_handle(auto_click_list):
for topic_id in auto_click_list:
try:
cookies = login()
if cookies is not None:
follow(cookies, topic_id)
except:
pass
def auto_click_per_2h_by_post():
# 发帖触发自动点赞
auto_click_list = []
try:
# 发帖2小时内:[1-3]个点赞
numtime1, numtime2 = time_conv_hour(0, 2)
topic_ids = get_commnet_id(numtime2, numtime1, content_level_low=0, content_level_top=6)
for topic_id in topic_ids:
click_num = random.randint(1, 3)
for i in range(click_num):
auto_click_list.append(topic_id)
except:
logging_exception()
logging.error("catch exception,main:%s" % traceback.format_exc())
logging.info('auto_follow_per_2h_by_post_and_regist: len %s' % len(auto_click_list))
print('auto_follow_per_2h_by_post_and_regist: len %s' % len(auto_click_list))
total = len(auto_click_list)
limit = (total + 10) // 10
for start in range(0, total, limit):
batch = auto_click_list[start:start + limit]
t = Thread(target=batch_handle, args=[batch])
t.start()
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment