我需要一个 Chrome 扩展程序来仅在网站 x 上运行脚本,但从网站 Y 的 HTML 元素中提取信息。这可能吗?例如,如果我想在每次有人导航到烂番茄时显示 IMDB 电影评分以及烂番茄评分,这是否可能?如果可以,如何实现?
最佳答案
是的,这是可能的。首先你需要add permissions对于manifest.json 中的imdb 站点。像这样的事情:
"permissions": [
"http://*.imdb.com/"
],
添加权限后,您可以将ajax请求发送到background page中的任何imdb url或content scripts 。在你的情况下,我认为最好从内容脚本发送 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/ .
关于javascript - 我正在构建一个 chrome 扩展,我需要从另一个页面提取信息。我会用背景页来做到这一点吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38114302/