一个自登陆谷歌插件

来源:互联网 发布:深圳网络诈骗案 编辑:程序博客网 时间:2024/06/05 02:23

想做个可以自动登录的小插件
首先
新建一个文件夹,要用来包含我们需要写的一系列东西
1、首先新建一个文件 manifest.json
这里面是对于扩展插件的一些配置
这里写图片描述

其中”manifest_version”: 2 是必须的,如果不写会报错
content_scripts的作用是将扩展页面和我们所在的网站页面建立通道,构建通信
(其实插件点开之后也是一个html页面,也可以查看元素,他是属于插件的专属页面,我们在这个页面引入的js或者css都是对于扩展页面进行操作的,并不会影响到我们打开的网站页面)
browser_action的作用是设置当前插件的一些东西,比如default_icon是插件显示的图标,default_popup就是插件的html文件
2、然后我们来构建插件的页面,新建一个html文件,里面写好我们要在插件中展示的东西,然后引入css,js等等,和平时写页面是一样的,这时候,我们就可以去尝试一下了。
(小尝试:首先打开谷歌更多工具里面的扩展程序,然后直接把我们的文件夹拖进去,然后就会发现右上角多了我们设置的图标,这就表示成功了,然后可以进行各种尝试)
3、我们也可以写一些js引入插件的html中,我新建了一个popup.js,里面用来放对于插件的一些操作
4、重点来了,我们如果想完成插件和网页的交互,也就是我想做的,点击插件中的按钮,然后自动填写登录信息,这个就需要我们前面提到的content_scripts,在里面写入matches,作用是寻找我们要进行交互的网页地址;js作用是我们交互操作的js所要加载的文件
5、这时候,我们就需要一个js文件来放我们要交互的一些代码,新建一个js文件,在这里我起名为contentscript.js
首先在popup.js中写入下面这段代码,其中传入的msg是用来标识不同的操作的,用来和contentscript通信

function loginfun(msg){    chrome.tabs.getSelected(null, function(tab) {      chrome.tabs.sendRequest(tab.id, {greeting: msg}, function(response) {        console.log(response);      });    });}

下面,我们在contentscript里面写如下方这段代码,其中的代码都是正对与我们想进行操作的页面的,代码中我首先获取了输入账号和密码的文本框,还有登陆按钮,然后定义了谷歌的监听事件,如下方

var username = document.getElementById('userName');
var password = document.getElementById('passWord');
var submitStatic = document.getElementById("loginButton");
chrome.extension.onRequest.addListener(
function(request, sender, sendResponse) {
// console.log(sender.tab ?
// "from a content script:" + sender.tab.url :
// "from the extension");
// 识别不同事件
if (request.greeting == "hello1"){
username.focus();
username.value = '这是账号';
password.focus();
password.value = '这是密码';
// 如果识别了验证码以后,可以直接登录
// submitStatic.click();
// 向扩展框传递信息
// sendResponse({farewell: "goodbye"});
}else{
sendResponse({}); // snub them.
}
});

在识别不同事件那里,我们可以根据popup.js中的msg的不同来进行区别
剩下的一些东西就可以尝试做一下了。
到目前,要实现的自动登录功能也实现了,以后说不定会研究更多插件,方便一下自己也好啊。

原创粉丝点击