python3 实现的人人影视网站自动签到
admin
2023-08-02 01:40:15
0

这是一个自动化程度较高的程序,运行本程序后会从chrome中读取cookies用于登录人人影视签到,
并且会自动添加一个windows 任务计划,这个任务计划每天下午两点会执行本程序进行签到。

sys.executable == \’C:\\\\Python34\\\\pythonw.exe\’
使用pythonw 执行.py 不会弹出命令行窗口。

以system权限执行的程序不能访问网络,/ru 参数后的值改为administrators或者users

import os
import sys
import subprocess
import sqlite3
import time
import requests
from win32.win32crypt import CryptUnprotectData

def getcookiefromchrome(host=\'.oschina.net\'):
  cookiepath=os.environ[\'LOCALAPPDATA\']+r\"\\Google\\Chrome\\User Data\\Default\\Cookies\"
  sql = \"select host_key,name,encrypted_value from cookies where host_key=\'%s\'\" % host
  with sqlite3.connect(cookiepath) as conn:
    cu = conn.cursor()    
    cookies = {name:CryptUnprotectData(encrypted_value)[1].decode() for host_key,name,encrypted_value in cu.execute(sql).fetchall()}
    print(cookies)
    return cookies

#运行环境windows 2012 server python3.4 x64 pywin32 chrome 50
  \"\"\"
  #windows 版chrome Cookies文件为一个sqlite3数据库,
  #chrome 33以后的版本的cookies的value都加密存在encrypted_value中,
  #需要使用win32crypt的CryptUnprotectData 对encrypted_value进行解密,
  win32crypt是pywin32的一部分,需要安装最新的pywin32模块
  \"\"\"
#getcookiefromchrome()
#getcookiefromchrome(\'.baidu.com\')

def sign():
  zmcookie = getcookiefromchrome(\'.zimuzu.tv\')
  url = \'http://www.zimuzu.tv/user/login/getCurUserTopInfo\'
  requests.get(url,cookies=zmcookie).text
  rs = requests.get(\'http://www.zimuzu.tv/user/sign\',cookies=zmcookie).text.split(\'\\n\')
  info = [r for r in rs if \"三次登录时间\" in r]
  time_=time.strftime(\"%c\")
  with open(\"zmlog.txt\",\"a+\") as f:
    f.write(time_ + \"   :\" )
    f.writelines(info)
    f.write(\"\\n\\n\")

tn=\'zmautosign\'

def run(ar=sys.argv):
  if len(ar)==1:
    sign()
    if not intask():
      addtask() #添加任务计划

  elif len(ar)>1 and ar[1].lower()==\"-task\":
    sign()

def intask(tn=tn,ar=sys.argv[0]):
  txt=subprocess.getoutput(\'schtasks /query |find \"%s\"\' % tn)
  if tn in txt:
    return 1
  else:
    return 0

def addtask(tn=tn,ar=sys.argv[0]):
  cmd=\'schtasks /create /F /ru Administrators /tn \"%s\" /sc daily /st 14:00:00 /tr \"%s %s -task\"\' % (tn,sys.executable,ar)
  subprocess.call(cmd,shell=1)

os.chdir(sys.path[0])
run()

相关内容

热门资讯

500 行 Python 代码... 语法分析器描述了一个句子的语法结构,用来帮助其他的应用进行推理。自然语言引入了很多意外的歧义,以我们...
定时清理删除C:\Progra... C:\Program Files (x86)下面很多scoped_dir开头的文件夹 写个批处理 定...
65536是2的几次方 计算2... 65536是2的16次方:65536=2⁶ 65536是256的2次方:65536=256 6553...
Mobi、epub格式电子书如... 在wps里全局设置里有一个文件关联,打开,勾选电子书文件选项就可以了。
scoped_dir32_70... 一台虚拟机C盘总是莫名奇妙的空间用完,导致很多软件没法再运行。经过仔细检查发现是C:\Program...
pycparser 是一个用... `pycparser` 是一个用 Python 编写的 C 语言解析器。它可以用来解析 C 代码并构...
小程序支付时提示:appid和... [Q]小程序支付时提示:appid和mch_id不匹配 [A]小程序和微信支付没有进行关联,访问“小...
微信小程序使用slider实现... 众所周知哈,微信小程序里面的音频播放是没有进度条的,但最近有个项目呢,客户要求音频要有进度条控制,所...
python绘图库Matplo... 本文简单介绍了Python绘图库Matplotlib的安装,简介如下: matplotlib是pyt...
Prometheus+Graf... 一,Prometheus概述 1,什么是Prometheus?Prometheus是最初在Sound...