Chrome插件开发--后台监控网页并自动刷新,点击页面元素
2015年6.17号,在线旅游网站蚂蜂窝出现了抢粽子活动:页面会出现一些粽子,点击粽子,即抢到。很明显,这是一个重复性的劳动,可以代码自动刷新页面,点击页面上的粽子。
本方案中选择了开发一款Chrome浏览器插件进行前台页面刷新,后台点击粽子。
Chrome插件开发。
一、新建目录ChromeAddin-mafengwo。目录下新建名为manifest.json的入口文件。
manifest.json:
{ "name": "picZongzi", "version": "1.0", "manifest_version": 2, "description": "自动抓取蚂蜂窝粽子", "browser_action": { "default_icon": "./images/icon.png", "default_title": "蚂蜂窝自动捡粽子" }, "permissions": [ "tabs", "https://*/*", "http://*/*" ], "content_scripts": [ { "matches": ["*://*.mafengwo.cn/*"], "js": ["jquery-1.11.3.min.js", "mafengwo.js"] } ] }
本文件主要声明了插件名称版本,监控的权限,网站,加载的文件。
二、实现后台处理文件。
我们发现蚂蜂窝的粽子主要是在一个class=“pickZongzi”的div中,只要发现页面中有改div,即可进行点击。
示例代码主要是从预定义列表中随机选择一个页面,加载该页面并检测是否有粽子,有即进行点击。2.5秒钟刷新一次页面。
具体业务逻辑如下:
mafengwo.js:
console.log("蚂蜂窝自动捡粽子,实时监控ing"); $(document).ready(function(){ var sites = [ 'http://www.mafengwo.cn/', 'http://www.mafengwo.cn/activity/zongzi2015.php?fromhead', 'http://www.mafengwo.cn/gonglve/', 'http://www.mafengwo.cn/mdd/', 'http://www.mafengwo.cn/wenda/', 'http://www.mafengwo.cn/sales/' ] function GetRandomNum(Min,Max){ var Range = Max - Min; var Rand = Math.random(); return(Min + Math.round(Rand * Range)); } function killZongzi(){ var number = GetRandomNum(1,5); location.href = sites[number]; var body = document.body.innerHTML; $(".pickZongzi").each(function(){ $(this).click(); }); console.log('杀死粽子!'); } setTimeout(killZongzi, 2500); });
三、开发中的插件调试
浏览器输入:chrome://extensions/
勾选开发者模式,点击加载正在开发的扩展程序,选择插件目录。注意:代码修改一次,就要在此页面重新加载一次。
四、打包插件。
浏览器输入:chrome://extensions/
选择打包扩展程序,即可对插件打包成crx文件。
五、相关代码,移步:https://github.com/hxchen/ChromeAddin-mafengwo
六、直接下载插件:
相关推荐
86417413 2020-11-25
simonzhao0 2020-11-23
zytyxz 2020-10-28
HappyBlog 2020-10-27
爱读书的旅行者 2020-10-26
del 2020-10-21
WenSenli 2020-10-12
ChromeDisaster 2020-10-11
svap 2020-08-25
simonzhao0 2020-08-17
shayuchaor 2020-08-17
yidaizongshi 2020-08-16
化风 2020-08-14
tiankele0 2020-07-29
maowenbei 2020-07-19
curiousL 2020-07-18
王练 2020-07-18
liuweiq 2020-07-08