使用Python实现自动打卡(Selenium + Chrome + ChromeDriver)
关键词: Python Selenium Chrome 爬虫 自动打卡
文章目录
一、前言
由于疫情的原因,学校要求每天都要上报三次体温,我好不容易坚持了一个多月每天手动打卡,然而最终在某个欢乐的晚上(宿舍喝酒撸串),一阵迷醉之后,忘记了打卡!!!然后就一发不可收拾,又连续两次忘记打卡。五次未打卡可要是通报批评了,这怎么能行???
要是有个每天能自动帮我打卡的脚本就好了~,作为一个菜鸟级程序猿,这点还是难不倒我的。
在这里需要声明一下:疫情无小事,同学们如果体温出现异常一定要及时上报,这既是对他人的负责,也是对自己的负责。我写这个脚本只是因为自己老是忘记上报体温,但是如果我的体温出现了异常,一定会及时向辅导员、校医院进行汇报。
二、实现步骤
由于要实现定时打卡,所以要求运行脚本的机器最好是24小时在运行,所以我选择将脚本部署在服务器上(CentOS7)。
2.1 安装 Selenium 及相关环境
2.1.1 安装 Selenium
本脚本采用的技术是 Selenium
,Selenium
是一个用于 Web 应用程序测试的工具。它直接运行在浏览器中,就像真实的用户在操作一样。
安装 Selenium
:
pip3 install selenium
2.1.2 安装 Chrome
Selenium
是没有自带浏览器的,所以我们还需要安装浏览器相关环境,在这里我选择使用 Chrome
浏览器。
安装 Chrome
:(默认安装最新版)
yum install https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm
查看 Chrome
版本:
google-chrome --version
2.1.3 安装 ChromeDriver
Selenium
使用 Chrome
浏览器还需要有 ChromeDriver
的支持,因此我们还需要安装 ChromeDriver
。
ChromeDriver
的版本必须要和 Chrome
的版本相同。ChromeDriver
的下载网址在 https://chromedriver.storage.googleapis.com/index.html 。
下载与 Chrome
相同版本的 ChromeDriver
到 /usr/chrome/
:
wget https://chromedriver.storage.googleapis.com/85.0.4183.83/chromedriver_linux64.zip
解压 ChromeDriver
:
unzip chromedriver_linux64.zip
建立软连接:
ln -s /usr/chrome/chromedriver /usr/bin/chromedriver
查看 ChromeDriver
版本:
chr