在网站

时间:2016-09-06 02:20:58

标签: javascript java c# php button

我想建立一个机器人,每隔5个小时就会点击一个按钮, 我怎样才能做到这一点? 我更喜欢PHP,但如果你知道其他任何语言,我也知道C#,Java,JS .. 任何建议开始,我从来没有做过,我想学习如何做到这一点,我一直在寻找,没有找到任何东西。 非常感谢!。 我已经尝试过按钮发送的chrome,它发送javascripts:void(0)类似于location.href = /Blah/blaahh.php。

2 个答案:

答案 0 :(得分:1)

所以基本上你的问题是programmatically click a button并在某个time interval中触发它。所以我想到的是下面的解决方案:

<script>
  setInterval(function(){ 
    $('#button').trigger('click');
  }, 3000);
</sctipt>

上面的代码将trigger,按钮将在点击时触发,并且会在每个时间段内发生。单击按钮后,尝试添加一些功能以在技术上单击按钮后处理事件。

希望有帮助=)

答案 1 :(得分:0)

您必须每隔setTimeout秒使用n < 10以阻止浏览器休眠,setInterval时间不太好。

在我看来,实现类似的最好的两种方法是:

  1. Node.js的
  2. 每隔10秒
  3. setTimeout并循环使用相同的功能,每次检查最后一次点击是否是5小时前。
  4. Javascript示例setTimeout

    var CLICK_EVERY_TIME = 10 * 1000; // i choosed to click every 10 sec
    var clickCount = 0;
    var lastClick = 0;
    var loops = 0;
    $(window).ready(function(){
     
      // on page load start you auto clicker
      runner();
    });
    
    function performClick(){
      clickCount++;
      $('#clickCount').html("clicks: "+clickCount);
      
      // save last click time
      lastClick = new Date().getTime();
    }
    
    function runner(){
      loops++;
      var currentTime = new Date().getTime();
      if(currentTime - Number(lastClick) > CLICK_EVERY_TIME){
        performClick();
      }
      $('#loops').html("runner: "+loops+" loops");
      setTimeout(runner, 1000); // every 1 seconds 
    }
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
    <div id="clickCount">clicks: 0</div>
    <div id="loops">runner: 0 loops</div>

    的Node.js:

    您必须使用jsdom来模拟浏览器并执行点击。 注意:在Node.js中,您可以根据需要使用setInterval小时,因为Node.js是独立进程。