- 简介
本工程主要是考虑到很多人只会复制别人的自动签到模板,当别人的模板出现问题时,没有办法去定位问题并修改。之前我也编写过一个自动签到的脚本,期间由于本人没时间维护加上服务器那边出现超时或者网页结构变更导致代码找不到元素无法跑通,而之前那些复制模板的人似乎没有做出相应的代码修改来修复这个问题。因此萌生了写一篇python脚本本地调试的博客。 - 准备工作
1.一台电脑
2.下载python(Mac电脑自带不需要下载)
3.安装Selenium(是一个自动化测试工具,我们这里用了打开浏览器并安装我们的预设执行相关操作,比如点击输入信息等)
4.安装ChromeDriver
5.安装一个python ide(本人使用Vs code) - 安装python
通过这个文档安装即可 - 安装Selenium
在第3步安装好python之后可以直接通过以下命令安装:pip3 install selenium
- 安装ChromeDriver
跳转到这个网站下载对应版本的ChromeDriver。可以打开 Chrome 浏览器---->设置---->关于 Chrome 查看你的版本 - mac下载好之后,需要将ChromeDriver移到对应位置 /usr/local/bin在命令行执行:
sudo mv <你下载的ChromeDriver路径> /usr/local/bin
比如我的命令:
sudo mv /Users/lihongyi16/Downloads/ChromeDriver /usr/local/bin
- 安装VS code
到这个网站下载即可 - 下载/编写一个脚本文件
若读者之前没有相关代码可以去下载这个工程来练手 - 打开工程
修改此变量为你本地路径如果是mac就为我下面的链接
然后点击run - 然后可能会报错
根据报错信息可以知道是找不到这个元素,因此我们只需要在Chrome打开我们需要打开我们代码中的链接
打开chrome的开发者工具
点击element,再点旁边的按钮,然后点击页面元素
然后复制这个元素的full xpath到代码中对应的位置
browser.find_element_by_xpath(
"/html/body/div[1]/section/div/div/div/div[2]/form/div/div[1]/input")
- 可能会报其他的问题比如下面的NameError: name ‘NoSuchElementException’ is not defined,则直接在文件上面导入一下即可
from selenium.common.exceptions import NoSuchElementException
- 关于其他的问题,均可根据提示信息,去百度或者google找解决办法,此处不一一分析