python3 实现的人人影视网站自动签到


Posted in Python onJune 19, 2016

这是一个自动化程度较高的程序,运行本程序后会从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()
Python 相关文章推荐
python实现从一组颜色中找出与给定颜色最接近颜色的方法
Mar 19 Python
在Python程序中进行文件读取和写入操作的教程
Apr 28 Python
Python类的用法实例浅析
May 27 Python
Django项目实战之用户头像上传与访问的示例
Apr 21 Python
Python实现的爬取网易动态评论操作示例
Jun 06 Python
Django 大文件下载实现过程解析
Aug 01 Python
python wav模块获取采样率 采样点声道量化位数(实例代码)
Jan 22 Python
python文件和文件夹复制函数
Feb 07 Python
使用celery和Django处理异步任务的流程分析
Feb 19 Python
python 实现在无序数组中找到中位数方法
Mar 03 Python
Python super()方法原理详解
Mar 31 Python
解决使用Pandas 读取超过65536行的Excel文件问题
Nov 10 Python
python3实现暴力穷举博客园密码
Jun 19 #Python
在阿里云服务器上配置CentOS+Nginx+Python+Flask环境
Jun 18 #Python
Python中使用装饰器来优化尾递归的示例
Jun 18 #Python
举例讲解Python面向对象编程中类的继承
Jun 17 #Python
浅谈python为什么不需要三目运算符和switch
Jun 17 #Python
python运行时间的几种方法
Jun 17 #Python
从局部变量和全局变量开始全面解析Python中变量的作用域
Jun 16 #Python
You might like
CI框架源码阅读,系统常量文件constants.php的配置
2013/02/28 PHP
浅谈php提交form表单
2015/07/01 PHP
初识ThinkPHP控制器
2016/04/07 PHP
php实现的redis缓存类定义与使用方法示例
2017/08/09 PHP
PHP实现的贪婪算法实例
2017/10/17 PHP
select组合框option的捕捉实例代码
2008/09/30 Javascript
js打印纸函数代码(递归)
2010/06/18 Javascript
JavaScript游戏之优化篇
2010/11/08 Javascript
qq悬浮代码(兼容各个浏览器)
2014/01/29 Javascript
js加载读取内容及显示与隐藏div示例
2014/02/13 Javascript
Js实现动态添加删除Table行示例
2014/04/14 Javascript
浅谈JS日期(Date)处理函数
2014/12/07 Javascript
ECMAScript 6即将带给我们新的数组操作方法前瞻
2015/01/06 Javascript
jQuery扁平化风格下拉框美化插件FancySelect使用指南
2015/02/10 Javascript
如何改进javascript代码的性能
2015/04/02 Javascript
基于javascript代码实现通过点击图片显示原图片
2015/11/29 Javascript
Vue.js在使用中的一些注意知识点
2017/04/29 Javascript
微信小程序之前台循环数据绑定
2017/08/18 Javascript
canvas轨迹回放功能实现
2017/12/20 Javascript
关于Google发布的JavaScript代码规范你要知道哪些
2018/04/04 Javascript
pyqt4教程之messagebox使用示例分享
2014/03/07 Python
python引用DLL文件的方法
2015/05/11 Python
Tornado实现多进程/多线程的HTTP服务详解
2019/07/25 Python
使用浏览器访问python写的服务器程序
2019/10/10 Python
使用Pyhton集合set()实现成果查漏的例子
2019/11/24 Python
selenium+Chrome滑动验证码破解二(某某网站)
2019/12/17 Python
Keras之自定义损失(loss)函数用法说明
2020/06/10 Python
使用HTML5加载音频和视频的实现代码
2020/11/30 HTML / CSS
面向对象编程的优势是什么
2015/12/17 面试题
党建示范点实施方案
2014/03/12 职场文书
2014年清明节网上祭英烈寄语
2014/04/09 职场文书
审计局2014法制宣传日活动总结
2014/11/01 职场文书
2014年销售工作总结与计划
2014/12/01 职场文书
详细总结Python常见的安全问题
2021/05/21 Python
Vue项目打包、合并及压缩优化网页响应速度
2021/07/07 Vue.js
Nginx 常用配置
2022/05/15 Servers