@参考文章1  @参考文章2

日前针对一家投标网站进行了程序干预,且一定程度的干预成功,把方法给大家提取分享出来,感谢上述两篇博文

测试网站:百度https://www.baidu.com/

测试步骤:

1,新建记事本改名改后缀为manifest.json如下,保存为utf-8格式,否则谷歌加载插件失败(由于乱码)

2,新建baidu-yanan7890.js(utf-8格式),内容如下

3,把上述所有内容放在同一文件夹,展示如下

4,打开谷歌扩展程序,打开开发者模式——加载已解压的扩展程序

manifest.json

{
"manifest_version": 2,//使用的版本
"name": "百度插件",//插件的名称
"description": "yanan针对百度的学习测试程序",//插件的描述
"version": "1.0",//插件本身的版本号 "icons": {
"128" : "icon.png"//插件显示在的图标
},
"permissions": [
"tabs", "http://*/*","https://*/*"//插件使用的权限,tabs允许使用chrome.tabs和chrome.windows的api,后面则是匹配模式,指可以和该模式的网站运行的代码进行交互。
],
"content_scripts": [
{
"js":[//指定在Web页面内运行的javascript脚本
"jquery-1.9.1.min.js",
"baidu-yanan7890.js"
],
"matches":["https://www.baidu.com/*"]//在哪些页面注入Content scripts
}
]
}
//技术交流http://www.cnblogs.com/yanan7890

baidu-yanan7890.js

$(function(){

    setTimeout(function(){
//$("#su").click()
var evt = document.createEvent("MouseEvents");
evt.initEvent("click", true, true);
document.getElementById("su").dispatchEvent(evt);
}, 4000);
});

加载成功后如下

5,测试,新建窗口或选项卡或刷新打开https://www.baidu.com/,每隔4秒会自动点击“百度一下”,证明插件成功

6,停止插件。没有其它插件的话可以停用开发者模式,有 的话可以关闭或删除该插件

上述步骤能完成一般的需求,但我还不太满意,感觉还有优化空间,比如指定多个页面及对应的js,以后有时间研究出来后再行补充

最新文章

  1. public protect private. 草稿。
  2. [3D跑酷] MissionManager
  3. android Intent.ACTION_SEND
  4. cnblogs体验
  5. 理解C#系列 / 核心C# / 名称空间
  6. 获取SilverLight.Web项目中路径Uri
  7. live555
  8. IIS部署asp.net报404错误
  9. [SignalR]异常信息捕获以及处理
  10. postal邮件发送(一):基本配置
  11. 转:利用ant与jmeter实现负载测试自动化
  12. delphi 7 mdi子窗体。。。无法更改以命令对象为源的记录集对象的 ActiveConnection 属性。
  13. nginx加权轮询和ip_hash
  14. Unity 点乘&叉乘 应用实例
  15. 动态规划-LIS最长上升子序列
  16. MyBatis实战之初步
  17. 2019 OO第一单元总结(表达式求导)
  18. Java中getConstructors()、getDeclaredConstructors()、getConstructor(Class<?>... parameterType)、getDeclaredConstructor(Class<?>... parameterType)的区别
  19. js控制easyui datagrid列的显示和隐藏
  20. WINDOW各种命令

热门文章

  1. Win2008R2配置WebDeploy(转)
  2. 微信、陌陌等著名IM软件设计架构详解(转)
  3. img标签在div里上下居中
  4. Jenkins:管理节点
  5. 用C#创建XML, XML格式化输出
  6. SSL协议(安全套接层协议)
  7. 19.struts-配置详解.md
  8. quartz整合spring框架service层对象注入为null解决方案
  9. 在使用 #import <objc/message.h>时 xcode 报 :Too many arguments to function call, expected 0 , have * 解决方法
  10. js高级-模块化演变