说明:GreaseMonkey的作用是让我们浏览器运行我们自己写的脚本,而且是在后台一直不断的运行,听着就让人兴奋。

[ps:他们当然可以创建名单对哪些网站作用或者排除哪些站点];

开始了:GreaseMonkey 和tampermonkey的语法手册:

http://www.firefox.net.cn/dig/toc/

推荐看其中的教学实例:

http://www.firefox.net.cn/dig/appendix/examples.html

这两个浏览器下的扩展对应的语法相同,如果让你想象一下很多抽奖,点击获取积分,签到等等触发动作交给脚本自动化完成,我想说。这是程序猿必须的手段啊。

这是一段模拟点击某链接的自动化执行脚本

// ==UserScript==
// @name       demo
// @namespace  http://www.demo.com/
// @version    1.02
// @description  example script to adit like nums on website demo
// @match      http://*/*
// @copyright  2013+,logonmy@126.com
// ==/UserScript==
(function(){
    var interval = 1;//1分钟间隔访问
    //---------------
    var latest = GM_getValue('latest');
    if(!latest)
    {
        setNow();
    }
 
    main();
    //---------------
 
    function main()
    {
        var latest = GM_getValue('latest');
        var now = new Date().getTime();
        if((now-latest) > interval * 60 * 1000)
        {
            var i = 1;
            while(i < 100)
            {
                i++;
                touchUrl(random(1,10000));
            }
            setTimeout(main,interval * 60 * 1000);
        }
        else
        {
            setTimeout(main,now-latest);
        }
    }
 
 
    function touchUrl(param)
    {
        setNow();
        var ajaxOption = {};
        ajaxOption.url = 'http://www.demo.com/index.php?app=goods&act=plusLike&goods_id='+param;
        ajaxOption.method = 'GET';
        ajaxOption.onload = function(response){
            // console.log(response);
        }
        GM_xmlhttpRequest(ajaxOption);
    }
 
    //global value of time //微秒
    function setNow()
    {
        var latest = new Date().getTime();
        GM_setValue('latest',latest);
        return latest;
    }
 
    //round(min,max) //生成[min,max]范围内随机数
    function random(min,max)
    {
        return Math.floor(min+Math.random()*(max-min));
    }
 
}());

火狐下的GreaseMonkey和Chrome下的tampermonkey使用手记的更多相关文章

  1. Chrome出了个小bug:论如何在Chrome下劫持原生只读对象

    Chrome出了个小bug:论如何在Chrome下劫持原生只读对象 概述 众所周知,虽然JavaScript是个很灵活的语言,浏览器里很多原生的方法都可以随意覆盖或者重写,比如alert.但是为了保证 ...

  2. 如何在Chrome下Debug Mocha的测试

    简介 经过前两篇文章的介绍,相信读者对Mocha应该有一定的认知了,本文重点讲述如何在Chrome下Debug Mocha Test, 方便你在测试fail的时候troubleshooting. 关键 ...

  3. 在chrome下的文本框sendkeys,提示element can't focus--解决方法

    在chrome下的文本框sendkeys,提示element can't focus--解决方法(成都-半步流雲,群友解决) 成都-半步流雲1.升级你的chromedriver,2.降chrome版本 ...

  4. chrome下input[type=text]的placeholder不垂直居中的问题解决

    http://blog.csdn.net/do_it__/article/details/6789699 <input type="text" placeholder=&qu ...

  5. chrome下float元素下input选中内容bug

    今天在写一个小demo的时候,发现chrome下一个很奇怪的bug. 我的代码如下: <!DOCTYPE html> <html lang="en"> &l ...

  6. IE下设置unselectable与onselectstart属性的bug,Firefox与Chrome下的解决方案

    在IE下给DIV设置unselectable与onselectstart属性,可以让div的内容不能选中,这个功能在很多情况下,非常有用,但是他的bug太明显, 直接使用一个DIV是可以的,比如: & ...

  7. chrome下老是弹出网页显示 true

    事实上这个问题是chrome下安装了一些插件的原因,一般来说是安装迅雷插件会出现这个问题,删除迅雷插件就好了.

  8. Chrome下的语音控制框架MyVoix.js使用篇(四)

    在上一篇博文中,我为大家介绍了myvoix.js中的smart learning模块,以及何如使用该功能.(myvoix.js的源码地址会在每一篇文章末尾放出) 文本将拓展 Chrome下的语音控制框 ...

  9. 当fixed元素相互嵌套时chrome下父元素会影响子元素的层叠关系

    问题:fixed元素被另一个fixed元素包含的时候在chrome下fixed子元素的定位会受到父元素的影响. demo(http://jsbin.com/qumah/1): <!DOCTYPE ...

随机推荐

  1. Eclipse 中安装Browse Deployment Location插件

    Browse Deployment Location 功能的插件名称为: Pivotal tc Server Integration for Eclipse  可在Eclippse的Eclipse M ...

  2. 学习地址 hadoop生态圈

    http://my.oschina.net/leejun2005/blog/140462 http://www.codelast.com/?p=3621&cpage=1#comment-361 ...

  3. CSS3自定义滚动条样式 之 -webkit-scrollbar

    有没有觉得浏览器自带的原始滚动条很不美观,同时也有看到很多网站的自定义滚动条显得高端,就连chrome32.0开发板都抛弃了原始的滚动条,美观多了.那webkit浏览器是如何自定义滚动条的呢? 前言 ...

  4. 关于git bash的问题,pull不下来(登录之后,git帮你记住了,想切换其他用户)

    参考博客: https://www.jianshu.com/p/8a7f257e07b8 从某个项目地址pull代码下来,老是报错 fatal: Authentication failed for ' ...

  5. SpringMVC的RequestMapping

    在Http请求中,我们每天都在使用Content-type来指定不同格式的请求信息,但是却很少有人去全面了解content-type中允许的值有多少,这里将讲解Content-Type的可用值,以及在 ...

  6. jQuery农历黄历日期表

    在线演示 本地下载

  7. 在非小细胞肺癌中,MET基因的14号外显子突变和年龄,依赖于癌症阶段的CNV,C-MET过表达的关系

    背景:c-MET是肝细胞生长因子的酪氨酸激酶受体.MET 14号外显子编码部分c-MET的胞内跨膜结构域,包括重要的调节原件,比如酪氨酸1003,一个降解c-MET的相关酶的结合位点. 拥有MET 1 ...

  8. 20145217《网络对抗》 逆向及BOF进阶实践学习总结

    20145217<网络对抗> 逆向及BOF进阶实践学习总结 实践目的 1.注入shellcode 2.实现Return-to-libc攻击 知识点学习总结 Shellcode实际是一段代码 ...

  9. 如何理解 Python 中的__init__

    转自https://www.zhihu.com/question/46973549/answer/103805810 定义类的时候,若是添加__init__方法,那么在创建类的实例的时候,实例会自动调 ...

  10. skynet之伪取消定时器

    1.截至目前群里的成员已经对skynet中的timeout提出了更多的要求.目前skynet提供的定时器是倒计时形式,且定时器一旦设置后,便不能撤销(至少目前的实现是这样),然后调用 cb 最近有人提 ...