杂记(3)chrome扩展程序开发之在目标页面执行JS脚本

一、背景说明

在杂记(2)中,我们写了JS脚本在chrome浏览器的开发者模式console页面执行,用于抢bus票,但这个脚本有个弊端是当页面刷新后,脚本会自动清除,无法再执行,如何解决呢?我们可以开发一个chrome插件,启动这个插件,当chrome浏览器一打开目标页面就去执行脚本。

二、插件开发

1、json文件

然后创建一个文本文件,作为这个扩展程序的配置文件,所以文件名是manifest.json,注意扩展名是json,然后输入如下内容。1.png的话,随便拖一张图片进来就OK啦。另外需要注意的是,该文本文件需要用UTF-8字符集保存。

{
  "name": "2.5busTicket",
  "manifest_version": 2,
  "version": "1.0",
  "description": "2.5产业园巴士抢票插件",
  "browser_action": {
    "default_icon": "1.png"
  },
  "content_scripts": [
    {
      "matches": ["http://free_bus_ticket.fyxmt.com/front-end/jianwuqiangpiao/*"],
      "js": ["myscript.js"]
    }
  ]
}

2、Js脚本

扩展程序中需要执行的JS脚本:

var myDate = new Date();
var mytime=myDate.toLocaleTimeString();
console.log("当前时间:"+mytime);
var h = myDate.getHours();
console.log("小时:"+h);
var m = myDate.getMinutes();
console.log("分钟:"+m);
var s = myDate.getSeconds();
console.log("秒:"+s);

setInterval(function() {
	console.log("进入方法");
	var myDate = new Date();
	var h = myDate.getHours();
	console.log("小时:"+h);
	var buttons = document.getElementsByTagName("button");
	if(buttons.length == 10){
		console.log("拿到10个按钮");
		if(h == 12){
			console.log("抢下班的票!");
			var button = buttons[4];
			button.click();
			console.log("点击完成");
		}else if(h == 19){
			console.log("抢上班的票!");
			var button = buttons[2];
			button.click();
			console.log("点击完成");
		}
	}
},1000);

3、安装插件

打开chrome扩展程序管理

杂记(3)chrome扩展程序开发之在目标页面执行JS脚本_第1张图片  

开启开发者模式,点击加载已解压的扩展程序,选择我们的插件主目录

杂记(3)chrome扩展程序开发之在目标页面执行JS脚本_第2张图片

如下图所示,表示已经安装成功,右上角插件的图标也已经显示出来了

杂记(3)chrome扩展程序开发之在目标页面执行JS脚本_第3张图片

4、验证

打开chrome浏览器,进入目标地址,脚本将自动执行,从后台日志可以看到

杂记(3)chrome扩展程序开发之在目标页面执行JS脚本_第4张图片

三、windows计划任务让脚本定时自动执行

1、bat脚本

新建一个busOrder.bat的文件,内容如下:

cd C:\Program Files (x86)\Google\Chrome\Application

start chrome.exe "http://free_bus_ticket.fyxmt.com/front-end/jianwuqiangpiao/buy-tickets.html?wechatNo=ofqo-uN-L1bU9xSwwdVbggAEmKwk"

2、添加windows计划任务

win+R—》输入taskschd.msc打开计划任务窗口

添加脚本至执行任务,设置触发器(可以设置多个),以下内容省略


你可能感兴趣的:(杂记,chrome插件,Js脚本,自动运行,windows计划任务)