我正在构建Chrome扩展程序,我需要从其他页面提取信息。我会用背景页面吗?

时间:2016-06-30 05:00:28

标签: javascript html google-chrome google-chrome-extension

我需要Chrome扩展程序才能在网站x上运行脚本,但是从网站Y的HTML元素中提取信息。这可能吗?例如,如果我想在每次有人导航到腐烂的西红柿时显示imdb电影评级以及烂番茄评级,那么这是可能的吗?如果有的话,怎么样?

1 个答案:

答案 0 :(得分:2)

是的,那是可能的。首先,您需要add permissions为manifest.json中的imdb站点。像这样:

"permissions": [
  "http://*.imdb.com/"
],

添加权限后,您可以向background pagecontent scripts的任何imdb网址发送ajax请求。在您的情况下,我认为最好从内容脚本发送ajax请求。如果您从后台页面发送请求,则需要使用message passing将提取的信息传递到内容脚本。

你可以在manifest.json中添加这样的东西:

"content_scripts": [
 {
  "matches": ["https://*.rottentomatoes.com/*"],
  "js": ["myscript.js"]
 }
],

然后你可以从myscript.js向imdb网址发送ajax请求。

只是一个建议:不是从imdb网站拉取html页面然后解析所需的信息,最好使用api。类似于http://www.omdbapi.com/