现在很多网站都可以通过签到来获取积分,然后拿积分去兑换小礼品。每天手动签到难免有忘记的时候,下面就给大家介绍几种常见的自动化签到方案。

自动化签到的三种方式

  1. Python/C#/Java等语言拿到页面cookie或者token去请求对应的接口
  2. pyppeteer/selenium 操作浏览器模拟dom点击
  3. 浏览器插件方式实现

方案一 使用拿到cookie/token方式签到

这种方式需要提前获取页面cookie/token然后进行签到,电脑端可以使用F12查看,但是手机端页面没有F12就无法通过这种方式获取了,当然手机端页面可以使用Fiddler来抓取cookie/token。

data = {"xxx": "xxxx"}
cookie = 'xxxxxxx'
url = "xxxx"
def post(url, data={}, cookie=""):cookie_json = {}if cookie != "":for c in cookie.split(";"):str = c.split("=")cookie_json[str[0]] = str[1]r = requests.post(url, cookies=cookie_json, json=data, headers=headers)if r.status_code == 200:return json.loads(r.content)return False
if post(url, data=data, cookie=cookie)

这种方案使用腾讯云函数,再配合定时执行,是真的香。

方案二 操作浏览器模拟dom点击

这种方式需要你在浏览器中登录一次,让浏览器记住你的cookie/token,然后通过自动化操作去模拟DOM点击事件,从而完成签到任务

import asyncio
from pyppeteer import launchasync def main():browser = await launch(headless=False,        ignoreDefaultArgs=["--enable-automation"],args=["--no-sandbox", "--window-size=1366,848"],)  # 关闭无头浏览器page = await browser.newPage()await page.setViewport({"width": 1366, "height": 768})await page.goto("xxxx")  # 跳转到指定网页    # 这里就可以获取dom,执行dom的点击事件await page.evaluate('window.scrollBy(0, document.body.scrollHeight)')await page.waitFor(50 * 1000)await browser.close()  # 关闭
asyncio.get_event_loop().run_until_complete(main())  # 调用

方案三 浏览器插件方式实现

这种方式也必须在浏览器中登录。通过浏览器插件在页面中注入js脚本,在页面加载完成后执行模拟dom操作,或者直接发送ajax请求。页面中发送的ajax也可以配置带上cookie。


console.log('页面注入成功');
window.onload = function () {setTimeout(() => {let url = 'xxxxx';    //判断是不是当前也页面if (window.location.href == url) {setTimeout(() => {let b = document.querySelector('.signin.btn')if (b) {b.click();}    //或者//httpPost(url, {'xx':'xxx'});                }, 10000);}}
}//post请求
function httpPost(url, data) {const xhr = new XMLHttpRequest();xhr.open('post', url)xhr.withCredentials = true; //很重要,没有这里请求就不会带上cookiexhr.setRequestHeader("Content-type", "application/json");xhr.send(JSON.stringify(data));xhr.onreadystatechange = function () {if (xhr.status == 200 && xhr.readyState == 4) {console.log(JSON.parse(xhr.responseText));}}}

使用消息推送把签到结果发送到微信/QQ等第三方平台

配合消息推送定时把签到结果发送到第三方平台,每天看下消息就可以掌握具体签到情况,常用的消息推送有:

  1. WxPusher
  2. pushplus

自动化签到的三种方式相关推荐

  1. 网络知识入门,用户如何连接互联网,ADSL调制解调器的妙用,PPP上网的三种方式(十二)

    互联网与家庭网络的区别      互联网是一个遍布世界的巨大而复杂的系统,但其基本工作方式却出奇地简单.和家庭.公司网络一样,互联网也是通过路由器来转发包的, 而且路由器的基本结构和工作方式也并没有什 ...

  2. 【推荐收藏 】Python写入MySQL数据库的三种方式,最后一种方式方便又高效

    大家好,Python 读取数据自动写入 MySQL 数据库,这个需求在工作中是非常普遍的,主要涉及到 python 操作数据库,读写更新等,数据库可能是 mongodb. es,他们的处理思路都是相似 ...

  3. 【Spring杂烩】探讨Spring向容器注册Bean的三种方式

    探讨Spring向容器注册Bean的三种方式 重点了解@Import实现的三种子方式 前提概要 Spring向容器注册Bean的三种方式 通过@ComponentScan.@Componet 通过@B ...

  4. python生成excel文件的三种方式

    在我们做平常工作中都会遇到操作excel,那么今天写一篇,如何通过python操作excel.当然python操作excel的库有很多,比如pandas,xlwt/xlrd,openpyxl等,每个库 ...

  5. 远程控制virtual box虚拟机系统的三种方式

    远程控制virtual box虚拟机系统的三种方式[阅读时间:5分钟] 1.使用现有的远程控制软件 2.使用SSH连接 3.使用远程桌面控制虚拟机系统 对于把虚拟机安装在寝室笔记本的人来说,能够远程控 ...

  6. 命令行运行Python脚本时传入参数的三种方式

    三种常用的方式 如果在运行python脚本时需要传入一些参数,例如gpus与batch_size,可以使用如下三种方式. python script.py 0,1,2 10 python script ...

  7. sass文件编译的三种方式【舒】

    [舒:]sass文件编译的三种方式 方式一: 1.webstorm打开evtGulp项目或者mcake-activity项目 2.中,开启gulp->default/develop,启动watc ...

  8. java多线程w3c_Java创建多线程的三种方式

    前言 这篇文章主要讲述线程的概念.组成.Java创建多线程的三种方式以及线程的类型. 线程概念 线程和进程的区别 **进程:**正在运行的程序,例如:你打开 的qq音乐.exe程序,其由PCB(进程控 ...

  9. vue 函数 路由跳转_vue中通过路由跳转的三种方式

    router-view 实现路由内容的地方,引入组件时写到需要引入的地方 需要注意的是,使用vue-router控制路由则必须router-view作为容器. 通过路由跳转的三种方式 1.router ...

最新文章

  1. SQLl中的left join、right join、inner join详解
  2. 2017计算机等级考试试题,2017年计算机二级考试练习题及答案
  3. 【服务器实战搭建】centos7下使用yum安装mysql
  4. 微型计算机2020年5月上,2020年小进初微机派位细则出炉,意向民办最多可参加3次派位!...
  5. 破碎的互联网下,加密技术正在恢复数据主权!
  6. 来看看深度学习如何在文娱行业“落地”
  7. SVN branch分支管理
  8. 二、爬虫 - 新浪爱问共享资源全下载之功能实现
  9. wordcloud安装,又给我来安装失败,嚓
  10. 苹果xr配置_定了!苹果发布会9月11日
  11. java catch空指针异常处理_Java基础学习:java文件空指针异常处理
  12. 打通对账的最后一公里——对账管理平台
  13. SQL Server服务远程过程调用失败解决
  14. IEEE 写作指南(2022)
  15. EXCEL利用数组公式求多组数据的斜率、截距 或者其他。
  16. not a genuine ST device,可能是个“假”芯片
  17. Keras使用VGG16模型预测自己的图片
  18. 携程 | Scrum Master 新官上任三把火?
  19. 各类游戏主机模拟器大搜罗
  20. 复利mysql_复利手游源码PHP理财 复利 分红 拆分经营养成类游戏源码_随便下源码网...

热门文章

  1. 【量化笔记】配对交易
  2. 内容为王--分享经验、成就百万技术名博(3)
  3. 6Tops 加持3588 NVR方案
  4. OpenWrt 20.02.2 小米路由器3G配置CP1025网络打印
  5. KIngcms 5.1版本增加站内链接功能自动给指定关键词加上链接
  6. UML图有哪些类型?
  7. 使用DBeaver连接IRIS数据库
  8. 计算机科学个人陈述中文,计算机专业个人陈述二十(计算机科学)
  9. Javascript动态创建SVG圆弧
  10. ssh passphrase 测试