工学云自动到点打卡签到教程可传图可定位

工学云打卡助手,能解决你在异地时每天不间断签到的问题。

通过python代码实现以下功能:

1.自动签到
2.自定义打卡地区
3.chatgpt生成日周月报与总结自动发表
4.支持随机通用内容
5.支持打卡结果推送
6.云服务稳定安全,每人独立的设备和网络

打开工学云自动打卡图文教程.docx - 蓝奏云完成签到打卡。

实现原理:

1.登录界面

def login():
    url = "https://api.moguding.net:9000/session/user/v1/login"
    headers = {
        "Content-Type": "application/json; charset=UTF-8",
        "User-Agent": "Mozilla/5.0 (Linux; U; Android 10; zh-cn; ELS-AN00 Build/HUAWEIELS-AN00) AppleWebKit/533.1 (KHTML, like Gecko) Version/5.0 Mobile Safari/533.1",
    }
    data = {
        "phone": "你的账号", 
        "password": "你的密码", 
        "loginType": "android"
        }
    res = requests.post(url,headers=headers,data=json.dumps(data)).json()
    if res['code'] != 200 :
        print("登录失败,错误信息为"+res['msg'])
    else:
        Login_info['token'] = res['data']['token']
        Login_info['userId'] = res['data']['userId']
        Login_info['moguNo'] = res['data']['moguNo']

2.判断上下班

# 根据现在时间判断上下班签到
# 上班  8-16
def get_time():
    mytime = time.localtime()
    if mytime.tm_hour < 8 or mytime.tm_hour > 16:
        Login_info['cardType'] = 'END'  # 上班
    else:
        Login_info['cardType'] = 'START'    # 下班

3.结果反馈

# 发送邮件
def send_email(text):
    mail_host = "smtp邮件服务器地址"  
    mail_user = "smtp邮件服务器账号" 
    mail_pass = "smtp邮件服务器授权码"
    sender = mail_user	# 发件人邮箱地址
    receivers = ['收件人邮箱地址']
    content = text
    title = '工学云每日签到信息'
    message = MIMEText(content, 'plain', 'utf-8')
    message['From'] = "{}".format(sender)
    message['To'] = ",".join(receivers)
    message['Subject'] = title
    try:
        smtpObj = smtplib.SMTP_SSL(mail_host, 465)
        smtpObj.login(mail_user, mail_pass)
        smtpObj.sendmail(sender, receivers, message.as_string())
    except smtplib.SMTPException as e:
        print(e)

以上就是功能实现原理。

  • 9
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 以下是使用Python和Selenium实现的工学自动签到代码: ```python from selenium import webdriver from selenium.webdriver.common.keys import Keys from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.chrome.options import Options import time # chrome驱动路径 chrome_driver_path = "chromedriver.exe" # 用户名和密码 username = "您的用户名" password = "您的密码" # 设置chrome参数 chrome_options = Options() chrome_options.add_argument("--headless") # 无头模式 chrome_options.add_argument("--disable-gpu") chrome_options.add_argument("--no-sandbox") # 创建chrome浏览器实例 browser = webdriver.Chrome(executable_path=chrome_driver_path, options=chrome_options) # 打开网页 browser.get("https://www.gxyclub.com/") # 登录 login_btn = browser.find_element_by_class_name("login-item") login_btn.click() username_input = browser.find_element_by_id("username") username_input.send_keys(username) password_input = browser.find_element_by_id("password") password_input.send_keys(password) submit_btn = browser.find_element_by_id("submit") submit_btn.click() # 等待登录完成 WebDriverWait(browser, 10).until( EC.visibility_of_element_located((By.CLASS_NAME, "user-info")) ) # 进入签到页面 sign_in_btn = browser.find_element_by_xpath('//*[@id="topNavBar"]/div[2]/div/a[5]') sign_in_btn.click() # 判断是否已签到 sign_in_status = browser.find_element_by_css_selector('.day-btn.btn.btn-primary') if sign_in_status.text == "已签到": print("今天已经签到了") else: # 签到 sign_in_btn = browser.find_element_by_css_selector('div.sign-in-wrap > .day-btn.btn-primary:not(.disabled)') sign_in_btn.click() # 等待签到完成 WebDriverWait(browser, 10).until( EC.visibility_of_element_located((By.CSS_SELECTOR, '.system-message.success')) ) print("签到成功") # 关闭浏览器 browser.quit() ``` 上面的代码实现了自动登录工学并进行签到,执行后会在控制台输出签到结果。将代码保存为.py文件并运行即可。需要注意修改代码中的用户名、密码以及chrome驱动的路径。 ### 回答2: 工学自动签到代码示例: ```python import requests def sign_in(username, password): login_url = 'https://your_login_url' # 替换为登录页面url sign_in_url = 'https://your_sign_in_url' # 替换为签到页面url # 创建会话 session = requests.Session() # 登录 login_data = { 'username': username, 'password': password } response = session.post(login_url, data=login_data) # 检查登录状态 if '登录成功' in response.text: print('登录成功') else: print('登录失败') return # 签到 sign_in_data = { # 根据签到页面的表单字段,填写相应的参数 'param1': 'value1', 'param2': 'value2' } response = session.post(sign_in_url, data=sign_in_data) # 检查签到结果 if '签到成功' in response.text: print('签到成功') else: print('签到失败') # 替换为你的工学账号和密码 username = 'your_username' password = 'your_password' sign_in(username, password) ``` 上述代码中,根据实际情况,你需要替换以下部分: - `'https://your_login_url'`:替换为工学的登录页面url - `'https://your_sign_in_url'`:替换为工学签到页面url - `'param1': 'value1', 'param2': 'value2'`:根据签到页面的表单字段,填写相应的参数 - `'your_username'`:替换为你的工学账号 - `'your_password'`:替换为你的工学密码 请确保按照实际情况正确填写这些信息。运行代码后,它将自动登录到工学,并进行签到操作。输出结果将会显示登录和签到的成功与否。 ### 回答3: 工学自动签到的代码可以使用Python语言编写。 首先,我们需要导入所需的库,如requests和time: ```python import requests import time ``` 然后,我们需要定义工学的登录URL和签到URL,以及相关的参数。这些参数可以在浏览器的开发者工具中查找获得: ```python login_url = "https://www.example.com/login" # 工学的登录URL signin_url = "https://www.example.com/signin" # 工学签到URL username = "your_username" # 工学用户名 password = "your_password" # 工学密码 payload = { "username": username, "password": password } signin_payload = { "type": "signin" } ``` 接下来,我们可以编写登录函数来进行自动登录: ```python def login(): session = requests.Session() session.post(login_url, data=payload) return session ``` 然后,我们可以编写签到函数来进行自动签到: ```python def signin(session): session.post(signin_url, data=signin_payload) ``` 最后,调用登录函数和签到函数,并设置定时器来实现自动签到的功能: ```python if __name__ == "__main__": session = login() signin(session) # 每天定时签到 while True: current_time = time.localtime(time.time()) if current_time.tm_hour == 8 and current_time.tm_min == 0: session = login() signin(session) time.sleep(60) # 避免重复签到 ``` 以上就是一个简单的工学自动签到的代码示例,可以根据实际情况进行修改和优化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值