Advertisement
HC_

sss

HC_
Jun 10th, 2019
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.52 KB | None | 0 0
  1. var casper = require('casper').create();
  2. casper.options.viewportSize = {width: 1366, height: 768};
  3. casper.userAgent('Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.155 Safari/537.36');
  4.  
  5. var utils = require('utils');
  6. var f = utils.format;
  7. var fs = require('fs');
  8. //var helpers = require('helpers');
  9.  
  10. /********************
  11. *** CONFIGURACION ***
  12. /*******************/
  13. var direccionBase = 'https://app.skeddly.com';
  14. var direccionActivity = direccionBase + '/Activity/';
  15. var direccionAPI = direccionActivity + 'GetLogJson/';
  16.  
  17. var server = casper.cli.get('server');
  18. var path = casper.cli.get('path');
  19. var user = casper.cli.get('user');
  20. var pass = casper.cli.get('pass');
  21.  
  22. var contenidoLog = "";
  23. var marker = "";
  24.  
  25. casper.start(direccionBase, function () {
  26.  
  27. console.log("\n--- START CASPER ---\n");
  28. console.log(this.getTitle() + " (" +this.getCurrentUrl() + ") \n");
  29.  
  30. casper.waitForSelector("form", function () {
  31. this.fillSelectors('form', {
  32. 'input[name = "UserName"]': user,
  33. 'input[name = "Password"]': pass
  34. }, true);
  35. });
  36.  
  37. this.wait(1000, function () {
  38. casper.start(direccionActivity, function () {
  39. this.wait(1000, function () {
  40.  
  41. var listServidores = [];
  42. var listLinks = [];
  43. var rutaLog = '';
  44.  
  45. //*** NOMBRE SERVIDORES ***
  46.  
  47. var servidores = this.evaluate(function() {
  48. var elements = __utils__.findAll('#DataTables_Table_0 tbody a');
  49.  
  50. return elements.map(function(e) {
  51. var name = e.text;
  52.  
  53. name = name.replace("****", "");
  54. name = name.replace(">>>", "");
  55. name = name.replace("Show", "");
  56. name = name.replace("Download", "");
  57. name = name.replace("-", "_");
  58. name = name.replace("-", "_");
  59. name = name.replace("-", "_");
  60. name = name.replace("-", "_");
  61. return name;
  62. });
  63. });
  64.  
  65. servidores.forEach(function(element, index) {
  66. listServidores.push(element);
  67. });
  68.  
  69. //*** ID LOGS ***
  70.  
  71. var links = this.evaluate(function() {
  72. var elements = __utils__.findAll('#DataTables_Table_0 tbody a');
  73.  
  74. return elements.map(function(e) {
  75. return e.getAttribute('href');
  76. });
  77. });
  78. //
  79. links.forEach(function(element, index) {
  80. listLinks.push(element);
  81. });
  82.  
  83. //*** LOG ***
  84.  
  85. for(var i = 0; i < listServidores.length; i++){
  86. if(listServidores[i] == server){
  87. rutaLog = direccionAPI + listLinks[i + 1].replace("/Activity/Log/", "");
  88. break;
  89. }
  90. }
  91.  
  92. var request = new XMLHttpRequest();
  93. var contenidoLogMarker = "";
  94.  
  95. casper.start(rutaLog, function () {
  96. var contenido = casper.getPageContent();
  97. var json = JSON.parse(contenido);
  98. var rutaLogMarker = rutaLog + "?marker=";
  99.  
  100. json.Levels.forEach(function(element, index) {
  101. if(element.Level == "I"){
  102. setLog(element.Lines.toString());
  103. }
  104. });
  105.  
  106. setMarker(json.Marker);
  107.  
  108. if(marker !== undefined){
  109.  
  110. casper.start(rutaLogMarker + marker, function () {
  111. var contenidoMarker_1 = casper.getPageContent();
  112. var jsonMarker_1 = JSON.parse(contenidoMarker_1);
  113.  
  114. jsonMarker_1.Levels.forEach(function(element, index) {
  115. if(element.Level == "I"){
  116. setLog(element.Lines.toString());
  117. }
  118. });
  119. setMarker(jsonMarker_1.Marker);
  120.  
  121. if(marker !== undefined){
  122.  
  123. casper.start(rutaLogMarker + marker, function () {
  124. var contenidoMarker_2 = casper.getPageContent();
  125. var jsonMarker_2 = JSON.parse(contenidoMarker_2);
  126.  
  127. jsonMarker_2.Levels.forEach(function(element, index) {
  128. if(element.Level == "I"){
  129. setLog(element.Lines.toString());
  130. }
  131. });
  132. setMarker(jsonMarker_2.Marker);
  133.  
  134. if(marker !== undefined){
  135. casper.start(rutaLogMarker + marker, function () {
  136. var contenidoMarker_3 = casper.getPageContent();
  137. var jsonMarker_3 = JSON.parse(contenidoMarker_3);
  138.  
  139. jsonMarker_3.Levels.forEach(function(element, index) {
  140. if(element.Level == "I"){
  141. setLog(element.Lines.toString());
  142. }
  143. });
  144. });
  145. }
  146. });
  147. }
  148. });
  149. }
  150. });
  151. });
  152. });
  153. });
  154. });
  155.  
  156. casper.run(function () {
  157. fs.write(path, contenidoLog, 'w');
  158. console.log('\n--- END CASPER ---\n');
  159. this.exit();
  160. });
  161.  
  162. function setMarker(data){
  163. marker = data;
  164. return marker;
  165. }
  166.  
  167. function setLog(log){
  168. contenidoLog = contenidoLog + "\n" + log;
  169. return contenidoLog;
  170. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement