from appium import webdriver
import time
from send_mail import send_mail
from send_mail import djs
from send_mail import killPid
from selenium.common.exceptions import NoSuchElementException#倒计时等待
djs(10)
# 杀占用端口5037
killPid("5037",3)
#安卓参数配置
desired_cap = {}
desired_cap["platformName"] = "Android"
# desired_cap["deviceName"] = "127.0.0.1:62001"
desired_cap["deviceName"] = "MI NOTE LTE"
desired_cap["platformVersion"] = "6.0.1"
# 真机需要配置udid参数
desired_cap["udid"] = "9684b868"
# app的信息
# desired_cap["app"] = r"C:\Users\Administrator\Desktop\Appium\app\com.alibaba.android.rimet_542.apk"
desired_cap["appPackage"] = "com.alibaba.android.rimet"
desired_cap["appActivity"] = "com.alibaba.android.rimet.biz.LaunchHomeActivity"def getSize():x = dr.get_window_size()['width']y = dr.get_window_size()['height']return (x, y)# 屏幕向上滑动
def swipeUp(t):l = getSize()x1 = int(l[0] * 0.5)  # x坐标y1 = int(l[1] * 0.75)  # 起始y坐标y2 = int(l[1] * 0.25)  # 终点y坐标dr.swipe(x1, y1, x1, y2, t)def login():time.sleep(2)dr.find_element_by_id("com.alibaba.android.rimet:id/login_slide_btn").click()time.sleep(2)dr.find_element_by_id("com.alibaba.android.rimet:id/et_phone_input").send_keys("13213003112")dr.find_element_by_id("com.alibaba.android.rimet:id/et_pwd_login").send_keys("dingding185815")dr.find_element_by_id("com.alibaba.android.rimet:id/tv").click()time.sleep(3)dr.find_element_by_id("同意").click()time.sleep(5)
def clickdaka():# swipeUp(1000)time.sleep(10)# dr.find_element_by_id("com.alibaba.android.rimet:id/home_bottom_tab_button_work").click()# dr.find_element_by_xpath("//android.widget.RelativeLayout[@content-desc='工作']/android.widget.FrameLayout[1]/android.widget.ImageView").click()dr.find_element_by_id("考勤打卡").click()time.sleep(5)dr.find_element_by_id("android:id/button1").click()time.sleep(5)dakadevice = dr.find_element_by_xpath("//android.view.View[4]/android.view.View[contains(@content-desc,'班打卡')]")dakatext = dakadevice.get_attribute("name")print(dakatext)if dakatext == "上班打卡":time.sleep(2)dakadevice.click()time.sleep(2)dr.get_screenshot_as_file("E://aa.png")send_mail("E://aa.png", ["aaaaa@163.com", "aaaaa@qq.com"])elif dakatext == "下班打卡":time.sleep(2)dakadevice.click()time.sleep(2)dr.get_screenshot_as_file("E://aa.png")send_mail("E://aa.png",["aaaa@163.com","aaaa@qq.com"])else:print(dakatext)dr = webdriver.Remote('http://localhost:4723/wd/hub', desired_cap)try:login()clickdaka()
except NoSuchElementException:login()clickdaka()
except:login()clickdaka()

Appiun钉钉打卡程序demo相关推荐

  1. 985程序员因迟到工资被扣,一怒之下破解钉钉打卡,要不你也试试?

    大多数人上班都是需要打卡考勤的,以此来判断全勤或者迟到,一旦迟到或是旷工,打卡机上就会有显示,老板和人事就能看到,就会扣工资.这样一来,有很多人就会想办法解决这个问题,我们今天要说的就是这样的一件事, ...

  2. Python钉钉打卡程序

    Python自动打上下班卡程序 本程序所用到的库和工具 库: 工具及环境: 代码实现: 源码: 说明 使用方法 本程序所用到的库和工具 库: import uiautomator2 as u2 //主 ...

  3. DingTalk「开发者说」|钉钉小程序开发实践

    移动Web的特点   钉钉小程序开发的应用分布很广泛,下面列举了四个常用的钉钉小程序:钉钉投票.传图识字,以及集成在钉钉客户端中的自定义平台和考勤打卡. 通过对比桌面设备,移动Web的特点体现在以下三 ...

  4. 「开发者说」自动化设备管理上钉钉,“源创食堂“小程序开发实践

    本篇文章的供稿人为柳州源创电喷技术有限公司装备开发部部长蒙东辉,概览本文大概需要3分钟,精读本文需要10分钟. "钉钉应用开发让公司食堂都实现了数字化转型,食堂备餐浪费与不足的现象得到了有效 ...

  5. 教你四行代码搞定钉钉打卡

    前言: 本文讲述如何用最少的代码,实现钉钉的远程打卡. 破解版本的钉钉打卡(当然如果你勤快也可以自己去砸壳).">1.下载最新破解版本的钉钉打卡(当然如果你勤快也可以自己去砸壳). 2 ...

  6. Android开发-使用高德地图SDK实现仿钉钉打卡的功能

    前 言 LBS(基于地理位置服务)是当前移动互联网大部分应用不可或缺的功能,基于地理位置服务的Android平台的开发是主要用于Android系统作为载体,我们可以利用定位出的位置进行许多丰富多彩的操 ...

  7. f2 柱状图滚动 钉钉小程序_钉钉小程序图表库AntV - F2 使用总结

    项目涉及图表部分的技术选型 对于图表这块的开发,使用一些流行的图表库可以大大提高我们的开发效率,目前较为流行的图表库大概有Echarts,Hcharts,AntV,他们都是大同小异,我印象比较深刻的是 ...

  8. 律师坚称技术无罪:“钉钉打卡神器”开发者二审被改判四年

    考勤,是企业用工管理的一项基本内容,也是无数打工人最痛恨的事情之一. 互联网时代,考勤手段也逐渐从人工走向智能,指纹打卡.人脸识别打卡.手机定位打卡.Wifi打卡等方式日渐普及. 而钉钉作为国内最知名 ...

  9. “钉钉打卡神器”开发者被判五年半!

    " 自从钉钉打卡这一功能横空出世后,许多上班族的噩梦就开始了.特别是那种一天要打四次卡的公司,月底的考勤表绝对是一个大型灾难现场. 我见过缺卡最多的一个月能缺十几次卡.就算每天都定打卡闹钟也 ...

最新文章

  1. Java记录 -22- Java的基类Object详解
  2. OO开发思想:面向对象的开发方法(Object oriented,OO)
  3. linux脚本启三个tomcat,linux 重写Tomcat启停脚本
  4. 不要低估AI面临的困境
  5. linux服务器创建FTP
  6. 创新创业名词解释_(完整word版)“大众创业万众创新”相关名词解释总汇
  7. jdbc连接数据库mysql视频_jdbc连接数据库mysql视频
  8. KISS保持简单:纪念丹尼斯·里奇
  9. xmapp mysql启动失败 Attempting to start MySQL service...
  10. 计算机软考中级合格标准,中级软考多少分及格
  11. windows系统日志服务器搭建,windows 配置日志服务器
  12. 数字图像处理与Python实现-图像降噪-指数型低通滤波
  13. 数据库建模-概念模型建模(E-R图)
  14. 服务器预防性维护检查表,高速公路机电系统预防性维护
  15. 26岁程序员猝死,再次提醒:有几个前兆其实很显眼
  16. 开发软件费用为什么这么贵?
  17. CSS入门学习笔记(案例+详解)
  18. C库函数(tolower/toupper)实现字母的大小写转换
  19. linux 【CPU性能】 系统中的软中断使用率升高怎么办?
  20. Unity3D中如何制作天空盒

热门文章

  1. Python的一款非常棒的REPL: ptpython
  2. uni-app跨端开发框架介绍
  3. mysql设置指定ip或全部 ip访问的方法
  4. Freenas的Samba共享功能和块级存储iscsi的使用
  5. VC++使用SDL定时器替代Windows窗口定时器消息(附源码)
  6. mysql 当前日期加 分钟
  7. 华为状态码解析2021(旧版官网)
  8. 为赋新词强说愁之五(兼职生活二)
  9. 在docker中配置defects4j基准测试集
  10. 全国青少年软件编程等级考试内容,知识点思维导图(Scratch编程二级)