Python 自动登录COC航空人生签到采集航油

2,770次阅读

共计 5573 个字符,预计需要花费 14 分钟才能阅读完成。

利用 Python 实现自动登录 CO 航空人生论坛自动签到,并自动采集航油原料。

# -*- coding: utf-8 -*
import requests
import time #不延时可以去掉
import re
import os
import sys

n = 0 #循环次数
a = 9 #计数器
b = 0
starttime = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
nowtime = ""Current_nmoney =""
Current_nshuijin =""Current_nfangwu =""
Current_nkuanggong = ""Current_nkuanggongw =""
Current_ntie =""Current_ntong =""
Current_nyin =""Current_njin =""

username = 'xxxxx'  # 论坛账户
password = 'xxxxx'  # 论坛密码
login_url = 'https://bbs.hkrscoc.com/member.php?mod=logging&action=login&loginsubmit=yes&infloat=yes&lssubmit=yes&inajax=1'  # post 登录接口
request = requests.post(login_url, {"username": username, 'password': password})  # 登录一次,获取 request
cookie = request.cookies  # 获取 request 里的 cookie
user_info = requests.get('https://bbs.hkrscoc.com/Airlines.php', cookies=cookie).text  # 获取用户积分中心
Current_money = re.search(r'Money:  (\d+).+?', user_info).group(1)  # 积分中心使用 re 获取金钱
Current_shuijin = re.search(r'航油: (\d+).+?', user_info).group(1)  # 积分中心使用 re 获取 ID
Current_fangwu = re.search(r'房屋: (\d+).+?', user_info).group(1)  # 积分中心使用 re 获取
Current_kuanggong = re.search(r'员工: (\d+).+?<a href', user_info).group(1)  # 积分中心使用 re 获取
Current_kuanggongw = re.search(r'工作中的员工:(\d+).+?', user_info).group(1)  # 积分中心使用 re 获取
Current_tie = re.search(r'直馏: (\d+).+?', user_info).group(1)  # 积分中心使用 re 获取
Current_tong = re.search(r'裂化: (\d+).+?', user_info).group(1)  # 积分中心使用 re 获取
Current_yin = re.search(r'加氢: (\d+).+?', user_info).group(1)  # 积分中心使用 re 获取
Current_jin = re.search(r'烃剂: (\d+).+?', user_info).group(1)  # 积分中心使用 re 获取
formhash = re.search(r'formhash=(\S{8})', user_info).group(1)  # 积分中心使用 re 获取
#print (time.strftime("%Y-%m-%d %H:%M:%S-------------------------------------------\r\n", time.localtime()))
#print("原始:\r\n 用户 %s:\r\n 金币为 %s\r\n 航油为 %s\r\n 房屋为 %s\r\n 员工为 %s, 其中工作 %s\r\n 直馏为 %s\r\n 裂化为 %s\r\n 加氢为 %s\r\n 烃剂为 %s\r\n--------------------------------------------------------------\r\n" % (username, Current_money,Current_shuijin, Current_fangwu, Current_kuanggong, Current_kuanggongw, Current_tie, Current_tong,Current_yin, Current_jin))

while n < 1 :
    # 正题,刷积分
#    for i in range(1, 6):
#        request1 = requests.get('https://bbs.hkrscoc.com/Airlines.php?mod=mining&op=lingqu&mineid=%s&%s' %(i, formhash), cookies=cookie)  # 访问循环 id 用户空间
        try:        
                if sys.platform=="win32":
                        os.system("cls")
                elif sys.platform=="linux":
                        os.system("clear")
                print ("┌──────────┬──────────┬──────────┬──────────┬──────────┐\r\n├- 原始─────┼──────────┼──────────┼ %s─┤\r\n├──────────┼──────────┼──────────┼──────────┼──────────┤"%(starttime))
                nowtime = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
                b+=1
                print("│ 用户:%-4s│ 金币:%-4s│ 航油:%-4s│ 房屋:%-4s│ 员工:%-4s│\r\n├──────────┼──────────┼──────────┼──────────┼──────────┤\r\n│ 工作:%-4s│ 直馏:%-4s│ 裂化:%-4s│ 加氢:%-4s│ 烃剂:%-4s│\r\n├──────────┼──────────┼──────────┼──────────┼──────────┤\r\n├- 第 %3s 轮─┼──────────┼──────────┼ %s─┤\r\n├──────────┼──────────┼──────────┼──────────┼──────────┤" % (username, Current_money,Current_shuijin, Current_fangwu, Current_kuanggong, Current_kuanggongw, Current_tie, Current_tong,Current_yin, Current_jin,b,nowtime))


                user_info = requests.get('https://bbs.hkrscoc.com/Airlines.php', cookies=cookie).text  # 获取用户积分中心
                a +=1
                Current_gtie = re.search(r'采集直馏: <font color="red">(\d+).+?', user_info).group(1)
                if Current_gtie != '0':
                        request1 = requests.get('https://bbs.hkrscoc.com/Airlines.php?mod=mining&op=lingqu&mineid=1&formhash=%s' %(formhash), cookies=cookie)
                        print("当前有 %s 直馏, 正在采集 \r\n" % (Current_gtie))  #
                        a=5
                Current_gtong = re.search(r'采集裂化: <font color="red">(\d+).+?', user_info).group(1)
                if Current_gtong != '0':
                        request1 = requests.get('https://bbs.hkrscoc.com/Airlines.php?mod=mining&op=lingqu&mineid=2&formhash=%s' %(formhash), cookies=cookie)
                        print("当前有 %s 裂化, 正在采集 \r\n" % (Current_gtong))  #
                        a=5
                Current_gyin = re.search(r'采集加氢: <font color="red">(\d+).+?', user_info).group(1)
                if Current_gyin != '0':
                        request1 = requests.get('https://bbs.hkrscoc.com/Airlines.php?mod=mining&op=lingqu&mineid=3&formhash=%s' %(formhash), cookies=cookie)
                        print("当前有 %s 加氢, 正在采集 \r\n" % (Current_gyin))  #
                        a=5
                Current_gjin = re.search(r'采集烃剂: <font color="red">(\d+).+?', user_info).group(1)
                if Current_gjin != '0':
                        request1 = requests.get('https://bbs.hkrscoc.com/Airlines.php?mod=mining&op=lingqu&mineid=4&formhash=%s' %(formhash), cookies=cookie)
                        print("当前有 %s 烃剂, 正在采集 \r\n" % (Current_gjin))  #
                        a=5
                if  a > 4:
                        a=0
                        Current_nmoney = re.search(r'Money:  (\d+).+?', user_info).group(1)
                        Current_nshuijin = re.search(r'航油: (\d+).+?', user_info).group(1)
                        Current_nfangwu = re.search(r'房屋: (\d+).+?', user_info).group(1)
                        Current_nkuanggong = re.search(r'员工: (\d+).+?<a href', user_info).group(1)
                        Current_nkuanggongw = re.search(r'工作中的员工:(\d+).+?', user_info).group(1)
                        Current_ntie = re.search(r'直馏: (\d+).+?', user_info).group(1)
                        Current_ntong = re.search(r'裂化: (\d+).+?', user_info).group(1)
                        Current_nyin = re.search(r'加氢: (\d+).+?', user_info).group(1)
                        Current_njin = re.search(r'烃剂: (\d+).+?', user_info).group(1)
                request3 = requests.get('https://bbs.hkrscoc.com/plugin.php?id=k_misign:sign&operation=qiandao&formhash=%s&from=insign' %(formhash), cookies=cookie)   #签到
                request4 = requests.get('https://bbs.hkrscoc.com/plugin.php?id=time&action=1', cookies=cookie)   #领奖励 
                print("│ 用户:%-4s│ 金币:%-4s│ 航油:%-4s│ 房屋:%-4s│ 员工:%-4s│\r\n├──────────┼──────────┼──────────┼──────────┼──────────┤\r\n│ 工作:%-4s│ 直馏:%-4s│ 裂化:%-4s│ 加氢:%-4s│ 烃剂:%-4s│\r\n└──────────┴──────────┴──────────┴──────────┴──────────┘" % (username, Current_nmoney,Current_nshuijin, Current_fangwu, Current_nkuanggong, Current_nkuanggongw, Current_ntie, Current_ntong,Current_nyin, Current_njin))
#                n +=1        
                time.sleep(100) #延时 120 秒
        except:
                try:
                        print ("出错了,按 Ctrl+ C 停止脚本,5s 后忽略错误继续执行.")
                        time.sleep(1) 
                        print ("出错了,按 Ctrl+ C 停止脚本,4s 后忽略错误继续执行.")
                        time.sleep(1)
                        print ("出错了,按 Ctrl+ C 停止脚本,3s 后忽略错误继续执行.")
                        time.sleep(1) 
                        print ("出错了,按 Ctrl+ C 停止脚本,2s 后忽略错误继续执行.")
                        time.sleep(1) 
                        print ("出错了,按 Ctrl+ C 停止脚本,1s 后忽略错误继续执行.")
                        time.sleep(1) 
                        print ("出错了,按 Ctrl+ C 停止脚本,0s 后忽略错误继续执行.")
                except KeyboardInterrupt:
                        n=1
                        print ("停止脚本执行.")
                else:
                        print ("忽略错误,继续执行.")
Python 自动登录 COC 航空人生签到采集航油

正文完
 
Blood.Cold
版权声明:本站原创文章,由 Blood.Cold 2019-10-05发表,共计5573字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。