Advertisement
Guest User

Untitled

a guest
Jan 23rd, 2019
52
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.17 KB | None | 0 0
  1. // ==UserScript==
  2. // @name Börsenaufsicht_extended
  3. // @namespace Violentmonkey Scripts
  4. // @include https://welt10.freewar.de/freewar/internal/main.php
  5. // @require https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js
  6. // @grant none
  7. // ==/UserScript==
  8. //
  9. function sleep(ms) {
  10. return new Promise(resolve => setTimeout(resolve, ms));
  11. }
  12.  
  13. //einstellen, wie oft die Werte erhoben werden
  14. var hours = 0;
  15. var minutes = 0;
  16. var seconds = 10;
  17.  
  18. setInterval(checkStockValues, ((60 * hours + minutes) * 60 + seconds) * 1000);
  19.  
  20. async function checkStockValues() {
  21. //nur wenn man an der Börse steht
  22. var atStockExchange = $("body:contains('Die Börse aller Unternehmen')");
  23. if(atStockExchange.length == 1) {
  24. var boldElements = window.document.getElementsByTagName("b");
  25.  
  26. //alle Unternehmen, deren Kurs ausgegeben werden soll
  27. var stocks = ["Teidam Burger Corporation", "Herberge Vulkanblick Ag", "Bank aller Wesen",
  28. "Sandstaub Corporation", "Casino des Nordens Ag", "Post Corporation"];
  29.  
  30. for(var i = 0; i < boldElements.length; i++) {
  31. //Wenn das aktuelle Element ein Unternehmen ist, dann ist das nächste der Kurs und das übernächste der EK
  32. if(stocks.indexOf(boldElements[i].innerText) != -1) {
  33. var stock_name = boldElements[i].innerText;
  34.  
  35. var stock_info = JSON.parse(localStorage.getItem(stock_name));
  36.  
  37. if(stock_info == null) {
  38. continue;
  39. }
  40.  
  41. //Punkte aus Kurswert entfernen und an den Gesamtstring anhängen
  42. var stock_value = boldElements[i + 1].innerText.replace(".", "") + "";
  43. var stock_purchase_price = boldElements[i + 2].innerText.replace(".", "");
  44.  
  45. var owned_dirty_string = boldElements[i + 1].nextSibling.textContent;
  46. var owned = owned_dirty_string.substring(22, owned_dirty_string.indexOf("Aktien") - 1);
  47. //Punkt aus Eigene Aktien entfernen
  48. //var owned = boldElements[i + 1].innerText.replace(/\./g, "");
  49.  
  50. //keine Aktien von diesem Unternehmen
  51. if(owned == owned_dirty_string) {
  52. continue;
  53. }
  54.  
  55. stock_info.owned = owned;
  56. stock_info.purchase_price = stock_purchase_price;
  57. stock_info.timestamp = new Date();
  58.  
  59. //Daten ausgeben
  60. //name kurs aktien ek entw marktwert name1 aktien1 name2 aktien2..
  61.  
  62. var info_string = "";
  63.  
  64. info_string += stock_info.timestamp.toLocaleDateString() + ";";
  65. info_string += stock_info.timestamp.toLocaleTimeString() + ";";
  66. info_string += stock_info.name + ";";
  67. info_string += stock_info.value + ";";
  68. info_string += stock_info.owned + ";";
  69. info_string += stock_info.purchase_price + ";";
  70. info_string += stock_info.volume + ";";
  71.  
  72.  
  73. for(var topHolder = 1; topHolder <= 10; topHolder++) {
  74. info_string += stock_info.top_holders[topHolder - 1].name + ";";
  75. info_string += stock_info.top_holders[topHolder - 1].volume + ";";
  76. }
  77.  
  78. console.log(info_string);
  79. }
  80. }
  81. }
  82. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement