编写一个Chrome插件来自动输入用户名和密码登录网站需要一些基本的HTML、CSS、JavaScript知识,以及对Chrome插件API的了解。以下是一个简单的示例,展示如何实现这一功能。
1. 创建插件目录和文件首先,创建一个新的文件夹来存放插件文件。在这个文件夹中,创建以下文件:
manifest.jsonbackground.jscontent.jspopup.htmlpopup.js2. 编写 manifest.jsonmanifest.json 是Chrome插件的配置文件,定义了插件的基本信息和权限。
{
"manifest_version": 3,
"name": "Auto Login",
"version": "1.0",
"description": "Automatically fill in username and password to login",
"permissions": [
"activeTab",
"scripting"
],
"background": {
"service_worker": "background.js"
},
"action": {
"default_popup": "popup.html",
"default_icon": {
"16": "icons/icon16.png",
"48": "icons/icon48.png",
"128": "icons/icon128.png"
}
},
"icons": {
"16": "icons/icon16.png",
"48": "icons/icon48.png",
"128": "icons/icon128.png"
}
} 3. 编写 background.jsbackground.js 是后台脚本,用于处理插件的一些后台逻辑。
chrome.runtime.onInstalled.addListener(() => {
console.log('Auto Login extension installed');
}); 4. 编写 content.jscontent.js 是内容脚本,用于在网页上下文中执行代码。
function autoFillLogin(username, password) {
const usernameField = document.querySelector('input[name="username"]');
const passwordField = document.querySelector('input[name="password"]');
const loginButton = document.querySelector('button[type="submit"]');
if (usernameField && passwordField && loginButton) {
usernameField.value = username;
passwordField.value = password;
loginButton.click();
} else {
console.log('Username or password field not found');
}
}
chrome.runtime.onMessage.addListener((request, sender, sendResponse) => {
if (request.action === "autoFillLogin") {
autoFillLogin(request.username, request.password);
}
}); 5. 编写 popup.htmlpopup.html 是插件的弹出窗口页面。
<!DOCTYPE html>
<html>
<head>
<title>Auto Login</title>
<style>
body {
width: 200px;
padding: 10px;
}
input {
width: 100%;
margin-bottom: 10px;
}
button {
width: 100%;
}
</style>
</head>
<body>
<input type="text" id="username" placeholder="Username">
<input type="password" id="password" placeholder="Password">
<button id="loginButton">Login</button>
<script src="popup.js"></script>
</body>
</html> 6. 编写 popup.jspopup.js 是弹出窗口页面的脚本。
document.getElementById('loginButton').addEventListener('click', () => {
const username = document.getElementById('username').value;
const password = document.getElementById('password').value;
chrome.tabs.query({active: true, currentWindow: true}, (tabs) => {
chrome.scripting.executeScript({
target: {tabId: tabs[0].id},
files: ['content.js']
}, () => {
chrome.tabs.sendMessage(tabs[0].id, {action: "autoFillLogin", username: username, password: password});
});
});
}); 7. 加载插件打开Chrome浏览器,输入 chrome://extensions/ 进入扩展程序页面。打开右上角的“开发者模式”开关。点击“加载已解压的扩展程序”,选择你创建的插件文件夹。现在,当你点击插件图标时,会弹出一个窗口,输入用户名和密码后点击“Login”按钮,插件会自动填充并提交登录表单。
请注意,自动填充用户名和密码可能会涉及到安全和隐私问题,确保你只在可信的环境中使用此功能。
网友回复


