Linux下使用crontab命令以及Python脚本实现自动签到

  关于这一部分, 我首先介绍下如何实现使用Python脚本实现签到功能其实,linux下有个命令叫做curl,完全可以完成模拟签到的功能,但是为了练习Python,我就用Python来写了.有这个想法完全是因为实验室的学长开发了一款App,上边收个起床签到,还有排名,为了能那个首签...

  言归正传

  首先,因为是手机上的App, 所以,我们需要抓包看下它具体的URL以及发送的内容是什么,关于这部分内容我就不在赘述了,我实现的功能主要有模拟发布状态和模拟签到两种功能,两个的URL也是不同的.为了不让学长发现我是自动签到的, 所以我选择了随机出一个0-900的数t,然后sleep(t), 比如说我在5.00的时候执行这个脚本,那么我就会在5.00-5.15之内签到了,被学长发现的可能性也就小了.

  另外, 我如何查看我的脚本是否执行成功了呢?或者说是我的脚本执行结果是什么?所以我打印了一下签到后返回的requests.text,但是重定向的时候发现有错误,一查原来是编码的问题,他返回的是ASCII编码的,但是其中含有中文字符,所以需要把他编码成utf-8的形式就可以成功显示了.

# coding=utf-8
import requests
import random
import time

topic_url = "http://XXXX.XXXX.com/XXXX/XXXX/XXXX/XXXX"
sign_url="http://XXX.XXXXX.com/xxx/xxxx/xxxx/"
content = "你想说的内容"

headers = {
    "AUTHORIZATION": "TOKEN xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
    "Host": "XXX.XXXXX.com",
    "Connection": "Keep-Alive",
    "Accept-Encoding": "gzip",
    "Content-Type": "application/x-www-form-urlencoded; charset=UTF-8",
    "User-Agent": "okhttp/3.2.0"
}

def topic():
    requests.post(topic_url,data={"content": content},
                  headers=headers)

def sign():
    r = requests.post(sign_url, data={"rise_rank":"1"},
                  headers=headers)
    print r.text.encode(‘UTF-8‘)

t = random.randrange(0, 900)
print t
time.sleep(t)

for i in range(0, 20):
    sign()
    time.sleep(1)

  好了,我们已经写完了脚本,那么我们如何让他在早上的时候(比如说5点)自动执行呢?

  Linux下有一个命令叫做crontab

  首先

crontab -e

  编辑你的定时任务,编辑格式如下

# min hour day mon week    command
# *   *    *   *   *       python /home/yourdir/yourpf.py >> /home/youdir/log
  0   5    *   *   *       python /home/yourdir/yourpf.py >> /home/youdir/log

  

  这样写就可以了,具体的用法可以到网上去查一查

#列出所有的任务
crontab -l
#删除所有的任务
crontab -r

  

时间: 2024-10-03 14:24:42

Linux下使用crontab命令以及Python脚本实现自动签到的相关文章

Linux下通过crontab命令来实现定时任务

一.crond的介绍 crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务. Linux下的任务调度分为两类,系统任务调度和用户任务调度. 系统任务调度:系统周期性所要执行的工作,比如写缓存数据到硬盘.日志清理等.在/etc目录下有一个crontab文件,这个就是系统任务调度

linux下使用crontab命令执行定时任务

最近因工作技术问题,难以解决生产日志第二天不打印问题,日志原因解决不了,于是想起了使用定时任务明天重启服务,网上百度了一下,使用crontab命令可以完成定时任务, 大家其实不用记住太多,使用xshell或者ssh进入命令行,敲击crontab -e进入定时任务的编辑模式, 0 5 * * *  /home/weblogic/Oracle/Middleware/user_projects/domains/base_domain/bin/stopWeblogic.sh 0 6 * * *  /ho

Linux下的crontab命令使用特别须注意的地方

1.如果命令中涉及到了年月日(如:date +%C%y%m%d),其中%必须进行转义,如下: date +\%C\%y\%m\%d 2.使用到的命令必须使用完整的路径: 0 7 * * * /home/yxf/transfile/bin/GetFile file1 file2

Linux下的crontab定时执行任务命令详解

Linux下的crontab定时执行任务命令详解 在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron].cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间.cron的配置文件称为"crontab",是"cron table"的简写. 一.cron服务 cron是一个linux下 的定时执行工具,可以在无需人工干预的情况下运行作业. service crond start    //启动服务 servi

linux 下写python脚本实现自动补全( 我51论坛也有)

以前都是在windows下开发,但是对于玩linux的人来说,能够在linux下实现python脚本的自动补全的话,那是相当不错的,而我一般是使用的vim作为编辑器,且linux一般选择最小化安装,没有图形界面,参考了下网上的很多方法也没有适合自己,最后自己去看代码的帮助来实现了这个功能,废话不说,现在开始代码下载地址:http://vim.sourceforge.net/scripts/download_script.php?src_id=21842 文件名:pydiction-1.2.3.z

Linux下的crontab定时执行任务命令详解 - 回家的流浪者 - 博客园

Linux下的crontab定时执行任务命令详解 在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron].cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间. cron的配置文件称为“crontab”,是“cron table”的简写. 一.cron服务 cron是一个linux下 的定时执行工具,可以在无需人工干预的情况下运行作业. service crond start    //启动服务 service crond stop 

Linux中使用crontab命令定时执行shell脚本或其他Linux命令

使用crontab你可以在指定的时间执行一个shell脚本或者一系列Linux命令.例如系统管理员安排一个备份任务使其每天都运行 如何往 cron 中添加一个作业? # crontab –e0 5 * * * /root/bin/backup.sh 这将会在每天早上5点运行 /root/bin/backup.sh Cron 各项的描述 以下是 crontab 文件的格式: {minute} {hour} {day-of-month} {month} {day-of-week} {full-pat

linux下修改rm命令防止误删除

前言:相信很多朋友都遇到过在linux下用rm命令误删除文件的时候,此刻的心中仿佛有无数的羊驼在奔腾.那么怎么防止这种情况发生呢?当然是有方法的,我们可以写一个shell脚本,改变一下rm命令的作用. 第一步: 先在home目录下创建一个叫username名字的目录(当然名字可以自定义),具体命令为:sudo mkdir username(自定义的名字) 这时候记得要用命令:sudo chmod 777 username(自定义的名字)来改变一下你的目录权限,因为在home目录下刚创建的目录是没

Linux下nice/renice命令小结

1. nice命令 内核根据进程的nice值决定进程需要多少处理器时间. nice值的取值范围是是: -20到20. 一个具有-20 的 nice 值的进程有很高的优先级. 一个 nice 值为 20 的进程的优先级则很低. 1) 用 ps axl 显示所有正在运行的进程的 nice 值 # ps axl F   UID   PID PPID PRI NI     VSZ RSS WCHAN STAT TTY TIME COMMAND 4     0     1     0 16    0 21