2025-02-17 00:06:08 +08:00

46 lines
1.2 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

const { initCDP, cleanupCDP } = require("./cdp");
const { searchTarget } = require("./tabs");
const CDP = require("chrome-remote-interface");
const getUrl = async (tab) => {
const target = await searchTarget(tab);
const { Page } = await initCDP(target.id);
const { frameTree } = await Page.getFrameTree();
await cleanupCDP(target.id);
return frameTree.frame.url;
};
const setUrl = async (tab, url) => {
const target = await searchTarget(tab);
const { Page } = await initCDP(target.id);
await Page.navigate({ url });
await Page.loadEventFired();
await cleanupCDP(target.id);
// let client;
// try {
// // 连接到浏览器实例(默认端口 9222
// client = await CDP();
// const { Page } = client;
// // 启用 Page 域的监听
// await Page.enable();
// // 导航到指定 URL
// await Page.navigate({ url });
// // 等待页面加载完成(可选)
// await new Promise((resolve) => Page.loadEventFired(resolve));
// console.log("页面加载完成");
// } catch (err) {
// console.error("发生错误:", err);
// } finally {
// if (client) await client.close();
// }
};
module.exports = {
getUrl,
setUrl,
};