自动登录脚本参考

wylc123 9天前 ⋅ 56 阅读

最近在看 python 的爬虫类自动化的东西,一时手痒,骚骚的弄了一个自动化签到小工具,仅做练习。其实用处比较鸡肋,因为社区可以设置登录自动签到。也算是个小测试吧,社区的登录,可以优化优化,让我这种小白没有捷径可走。比如加个点击滑块验证码,扫描登录,手机验证码登录啥的。个人意见,勿喷勿喷!

闲话不多说,直接上代码:

#!usr/bin/env python
# -*- coding: utf-8 -*-
#!文件类型: python
#!创建时间: 2020/10/22 9:12
#!作者: xxxx
#!文件名称: AutoFriendLinks.py
#!简介:链滴自动签到
# coding:utf8
# python3
import schedule
from selenium import webdriver
import time
import datetime
from selenium.webdriver.chrome.options import Options
import logging
logging.basicConfig(level=logging.INFO,#控制台打印的日志级别
                    filename='C:\links\logs\output.log',
                    filemode='a',##模式,有w和a,w就是写模式,每次都会重新写日志,覆盖之前的日志
                    #a是追加模式,默认如果不写的话,就是追加模式
                    format=
                    '%(asctime)s - %(pathname)s[line:%(lineno)d] - %(levelname)s: %(message)s'
                    #日志格式
                    )
def job():
    # 打开浏览器
    logging.info(datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S') + "#############程序开始运行###########")
    # 火狐浏览器
    # options = webdriver.FirefoxOptions()
    # options.set_headless()
    # browser = webdriver.Firefox(options=options)
    # 谷歌浏览器
    chrome_options = Options()
    # chrome_options.add_argument("--headless")
    browser = webdriver.Chrome(executable_path='C:\\softs\\chrome\\chromedriver.exe',options=chrome_options)  # .Firefox()  # .PhantomJS(desired_capabilities=dcap) # executable_path='/usr/local/bin/phantomjs'  phantomjs没有设置环境变量时可加参数
    loginUrl = 'https://ld246.com/login'
    personUrl = 'https://ld246.com/activity/checkin'
    browser.get(loginUrl)
    time.sleep(2)
    #下面填写用户名密码
browser.find_element_by_id("nameOrEmail").send_keys("xxxxxxx")
    browser.find_element_by_id("loginPassword").send_keys("xxxxxxx")
    browser.find_element_by_id("loginBtn").click()
    time.sleep(2)
    browser.get(personUrl)
    time.sleep(5)
    browser.find_element_by_link_text("领取今日签到奖励").click()
    time.sleep(5)
    browser.close()
    logging.info(datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')+"程序运行结束###########")

schedule.every().day.at("08:00").do(job)

if __name__ == '__main__':
  while True:
    schedule.run_pending()

全部评论: 0

    我有话说: