JScript

Programação & Desenvolvimento


Você não está conectado. Conecte-se ou registre-se

Desafio de código!

Ir para baixo  Mensagem [Página 1 de 1]

1Desafio de código! Empty Desafio de código! Qua 04 Mar 2015, 5:49 pm

JScript

JScript
Administradores
Administradores

Bom, aqui está um desafio na qual pretendemos 3 coisas:
1- Não ter o request limit
2- Não travar a interface do navegador
3- Executar o mais rápido possível

Vejam abaixo um exemplo do código que uso para remover todas as postagens do meu perfil:
Código:

// Test code!
var TID = $('a[href*="tid="]').attr("href").split("tid=")[1].split("&")[0],
   userWall = "/u2497wall",
   user_name = "JScript";

var dataRead = function(callback) {
   $.ajax({
      url: userWall,
      cache: false,
      type: "get",
      dataType: "text",
      success: callback
   });
};
var clearMsgs = function() {
   dataRead(function(response, status, xhr) {
      if (xhr.status == 200) {
         try {
            var page = $('#profile-advanced-details .pagination.top:first a[href^="' + userWall + '?start="]:not(:last)', response),
               msg = $("#profile-advanced-details ul li.last a", response),
               i = 0,
               len = msg.length;

            for (; i < len; i++) {
               var split = $(msg[i]).attr("href").split("=");

               (function(split, i) {
                  setTimeout(function() {
                     $.ajax({
                        url: split[0] + "=" + split[1],
                        type: "post",
                        data: {
                           d: split[1],
                           confirm: 1,
                           tid: TID
                        }
                     });
                  }, (500 * i) + (page.length + 100));

               })(split, i);
            }
            if (page.length !== 0) {
               setTimeout(clearMsgs, 100 * page.length);
            }
         } catch (e) {}
      }
   });
};
clearMsgs();

Esse foi o máximo que cheguei e com 28 páginas cada uma com 10 postagens, levou 8 segundos para remover todas as mensagens em uma conexão de 15mb GVT

Quem poder aperfeiçoar o código acima, ficaremos gratos por isso!

JS



Última edição por JScript em Seg 13 Abr 2015, 8:23 pm, editado 1 vez(es)

http://autoitbrasil.com

2Desafio de código! Empty Re: Desafio de código! Qua 01 Abr 2015, 8:43 am

JScript

JScript
Administradores
Administradores

Alguém?

JS

http://autoitbrasil.com

Ir para o topo  Mensagem [Página 1 de 1]

Permissões neste sub-fórum
Não podes responder a tópicos