有人可以给我如何在后台打开网址,我该如何从中获取数据。我要打开的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'});
答案 0 :(得分:2)
“在后台打开标签”是什么意思? 您是否想要隐藏用户在后台进行某种页面获取的事实?如果是这样,我认为目前的Chrome扩展程序API无法实现。
请检查此问题:How to fetch javascript heavy pages from chrome extension
几个月前我遇到了同样的问题。
如果您不关心用户是否注意到新选项卡/窗口已打开,则只需创建新选项卡,而不要将焦点设置在其上。这样做很简单,请查看扩展文档。
顺便说一句,在我看来,Xpath不是要走的路。我认为CSS更适合解析数据。