当前位置: 首页 > news >正文

【Selenium】一键摸鱼 一键采集数据

前言

将Selenium程序编写为 .bat 可执行文件,从此一键启动封装好的Selenium程序,省时省力还可以复用,岂不美哉✨✨

应用场景

写好 .bat 可执行程序,从此快速摸鱼🐟🐟~

作用释义
一键摸鱼一次性打开多个共上班摸鱼的网页(如:B站,虎牙…
一键数据采集执行 .bat 可执行文件,即完成数据的采集
给到他人使用自己写的脚本.bat 可执行文件给到对方,即可畅快运行(忽略环境安装
开机后一键启动多个程序自动打开多个指定程序

当然,还可以将 .bat 可执行文件添加到系统的 定时计划,那样就可以定时运行啦!

应该还有其它用途,但是我实在是编不下去了…


代码

一键摸鱼(打开多个网页

下面的代码是伪代码,随手✍的

这里不局限于是 摸鱼链接,它也可以是学习链接。
反正它可以一键打开N多个网页,省去你手动打开多个网页的烦恼,可谓是一劳永逸!!!

batch_open_website.py

# -*- coding: utf-8 -*-
# Name:         batch_open_website.py
# Author:       小菜
# Date:         2022/8/29 19:00
# Description:

from selenium import webdriver

driver = webdriver.Chrome()

driver.get('https://blog.csdn.net/weixin_45081575')

js = 'window.open("{url}")'

# 摸鱼链接
urls = [
    'http://mo.fish/',  # 摸鱼
    'https://bcy.net/',  # 半次元
    'http://jandan.net/',  # 煎蛋
    'https://www.huya.com/',  # 虎牙直播
    'https://dig.chouti.com/',  # 抽屉新热榜
    'https://www.bilibili.com',  # B站
]

for url in urls:
    driver.execute_script(js.format(url=url))

可以看到,已经打开浏览器并访问多个网页的了

编写bat

这一步比较简单,

demo.bat

@echo off
f:
cd F:\_selenium

start D:\Python3.10.4\python.exe batch_open_website.py

代码释义:

  • 第一行是默认写法
  • 第二、三行是切换路径,切换到Python脚本所在的路径
  • 最后一行是指定Python 运行的路径,当然,如果只安装了一个Python版本的,改成 start python 即可

demo.bat 可执行文件,运行效果如下:

一键数据采集

本文有标题党的嫌疑,但确实可以实现这个功能~

这个自己去完成吧。毕竟只有自己才知道自己需要采集啥数据,Selenium也是可以采集数据的,虽然有点慢,嗯。。。就是慢!但胜在简单!

开机自启N个程序

思路发散一下,可以指定打开多个电脑程序,不局限于Selenium浏览器的使用。

这里指定打开多个电脑程序,省去一个个打开的繁琐~

batch_start_application.bat

@echo off

start chrome.exe

timeout /t 1

start wps.exe

timeout /t 1

start D:\WeChat\WeChat.exe

timeout /t 1

start D:\Typora\Typora.exe

代码释义:

  • timeout /t 1:等待一秒
  • start path/application:打开指定路径的程序(也可以不指定路径

代码运行效果如下:

  • 可以看到,电脑依次打开了在代码中指定的程序(chrome、wps、WeChat、typora…

这里思路再发散一下,将这个 batch_start_application.bat 可执行文件放置到 开机自启动目录,那就每次电脑开机都会启动对应的程序了~

步骤如下:

  1. 【Win+R】(按下 键盘的Win +R,打开Windows系统的“运行”窗口
  2. shell:startup(然后在窗口中输入 shell:startup,回车后会弹出一个文件夹
  3. 拷贝 batch_start_application.bat 到弹出来的文件夹中 即可

上述操作完成后,电脑每次开机启动时候都会打开你指定的程序啦!是不是很省事呢✨✨

后话

本次文章介绍到此结束,后续再有想法时候,再做分享。

see you🍬🍬

相关文章:

  • 配置编译设置
  • Spyder故障基本解决方案 (包括闪退)-超全版本
  • 第一篇 如何选择深度学习主机
  • MATLAB2016a生成COM组件及调用说明
  • 抖音、饿了么协同作战?
  • springboot设置并获取启动参数
  • PMP_考前冲刺题 二 (3A通过分享)(2022.7)(75题附答案及解析)
  • php毕业论文参考文献计算机毕业设计剧影评|剧评影评系统
  • 《深入理解JAVA虚拟机(第2版)》—— 学习笔记1
  • Idean中的Maven
  • leetcode 17. 电话号码的字母组合
  • 怎样平衡软件质量与时间成本范围的关系?
  • Odoo | 开源ERP,解锁审计和日志记录新玩法
  • c++STL 迭代器失效的三种情况总结
  • cordova 打包android app
  • 【跃迁之路】【699天】程序员高效学习方法论探索系列(实验阶段456-2019.1.19)...
  • css布局,左右固定中间自适应实现
  • HashMap ConcurrentHashMap
  • HashMap剖析之内部结构
  • iOS仿今日头条、壁纸应用、筛选分类、三方微博、颜色填充等源码
  • Joomla 2.x, 3.x useful code cheatsheet
  • jquery cookie
  • JSONP原理
  • Phpstorm怎样批量删除空行?
  • React Native移动开发实战-3-实现页面间的数据传递
  • Spark VS Hadoop:两大大数据分析系统深度解读
  • vuex 笔记整理
  • Web设计流程优化:网页效果图设计新思路
  • 彻底搞懂浏览器Event-loop
  • 从tcpdump抓包看TCP/IP协议
  • 浮动相关
  • 工作踩坑系列——https访问遇到“已阻止载入混合活动内容”
  • 构建工具 - 收藏集 - 掘金
  • 关于Android中设置闹钟的相对比较完善的解决方案
  • 前端技术周刊 2019-01-14:客户端存储
  • 远离DoS攻击 Windows Server 2016发布DNS政策
  • 不要一棍子打翻所有黑盒模型,其实可以让它们发挥作用 ...
  • #LLM入门|Prompt#2.3_对查询任务进行分类|意图分析_Classification
  • #我与Java虚拟机的故事#连载16:打开Java世界大门的钥匙
  • (33)STM32——485实验笔记
  • (ZT)薛涌:谈贫说富
  • (二)PySpark3:SparkSQL编程
  • (分类)KNN算法- 参数调优
  • (三)Honghu Cloud云架构一定时调度平台
  • (原创) cocos2dx使用Curl连接网络(客户端)
  • (转)关于多人操作数据的处理策略
  • *** 2003
  • .[hudsonL@cock.li].mkp勒索病毒数据怎么处理|数据解密恢复
  • .naturalWidth 和naturalHeight属性,
  • .net web项目 调用webService
  • .net 打包工具_pyinstaller打包的exe太大?你需要站在巨人的肩膀上-VC++才是王道
  • .net(C#)中String.Format如何使用
  • .net/c# memcached 获取所有缓存键(keys)
  • .NET:自动将请求参数绑定到ASPX、ASHX和MVC(菜鸟必看)
  • .NET的微型Web框架 Nancy