想获取深圳每天的商品房销售数据,但又不想每天点网页查看。可以用playwright爬取商品房销售数据,并实现邮件定时推送。
1、数据爬取脚本,用python+playwright。对页面的柱状图元素进行截图后保存
2、将截图添加到邮件附件并发送
3、配置crontab定时任务(Mac电脑上)
#参考文章https://stackabuse.com/scheduling-jobs-with-python-crontab/ from crontab import CronTab def create_job(command,comment): cron= CronTab(user="xyx") #用python或者Pytest调用都可以,用which python\ which pytest命令找到bin下的路径 #参考文章 https://dev.to/nakulkurane/how-to-execute-a-cron-job-on-mac-with-crontab-1mc6 job=cron.new(command=command,comment=comment) #job.minute.every(10) job.hour.on(15) job.minute.also.on(45) cron.write() for job in cron: print(job) def delete_job(comment): cron = CronTab(user="xyx") iter1 = cron.find_comment(comment) for job in iter1: print(job) cron.remove(job) print("删除成功!") print(len(cron)) #删除后,要再write一次 cron.write() command="cd /Users/xyx/PycharmProjects/pythonProject/playwrightTest && /Users/xyx/PycharmProjects/pythonProject/venv/bin/pytest -s SZhouseSellScrapy.py" comment="深圳商品房销售数据定时推送" create_job(command,comment) #delete_job(comment)
也可以在终端运行crontab -e命令后,手工添加定时任务。
运行上述脚本后,终端运行crontab -l:
如图,每天15:45运行定时任务爬取数据。
4、邮件推送结果