Windows部署定时任务,每天定期执行手机机型爬取
创始人
2024-05-13 19:39:10

项目背景

有一个手机机型自动更新获取的需求,在我写好相关的爬虫后,需要将爬虫部署,并且需要配置定时任务每天定期执行。之前在Mac上开发,现在部门给配了一台windows定期执行。

环境准备

A、安装ChromeDriver

1、我是通过ChromeDriver开发的爬虫,所以首先需要安装好Chrome

查看当前的谷歌版本:
请添加图片描述
然后再到官网上去找对应版本的驱动: ChromeDriver驱动下载

2、配置环境变量
将下载好的压缩文件解压,然后把其中的 exe文件复制到Chrome路径以及Python的安装路径下:
请添加图片描述

配置Chrome的系统环境变量,此电脑→右击属性→高级系统设置→环境变量→用户变量→Path 中新建: …\Chrome\Application
请添加图片描述
如果是使用IDEA安装的Python,可能会找不到具体的安装路径,可以 通过 File→Project Structure→Project 查看:
请添加图片描述
然后我们可以测试一下chromedriver 是否安装成功:

from selenium import webdriverif __name__ == '__main__':#测试chromedriver 是否安装成功browser = webdriver.Chrome()browser.get('http://www.baidu.com/')

请添加图片描述
**注意:**浏览器版本自动更新后,可能驱动与之不匹配会报错,就需要重新下载与浏览器对应的驱动,覆盖如下两个位置:
1、Chrome安装路径
2、Python的安装路径

B、部署环境

在部署爬虫的时候,有些包的版本可能需要保持一致,例如selenium的版本从4.3以后有较大的变动,删除了find_element_by_xpath 方法,需要使用find_element()方法,不熟悉的话可以改为之前的版本:请添加图片描述

pip install selenium==3.141.0

请添加图片描述

再看Python Packages里面的版本变为了3.141.0。

C、将爬虫任务配置为每天定时爬取

1.创建 mobileSpider.txt,将后缀改为bat,并且在里面写上python执行指令:

python mobileSpider.py

请添加图片描述

2.我们打开任务计划程序,选择创建任务,这里写一个名称用以标记,然后切换到触发器

请添加图片描述

3.在触达器中,我们新建触发器,并且按照自己想要的定时任务配置定期执行的时间与频次。

请添加图片描述

4.我们直接确认,可以在触发器中看到刚刚设置的触发器。

请添加图片描述

5.最后在操作中选择我们要定期执行的指令文件:

请添加图片描述

其中程序或脚本选择要执行的bat文件: D:\dev\code\mobileSpider\mobileSpider.bat
添加参数: D:\dev\code\mobileSpider\mobileSpider.bat
起始于: D:\dev\code\mobileSpider\

注意: 定时任务配置好以后,可以在终端中测试一下,我们进入到 .bat与 .py存放到文件路径内,使用python mobileSpider.py执行,可能会报错:

Traceback (most recent call last):File "D:\dev\code\mobileSpider\mobileSpider.py", line 3, in from selenium import webdriver
ModuleNotFoundError: No module named 'selenium'

解决方案可以参考这篇博文: 解决Windows下使用cmd执行Python文件报错 ModuleNotFoundError: No module named ‘XXXX‘

解决了上述问题以后,然后就可以正常执行了,并且定时任务也可以成功运行:
请添加图片描述

相关内容

热门资讯

demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...