google-chrome - 在后台打开标签并从中获取数据 - Chrome 扩展

标签 google-chrome google-chrome-extension

有人可以告诉我如何在后台打开 url 以及如何从中获取数据。我要打开的 URL 位于我也从中获取数据的页面中。我使用 XPath 来获取数据。
这是我的代码:

Popup.js

chrome.tabs.query({
active: true, 
currentWindow: true }, function(tabs){
if(tabs[0].url.indexOf("extranet.louvre-hotels.fr")!=-1)
{
    chrome.tabs.sendRequest(tabs[0].id, {
        action: "getDOM"
    }, function(response)

    {   
        chrome.tabs.getSelected(null, function(tab) {
    // get response
        });         
    });
}

});

Manifest.json
{
"manifest_version": 2,

"name": "SymaExtract",
"description": "SymaExtract",
"version": "1.0",
"browser_action": {
    "default_icon": "icon.png",
    "default_popup": "popup.html"
},
"permissions": [
    "webNavigation",
    "tabs",
    "background",
    "http://localhost/extract.php",
    "http://*/*"

],
"background": {
    "scripts": ["background.js"]
},
"content_scripts": [
{
  "matches": ["http://*/*"],
  "js": ["dom.js"]
}

]
}

Background.js
chrome.tabs.create({url: 'url_that_i_want_to_open'});

最佳答案

“在后台打开标签”是什么意思?
您想向用户隐藏后台正在发生某种页面获取的事实吗?如果是这样,我认为使用当前的 Chrome 扩展 API 是不可能的。

请检查这个问题:How to fetch javascript heavy pages from chrome extension

几个月前我遇到了同样的问题。

如果您不关心用户是否注意到打开了一个新选项卡/窗口,那么只需创建新选项卡而不将焦点放在它上面。这样做很简单,请查看扩展文档。

顺便说一句,在我看来,Xpath 不是要走的路。我认为 CSS 更适合解析数据。

另请查看最近的答案:Chrome extension: How to open a link in new tab?

关于google-chrome - 在后台打开标签并从中获取数据 - Chrome 扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17809337/

相关文章:

css - 2px 差异 FF 和 Chrome

C# selenium 对远程 Web 驱动程序服务器的 URL 的 HTTP 请求在 60 秒后超时

html - 需要div排列如截图所示

javascript - 值得信赖的 Chrome 扩展程序

linux - Linux 上的 native 消息传递不起作用

javascript - 用于获取个人资料信息的 Chrome identity api

javascript - 在 Google Chrome 控制台中查看所有 JavaScript 变量的列表

css - 如何让这个 css 在 Chrome 中正确显示?

json - Chrome 正在阻止 json 下载 - 有没有办法防止这种情况?

javascript - manifest.json 应该引用 auth.js 吗?