Sco*_*hus 3 javascript google-chrome-extension
有没有办法在 Chrome 打开后立即从 Chrome 扩展程序中打开一个选项卡?我的学校有一个接入点,每次打开计算机使用互联网时都必须登录,我想做一个自动登录的扩展程序,但我不知道如何运行脚本只要我打开 Chrome。
编辑:登录页面不是我打开浏览器时打开的页面:我必须手动转到某个站点才能让系统提示我登录,否则它只会告诉我我没有连接到互联网。
您需要在这里做的是:
manifest.json文件创建一个基本的“空”扩展名。"background"字段,该字段将运行backgrond.js脚本以在打开 Chrome 时打开登录页面。然后您需要为此添加权限。chrome.tabs"content_scripts"字段,并设置一个contnet.js脚本以匹配打开并允许您登录的登录 URL。content.js将在创建的选项卡中执行的脚本 ( ) 将包含自动使用用户名和密码填充字段并单击登录按钮的代码。创建一个基本扩展,它将包含三个文件:
manifest.json: 扩展的清单background.js: 扩展的后台脚本content.js:你的内容脚本在清单中写入基本字段,例如:版本、名称、背景等。然后添加"content_scripts"字段以声明您的脚本。你manifest.json应该看起来像这样:
{
"manifest_version": 2,
"name": "Some name",
"version": "0",
"permissions": [
"tabs"
],
"background": {
"scripts": ["background.js"]
},
"content_scripts": {
{
"matches": ["http://your-login-page-url..."],
"js": "/content.js"
}
}
}
Run Code Online (Sandbox Code Playgroud)在您的background.js脚本中,您将在扩展程序启动时(这也是 Chrome 打开时)打开一个选项卡,如下所示:
chrome.tabs.create({url: "http://your-login-page-url..."});
// this URL ---------------^^ should be the same as the one that matches the content script in the manifest.json
Run Code Online (Sandbox Code Playgroud)
使用真实的 URL 更改 URL 并检查打开的选项卡是否正确。
现在,在您的content.js脚本中,该脚本将加载到刚刚创建的选项卡中,您将获得正确的字段并填写它们,然后单击登录按钮。
例如,如果登录页面如下所示:
{
"manifest_version": 2,
"name": "Some name",
"version": "0",
"permissions": [
"tabs"
],
"background": {
"scripts": ["background.js"]
},
"content_scripts": {
{
"matches": ["http://your-login-page-url..."],
"js": "/content.js"
}
}
}
Run Code Online (Sandbox Code Playgroud)
然后在您的content.js脚本中,您将执行以下操作:
document.getElementById('username').value = 'yourusername';
document.getElementById('password').value = 'yourpassword';
document.getElementById('login-btn').click();
Run Code Online (Sandbox Code Playgroud)
显然,您必须用真实凭据替换yourusername和yourpassowrd。
这就是全部,非常简单:只需创建一个选项卡并在其中注入一个内容脚本。现在,当您打开 Chrome 时,此扩展程序将立即为您登录!
| 归档时间: |
|
| 查看次数: |
4190 次 |
| 最近记录: |