Advertisement
Guest User

wowscrape

a guest
Nov 7th, 2015
170
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 76.87 KB | None | 0 0
  1. import os
  2. import sys
  3. import urllib
  4. from urllib.parse import quote
  5. from urllib.error import HTTPError
  6. from urllib.request import urlopen
  7. from bs4 import BeautifulSoup
  8. from PyQt5 import QtCore, QtGui, QtWidgets
  9. from loginwindow import Ui_loginwindow
  10. from mainwindow import Ui_mainwindow
  11.  
  12. MainApp = None
  13.  
  14. percent=0 #used for progress %
  15.  
  16. #scrape info
  17. master_name = None
  18. master_realm = None
  19. itemlvl = None
  20.  
  21. realmlist = ["Aegwynn","Aerie Peak","Agamaggan","Aggramar","Akama","Alexstrasza","Alleria","Altar of Storms"
  22. ,"Alterac Mountains","Aman'Thul","Andorhal","Anetheron","Antonidas","Anub'arak","Anvilmar"
  23. ,"Arathor","Archimonde","Area 52","Argent Dawn","Arthas","Arygos","Auchindoun","Azgalor","Azjol-Nerub"
  24. ,"Azralon","Azshara","Azuremyst","Baelgun","Balnazzar","Barthilas","Black Dragonflight","Blackhand"
  25. ,"Blackrock","Blackwater Raiders","Blackwing Lair","Blade's Edge","Bladefist","Bleeding Hollow"
  26. ,"Blood Furnace","Bloodhoof","Bloodscalp","Bonechewer","Borean Tundra","Boulderfist","Bronzebeard"
  27. ,"Burning Blade","Burning Legion","Caelestrasz","Cairne","Cenarion Circle","Cenarius","Cho'gall"
  28. ,"Chromaggus","Coilfang","Crushridge","Daggerspine","Dalaran","Dalvengyr","Dark Iron","Darkspear"
  29. ,"Darrowmere","Dath'Remar","Dawnbringer","Deathwing","Demon Soul","Dentarg","Destromath","Dethecus"
  30. ,"Detheroc","Doomhammer","Draenor","Dragonblight","Dragonmaw","Drak'Tharon","Drak'thul","Draka"
  31. ,"Drakkari","Dreadmaul","Drenden","Dunemaul","Durotan","Duskwood","Earthen Ring","Echo Isles"
  32. ,"Eitrigg","Eldre'Thalas","Elune","Emerald Dream","Eonar","Eredar","Executus","Exodar","Farstriders"
  33. ,"Feathermoon","Fenris","Firetree","Fizzcrank","Frostmane","Frostmourne","Frostwolf","Galakrond"
  34. ,"Gallywix","Garithos","Garona","Garrosh","Ghostlands","Gilneas","Gnomeregan","Goldrinn","Gorefiend"
  35. ,"Gorgonnash","Greymane","Grizzly Hills","Gul'dan","Gundrak","Gurubashi","Hakkar","Haomarush","Hellscream"
  36. ,"Hydraxis","Hyjal","Icecrown","Illidan","Jaedenar","Jubei'Thos","Kael'thas","Kalecgos","Kargath"
  37. ,"Kel'Thuzad","Khadgar","Khaz Modan","Khaz'goroth","Kil'jaeden","Kilrogg","Kirin Tor","Korgath"
  38. ,"Korialstrasz","Kul Tiras","Laughing Skull","Lethon","Lightbringer","Lightning's Blade","Lightninghoof"
  39. ,"Llane","Lothar","Madoran","Maelstrom","Magtheridon","Maiev","Mal'Ganis","Malfurion","Malorne"
  40. ,"Malygos","Mannoroth","Medivh","Misha","Mok'Nathal","Moon Guard","Moonrunner","Mug'thol","Muradin"
  41. ,"Nagrand","Nathrezim","Nazgrel","Nazjatar","Nemesis","Ner'zhul","Nesingwary","Nordrassil","Norgannon"
  42. ,"Onyxia","Perenolde","Proudmoore","Quel'dorei","Quel'Thalas","Ragnaros","Ravencrest","Ravenholdt"
  43. ,"Rexxar","Rivendare","Runetotem","Sargeras","Saurfang","Scarlet Crusade","Scilla","Sen'jin","Sentinels"
  44. ,"Shadow Council","Shadowmoon","Shadowsong","Shandris","Shattered Halls","Shattered Hand","Shu'halo"
  45. ,"Silver Hand","Silvermoon","Sisters of Elune","Skullcrusher","Skywall","Smolderthorn","Spinebreaker"
  46. ,"Spirestone","Staghelm","Steamwheedle Cartel","Stonemaul","Stormrage","Stormreaver","Stormscale"
  47. ,"Suramar","Tanaris","Terenas","Terokkar","Thaurissan","The Forgotten Coast","The Scryers","The Underbog"
  48. ,"The Venture Co","Thorium Brotherhood","Thrall","Thunderhorn","Thunderlord","Tichondrius","Tol Barad"
  49. ,"Tortheldrin","Trollbane","Turalyon","Twisting Nether","Uldaman","Uldum","Undermine","Ursin","Uther"
  50. ,"Vashj","Vek'nilash","Velen","Warsong","Whisperwind","Wildhammer","Windrunner","Winterhoof"
  51. ,"Wyrmrest Accord","Ysera","Ysondre","Zangarmarsh","Zul'jin","Zuluhed"]
  52.  
  53. #sets up local class with Ui_loginwindow.py code
  54. class LoginWindow(QtWidgets.QMainWindow, Ui_loginwindow):
  55.     def __init__(self, parent=None):
  56.         global realmlist
  57.         QtWidgets.QMainWindow.__init__(self, parent)
  58.         self.setupUi(self)
  59.         self.realmbox.addItems(realmlist)
  60.         self.realmbox.setCurrentIndex(104)
  61.         self.cancelbtn.clicked.connect(self.closebutton) #assigns the cancel button to closebutton()
  62.         self.logbtn.clicked.connect(self.scrape)
  63.    
  64.     def closebutton(self):
  65.         global MainApp
  66.         self.close()
  67.         MainApp = MainWindow()
  68.         MainApp.show()        
  69.  
  70.     def updateprogress(self):
  71.         global percent
  72.         percent+=1
  73.         self.progressBar.setProperty("value", percent)
  74.  
  75.     def scrape(self):
  76.         global master_realm
  77.         global percent
  78.  
  79.         self.progresstext.setText("Formatting Character Info ...")
  80.         master_name = str(self.toonfield.text())
  81.         master_realm = str(self.realmbox.currentText())
  82.         percent+=1
  83.         self.progressBar.setProperty("value", percent)
  84.  
  85.         assert isinstance(master_name, str)
  86.         self.progresstext.setText("Scraping The Internets ...")
  87.         urlpart1 = "http://us.battle.net/wow/en/character/garrosh/"    
  88.         urlpart3 = "/advanced"
  89.         urlpart2 = "{master_name}".format(master_name=quote(master_name, safe='')) #handles special characters for url
  90.         url = urlpart1 + urlpart2 + urlpart3
  91.         try:
  92.             html = urlopen(url)
  93.         except HTTPError as e:
  94.             return None    
  95.         try:
  96.             bsObj = BeautifulSoup(html.read(), "html5lib")
  97.             self.progresstext.setText("Scrape Successful!")
  98.             percent+=1
  99.             self.progressBar.setProperty("value", percent)
  100.         except AttributeError as e:
  101.             return None
  102.  
  103.         #making resources folders here
  104.         if not os.path.exists("resources"):
  105.             self.progresstext.setText("Making Resource Directories ...")
  106.             os.makedirs("resources") #main resource folders
  107.         if not os.path.exists("resources/bg"):    
  108.             self.progresstext.setText("Making Resource Directories ...")
  109.             os.makedirs("resources/bg")        
  110.         #background image setup is here
  111.         tag = bsObj.style
  112.         taga, tagb = str(tag).split('url("', 1)
  113.         tag = str(tagb)
  114.         taga, tagb = tag.split('"', 1)
  115.         tag = taga
  116.         bgurl = "http://us.battle.net" + str(tag)
  117.         self.progresstext.setText("Extrapolating Background Imagery ...")
  118.         percent+=1
  119.         self.progressBar.setProperty("value", percent)
  120.         urllib.request.urlretrieve(bgurl, "resources/bg/bg_base.jpg") #base bg image    
  121.         tag = bsObj.style
  122.         taga, tagb = str(tag).split('image: url("', 1)
  123.         tag = str(tagb)
  124.         taga, tagb = tag.split('")', 1)
  125.         tag = taga
  126.         bgurl = tag
  127.         urllib.request.urlretrieve(bgurl, "resources/bg/bg_top.jpg") #bg top image
  128.         #average item level
  129.         global itemlvl
  130.         percent+=1
  131.         self.progressBar.setProperty("value", percent)        
  132.         self.progresstext.setText("Counting Average ILvl ...")
  133.         itemlvl = bsObj.find_all("span", "equipped")
  134.         ilvla, ilvlb = str(itemlvl).split(">", 1)
  135.         itemlvl = ilvlb
  136.         ilvla, ilvlb = str(itemlvl).split("<", 1)
  137.         itemlvl = str(ilvla)
  138.  
  139.         ###########
  140.         #raid info#
  141.         ###########
  142.         percent+=1
  143.         self.progressBar.setProperty("value", percent)        
  144.         self.progresstext.setText("Finding Raid Info ...")
  145.         raidjava = bsObj.find_all("script")
  146.         raidinfo = str(raidjava[8].text.encode("utf-8"))
  147.         mc = ["Molten Core", "1", "Ragnaros", "N/A", "N/A", "N/A", "N/A"]
  148.         bwl = ["Blackwing Lair", "1", "Ragnaros", "N/A", "N/A", "N/A", "N/A"]
  149.         aq10 = ["Ruins of Ahn'Qiraj", "1", "Ossirian the Unscarred", "N/A", "N/A", "N/A", "N/A"]
  150.         aq40 = ["Ahn'Qiraj Temple", "1", "Thun", "N/A", "N/A", "N/A", "N/A"]
  151.         kar = ["Karazhan", "1", "Prince Malchezaar", "N/A", "N/A", "N/A", "N/A"]
  152.         mag = ["Magtheridon's Lair", "1", "Magtheridon", "N/A", "N/A", "N/A", "N/A"]
  153.         gru = ["Gruul's Lair", "1", "Gruul the Dragonkiller", "N/A", "N/A", "N/A", "N/A"]
  154.         ssc = ["Serpentshrine Cavern", "1", "Lady Vashj", "N/A", "N/A", "N/A", "N/A"]
  155.         tk = ["Tempest Keep", "1", "Kael'thas Sunstrider", "N/A", "N/A", "N/A", "N/A"]
  156.         mh = ["The Battle for Mount Hyjal", "1", "Archimonde", "N/A", "N/A", "N/A", "N/A"]
  157.         bt = ["Black Temple", "1", "Illidan Stormrage", "N/A", "N/A", "N/A", "N/A"]
  158.         sp = ["The Sunwell", "1", "Kil'jaeden", "N/A", "N/A", "N/A", "N/A"]
  159.         voa = ["Vault of Archavon", "4", "Archavon the Stone Watcher", "N/A", "N/A", "N/A", "N/A", "Emalon the Storm Watcher", "N/A", "N/A", "N/A", "N/A", "Koralon the Flame Watcher", "N/A", "N/A", "N/A", "N/A", "Toravon the Ice Watcher", "N/A", "N/A", "N/A", "N/A"]
  160.         nax = ["Naxxramas", "15", "Anub'Rekhan", "N/A", "N/A", "N/A", "N/A", "Grand Widow Faerlina", "N/A", "N/A", "N/A", "N/A", "Maexxna", "N/A", "N/A", "N/A", "N/A", "Not the Plaguebringer", "N/A", "N/A", "N/A", "N/A", "Heigan the Unclean", "N/A", "N/A", "N/A", "N/A", "Loatheb", "N/A", "N/A", "N/A", "N/A", "Instructor Razuvious", "N/A", "N/A", "N/A", "N/A", "Gothik the Harvester", "N/A", "N/A", "N/A", "N/A", "The Four Horsemen", "N/A", "N/A", "N/A", "N/A", "Patchwerk", "N/A", "N/A", "N/A", "N/A", "Grobbulus", "N/A", "N/A", "N/A", "N/A", "Gluth", "N/A", "N/A", "N/A", "N/A", "Thaddius", "N/A", "N/A", "N/A", "N/A", "Sapphiron", "N/A", "N/A", "N/A", "N/A", "Kel'Thuzad", "N/A", "N/A", "N/A", "N/A"]
  161.         tos = ["The Obsidian Sanctum", "1", "Sartharion", "N/A", "N/A", "N/A", "N/A"]
  162.         eoe = ["The Eye of Eternity", "1", "Malygos", "N/A", "N/A", "N/A", "N/A"]
  163.         uld = ["Ulduar", "14", "Flame Leviathan", "N/A", "N/A", "N/A", "N/A", "Igni the Furnace Master", "N/A", "N/A", "N/A", "N/A", "Razorscale", "N/A", "N/A", "N/A", "N/A", "XT-002 Deconstructor", "N/A", "N/A", "N/A", "N/A", "The Assembly of Iron", "N/A", "N/A", "N/A", "N/A", "Kologarn", "N/A", "N/A", "N/A", "N/A", "Auriaya", "N/A", "N/A", "N/A", "N/A", "Hodir", "N/A", "N/A", "N/A", "N/A", "Thorim", "N/A", "N/A", "N/A", "N/A", "Freya", "N/A", "N/A", "N/A", "N/A", "Mimiron", "N/A", "N/A", "N/A", "N/A", "General Vezax", "N/A", "N/A", "N/A", "N/A", "Yogg-Saron", "N/A", "N/A", "N/A", "N/A", "Algalon the Observer", "N/A", "N/A", "N/A", "N/A"]
  164.         ony = ["Onyxia's Lair", "1", "Onyxia", "N/A", "N/A", "N/A", "N/A"]
  165.         toc = ["Trial of the Crusader", "5", "Northrend Beasts", "N/A", "N/A", "N/A", "N/A", "Lord Jaraxxus", "N/A", "N/A", "N/A", "N/A", "Faction Champions", "N/A", "N/A", "N/A", "N/A", "Val'kyr Twins", "N/A", "N/A", "N/A", "N/A", "Anub'arak", "N/A", "N/A", "N/A", "N/A"]
  166.         icc = ["Icecrown Citadel", "12", "Lord Marrowgar", "N/A", "N/A", "N/A", "N/A", "Lady Deathwhisper", "N/A", "N/A", "N/A", "N/A", "Icecrown Gunship Battle", "N/A", "N/A", "N/A", "N/A", "Deathbringer Saurfang", "N/A", "N/A", "N/A", "N/A", "Rotface", "N/A", "N/A", "N/A", "N/A", "Festergut", "N/A", "N/A", "N/A", "N/A", "Professor Putricide", "N/A", "N/A", "N/A", "N/A", "Blood Council", "N/A", "N/A", "N/A", "N/A", "Blood-Queen Lana'thel", "N/A", "N/A", "N/A", "N/A", "Valithria Dreamwalker", "N/A", "N/A", "N/A", "N/A", "Sindragosa", "N/A", "N/A", "N/A", "N/A", "The Lick King", "N/A", "N/A", "N/A", "N/A"]
  167.         rs = ["The Ruby Sanctum", "1", "Halion", "N/A", "N/A", "N/A", "N/A"]
  168.         bh = ["Baradin Hold", "3", "Argaloth", "N/A", "N/A", "N/A", "N/A", "Occu'thar", "N/A", "N/A", "N/A", "N/A", "Alizabal, Mistress of Hate", "N/A", "N/A", "N/A", "N/A"]
  169.         bd = ["Blackwing Descent", "6", "Omnotron Defense System", "N/A", "N/A", "N/A", "N/A", "Magmaw", "N/A", "N/A", "N/A", "N/A", "Atramedes", "N/A", "N/A", "N/A", "N/A", "Chimaeron", "N/A", "N/A", "N/A", "N/A", "Maloriak", "N/A", "N/A", "N/A", "N/A", "Nefarian's End", "N/A", "N/A", "N/A", "N/A"]
  170.         bot = ["The Bastion of Twightlight", "5", "Halfus Wyrmbreaker", "N/A", "N/A", "N/A", "N/A", "Theralion and Valiona", "N/A", "N/A", "N/A", "N/A", "Ascendant Council", "N/A", "N/A", "N/A", "N/A", "Cho'gall", "N/A", "N/A", "N/A", "N/A", "Sinestra", "N/A", "N/A", "N/A", "N/A"]
  171.         tfw = ["Throne of the Four Winds","2", "The Conclave of Wind", "N/A", "N/A", "N/A", "N/A", "Al'Akir", "N/A", "N/A", "N/A", "N/A"]
  172.         fl = ["Firelands", "7", "Beth'tilac", "N/A", "N/A", "N/A", "N/A", "Lord Rhyolith", "N/A", "N/A", "N/A", "N/A", "Shannox", "N/A", "N/A", "N/A", "N/A", "Alysrazor", "N/A", "N/A", "N/A", "N/A", "Baleroc, the Gatekeeper", "N/A", "N/A", "N/A", "N/A", "Majordomo Staghelm", "N/A", "N/A", "N/A", "N/A", "Ragnaros", "N/A", "N/A", "N/A", "N/A"]
  173.         ds = ["Dragon Soul", "8", "Morchok", "N/A", "N/A", "N/A", "N/A", "Warlord Zon'ozz", "N/A", "N/A", "N/A", "N/A", "Yor'sahj the Unsleeping", "N/A", "N/A", "N/A", "N/A", "Hagara the Stormbinder", "N/A", "N/A", "N/A", "N/A", "Ultraxion", "N/A", "N/A", "N/A", "N/A", "Warmaster Blackhorn", "N/A", "N/A", "N/A", "N/A", "Spine of Deathwing", "N/A", "N/A", "N/A", "N/A", "Madness of Deathwing", "N/A", "N/A", "N/A", "N/A"]
  174.         mv = ["Mogu'shan Vaults","6", "The Stone Guard", "N/A", "N/A", "N/A", "N/A", "Feng the Accursed", "N/A", "N/A", "N/A", "N/A", "Gara'jal the Spiritbinder", "N/A", "N/A", "N/A", "N/A", "The Spirit Kings", "N/A", "N/A", "N/A", "N/A", "Elegon", "N/A", "N/A", "N/A", "N/A", "Will of the Emperor", "N/A", "N/A", "N/A", "N/A"]
  175.         hof = ["Heart of Fear", "6", "Imperial Vizier Zor'lok", "N/A", "N/A", "N/A", "N/A", "Blade Lord Ta'yak", "N/A", "N/A", "N/A", "N/A", "Garalon", "N/A", "N/A", "N/A", "N/A", "Wind Lord Mel'jarak", "N/A", "N/A", "N/A", "N/A", "Amber-Shaper Un'sok", "N/A", "N/A", "N/A", "N/A", "Grand Empress Shek'zeer", "N/A", "N/A", "N/A", "N/A"]
  176.         tes = ["Terrace of Endless Spring", "4", "Protectors of the Endless", "N/A", "N/A", "N/A", "N/A", "Tsulong", "N/A", "N/A", "N/A", "N/A", "Lei Shi", "N/A", "N/A", "N/A", "N/A", "Sha of Fear", "N/A", "N/A", "N/A", "N/A"]
  177.         tot = ["Throne of Thunder", "13", "Jin'rokh the Breaker", "N/A", "N/A", "N/A", "N/A", "Horridon", "N/A", "N/A", "N/A", "N/A", "Council of Elders", "N/A", "N/A", "N/A", "N/A", "Tortos", "N/A", "N/A", "N/A", "N/A", "Megaera", "N/A", "N/A", "N/A", "N/A", "Ji'kun", "N/A", "N/A", "N/A", "N/A", "Durumu the Forgotten", "N/A", "N/A", "N/A", "N/A", "Primordius", "N/A", "N/A", "N/A", "N/A", "Dark Animus", "N/A", "N/A", "N/A", "N/A", "Iron Qon", "N/A", "N/A", "N/A", "N/A", "Twin Consorts", "N/A", "N/A", "N/A", "N/A", "Lei Shen", "N/A", "N/A", "N/A", "N/A", "Ra-den", "N/A", "N/A", "N/A", "N/A"]
  178.         soo = ["Seige of Orgrimmar", "14", "Immerseus", "N/A", "N/A", "N/A", "N/A", "The Fallen Protector", "N/A", "N/A", "N/A", "N/A", "Norushen", "N/A", "N/A", "N/A", "N/A", "Sha of Pride", "N/A", "N/A", "N/A", "N/A", "Galakras", "N/A", "N/A", "N/A", "N/A", "Iron Juggernaut", "N/A", "N/A", "N/A", "N/A", "Kor'kron Dark Shaman", "N/A", "N/A", "N/A", "N/A", "General Nazgrim", "N/A", "N/A", "N/A", "N/A", "Malkorok", "N/A", "N/A", "N/A", "N/A", "Spoils of Pandaria", "N/A", "N/A", "N/A", "N/A", "Thok the Bloodthirsty", "N/A", "N/A", "N/A", "N/A", "Siegecrafter Blackfuse", "N/A", "N/A", "N/A", "N/A", "Paragons of the Klaxxi", "N/A", "N/A", "N/A", "N/A", "Garrosh Hellscream", "N/A", "N/A", "N/A", "N/A"]#
  179.         hm = ["Highmaul", "7", "Kargath Bladefist", "N/A", "N/A", "N/A", "N/A", "The Butcher", "N/A", "N/A", "N/A", "N/A", "Brackenspore", "N/A", "N/A", "N/A", "N/A", "Tectus", "N/A", "N/A", "N/A", "N/A", "Twin Ogron", "N/A", "N/A", "N/A", "N/A", "Ko'ragh", "N/A", "N/A", "N/A", "N/A", "Imperator Mar'gok", "N/A", "N/A", "N/A", "N/A"]
  180.         brf = ["Blackrock Foundry", "10", "Oregorger", "N/A", "N/A", "N/A", "N/A", "Gruul", "N/A", "N/A", "N/A", "N/A", "The Blast Furnace", "N/A", "N/A", "N/A", "N/A", "Hans'gar and Franzok", "N/A", "N/A", "N/A", "N/A", "Flamebender ka'graz", "N/A", "N/A", "N/A", "N/A", "Kromog", "N/A", "N/A", "N/A", "N/A", "Beastlord Darmac", "N/A", "N/A", "N/A", "N/A", "Operator Thogar", "N/A", "N/A", "N/A", "N/A", "The Iron Maidens", "N/A", "N/A", "N/A", "N/A", "Blackhand", "N/A", "N/A", "N/A", "N/A"]
  181.         hfc = ["Hellfire Citadel", "13", "Hellfire Assault", "N/A", "N/A", "N/A", "N/A", "Iron Reaver", "N/A", "N/A", "N/A", "N/A", "Kormrok", "N/A", "N/A", "N/A", "N/A", "Hellfire High Council", "N/A", "N/A", "N/A", "N/A", "Kilrogg Deadeye", "N/A", "N/A", "N/A", "N/A", "Gorefiend", "N/A", "N/A", "N/A", "N/A", "Shadow-Lord Iskar", "N/A", "N/A", "N/A", "N/A", "Socrethar the Eternal", "N/A", "N/A", "N/A", "N/A", "Tyrant Velhari", "N/A", "N/A", "N/A", "N/A", "Fel Lord Zakuun", "N/A", "N/A", "N/A", "N/A", "Xhul'horac", "N/A", "N/A", "N/A", "N/A", "Mannoroth", "N/A", "N/A", "N/A", "N/A", "Archimonde", "N/A", "N/A", "N/A", "N/A"]
  182.  
  183.         #molten core
  184.         ri_a, ri_b = raidinfo.split('Ragnaros", nKills: ', 1)
  185.         raidinfo = ri_b
  186.         ri_a, ri_b = raidinfo.split(' }', 1)
  187.         mc[4] = str(ri_a)
  188.         #blackwing lair
  189.         ri_a, ri_b = raidinfo.split('Nefarian", nKills: ', 1)
  190.         raidinfo = ri_b
  191.         ri_a, ri_b = raidinfo.split(' }', 1)
  192.         bwl[4] = str(ri_a)
  193.         #ruins of ahn'qiraj
  194.         ri_a, ri_b = raidinfo.split('Ossirian the Unscarred", nKills: ', 1)
  195.         raidinfo = ri_b
  196.         ri_a, ri_b = raidinfo.split(' }', 1)
  197.         aq10[4] = str(ri_a)
  198.         #ahn'qiraj temple
  199.         ri_a, ri_b = raidinfo.split('Thun", nKills: ', 1)
  200.         raidinfo = ri_b
  201.         ri_a, ri_b = raidinfo.split(' }', 1)
  202.         aq40[4] = str(ri_a)
  203.         #karazhan
  204.         ri_a, ri_b = raidinfo.split('Prince Malchezaar", nKills: ', 1)
  205.         raidinfo = ri_b
  206.         ri_a, ri_b = raidinfo.split(' }', 1)
  207.         kar[4] = str(ri_a)
  208.         #magtheridon's lair
  209.         ri_a, ri_b = raidinfo.split('Magtheridon", nKills: ', 1)
  210.         raidinfo = ri_b
  211.         ri_a, ri_b = raidinfo.split(' }', 1)
  212.         mag[4] = str(ri_a)
  213.         #gruul's lair
  214.         ri_a, ri_b = raidinfo.split('Gruul the Dragonkiller", nKills: ', 1)
  215.         raidinfo = ri_b
  216.         ri_a, ri_b = raidinfo.split(' }', 1)
  217.         gru[4] = str(ri_a)
  218.         #serpentshrine cavern
  219.         ri_a, ri_b = raidinfo.split('Lady Vashj", nKills: ', 1)
  220.         raidinfo = ri_b
  221.         ri_a, ri_b = raidinfo.split(' }', 1)
  222.         ssc[4] = str(ri_a)
  223.         #tempest keep
  224.         ri_a, ri_b = raidinfo.split('Sunstrider", nKills: ', 1)
  225.         raidinfo = ri_b
  226.         ri_a, ri_b = raidinfo.split(' }', 1)
  227.         tk[4] = str(ri_a)
  228.         #the battle for mount hyjal
  229.         ri_a, ri_b = raidinfo.split('Archimonde", nKills: ', 1)
  230.         raidinfo = ri_b
  231.         ri_a, ri_b = raidinfo.split(' }', 1)
  232.         mh[4] = str(ri_a)
  233.         #black temple
  234.         ri_a, ri_b = raidinfo.split('Illidan Stormrage", nKills: ', 1)
  235.         raidinfo = ri_b
  236.         ri_a, ri_b = raidinfo.split(' }', 1)
  237.         bt[4] = str(ri_a)
  238.         #the sunwell
  239.         ri_a, ri_b = raidinfo.split('jaeden", nKills: ', 1)
  240.         raidinfo = ri_b
  241.         ri_a, ri_b = raidinfo.split(' }', 1)
  242.         sp[4] = str(ri_a)
  243.         #vault of archavon
  244.         ri_a, ri_b = raidinfo.split('Stone Watcher", nKills: ', 1)
  245.         raidinfo = ri_b
  246.         ri_a, ri_b = raidinfo.split(' }', 1)
  247.         voa[4] = str(ri_a)
  248.         ri_a, ri_b = raidinfo.split('Storm Watcher", nKills: ', 1)
  249.         raidinfo = ri_b
  250.         ri_a, ri_b = raidinfo.split(' }', 1)
  251.         voa[9] = str(ri_a)
  252.         ri_a, ri_b = raidinfo.split('Flame Watcher", nKills: ', 1)
  253.         raidinfo = ri_b
  254.         ri_a, ri_b = raidinfo.split(' }', 1)
  255.         voa[14] = str(ri_a)
  256.         ri_a, ri_b = raidinfo.split('Ice Watcher", nKills: ', 1)
  257.         raidinfo = ri_b
  258.         ri_a, ri_b = raidinfo.split(' }', 1)
  259.         voa[19] = str(ri_a)
  260.         #naxxramas
  261.         ri_a, ri_b = raidinfo.split('Rekhan", nKills: ', 1)
  262.         raidinfo = ri_b
  263.         ri_a, ri_b = raidinfo.split(' }', 1)
  264.         nax[4] = str(ri_a)
  265.         ri_a, ri_b = raidinfo.split('Faerlina", nKills: ', 1)
  266.         raidinfo = ri_b
  267.         ri_a, ri_b = raidinfo.split(' }', 1)
  268.         nax[9] = str(ri_a)
  269.         ri_a, ri_b = raidinfo.split('Maexxna", nKills: ', 1)
  270.         raidinfo = ri_b
  271.         ri_a, ri_b = raidinfo.split(' }', 1)
  272.         nax[14] = str(ri_a)
  273.         ri_a, ri_b = raidinfo.split('bringer", nKills: ', 1)
  274.         raidinfo = ri_b
  275.         ri_a, ri_b = raidinfo.split(' }', 1)
  276.         nax[19] = str(ri_a)
  277.         ri_a, ri_b = raidinfo.split('Unclean", nKills: ', 1)
  278.         raidinfo = ri_b
  279.         ri_a, ri_b = raidinfo.split(' }', 1)
  280.         nax[24] = str(ri_a)
  281.         ri_a, ri_b = raidinfo.split('theb", nKills: ', 1)
  282.         raidinfo = ri_b
  283.         ri_a, ri_b = raidinfo.split(' }', 1)
  284.         nax[29] = str(ri_a)
  285.         ri_a, ri_b = raidinfo.split('zuvious", nKills: ', 1)
  286.         raidinfo = ri_b
  287.         ri_a, ri_b = raidinfo.split(' }', 1)
  288.         nax[34] = str(ri_a)
  289.         ri_a, ri_b = raidinfo.split('vester", nKills: ', 1)
  290.         raidinfo = ri_b
  291.         ri_a, ri_b = raidinfo.split(' }', 1)
  292.         nax[39] = str(ri_a)
  293.         ri_a, ri_b = raidinfo.split('Horsemen", nKills: ', 1)
  294.         raidinfo = ri_b
  295.         ri_a, ri_b = raidinfo.split(' }', 1)
  296.         nax[44] = str(ri_a)
  297.         ri_a, ri_b = raidinfo.split('werk", nKills: ', 1)
  298.         raidinfo = ri_b
  299.         ri_a, ri_b = raidinfo.split(' }', 1)
  300.         nax[49] = str(ri_a)
  301.         ri_a, ri_b = raidinfo.split('bulus", nKills: ', 1)
  302.         raidinfo = ri_b
  303.         ri_a, ri_b = raidinfo.split(' }', 1)
  304.         nax[54] = str(ri_a)
  305.         ri_a, ri_b = raidinfo.split('Gluth", nKills: ', 1)
  306.         raidinfo = ri_b
  307.         ri_a, ri_b = raidinfo.split(' }', 1)
  308.         nax[59] = str(ri_a)
  309.         ri_a, ri_b = raidinfo.split('Thaddius", nKills: ', 1)
  310.         raidinfo = ri_b
  311.         ri_a, ri_b = raidinfo.split(' }', 1)
  312.         nax[64] = str(ri_a)
  313.         ri_a, ri_b = raidinfo.split('Sapphiron", nKills: ', 1)
  314.         raidinfo = ri_b
  315.         ri_a, ri_b = raidinfo.split(' }', 1)
  316.         nax[69] = str(ri_a)
  317.         ri_a, ri_b = raidinfo.split('Thuzad", nKills: ', 1)
  318.         raidinfo = ri_b
  319.         ri_a, ri_b = raidinfo.split(' }', 1)
  320.         nax[74] = str(ri_a)
  321.         #the obsidian sanctum
  322.         ri_a, ri_b = raidinfo.split('Sartharion", nKills: ', 1)
  323.         raidinfo = ri_b
  324.         ri_a, ri_b = raidinfo.split(' }', 1)
  325.         tos[4] = str(ri_a)
  326.         #the eye of eternity
  327.         ri_a, ri_b = raidinfo.split('Malygos", nKills: ', 1)
  328.         raidinfo = ri_b
  329.         ri_a, ri_b = raidinfo.split(' }', 1)
  330.         eoe[4] = str(ri_a)
  331.         #ulduar
  332.         ri_a, ri_b = raidinfo.split('viathan", nKills: ', 1)
  333.         raidinfo = ri_b
  334.         ri_a, ri_b = raidinfo.split(' }', 1)
  335.         uld[4] = str(ri_a)
  336.         ri_a, ri_b = raidinfo.split('Master", nKills: ', 1)
  337.         raidinfo = ri_b
  338.         ri_a, ri_b = raidinfo.split(', optional: true }', 1)
  339.         uld[9] = str(ri_a)
  340.         ri_a, ri_b = raidinfo.split('scale", nKills: ', 1)
  341.         raidinfo = ri_b
  342.         ri_a, ri_b = raidinfo.split(', optional: true }', 1)
  343.         uld[14] = str(ri_a)
  344.         ri_a, ri_b = raidinfo.split('structor", nKills: ', 1)
  345.         raidinfo = ri_b
  346.         ri_a, ri_b = raidinfo.split(' }', 1)
  347.         uld[19] = str(ri_a)
  348.         ri_a, ri_b = raidinfo.split('Iron", nKills: ', 1)
  349.         raidinfo = ri_b
  350.         ri_a, ri_b = raidinfo.split(' }', 1)
  351.         uld[24] = str(ri_a)
  352.         ri_a, ri_b = raidinfo.split('garn", nKills: ', 1)
  353.         raidinfo = ri_b
  354.         ri_a, ri_b = raidinfo.split(' }', 1)
  355.         uld[29] = str(ri_a)
  356.         ri_a, ri_b = raidinfo.split('iaya", nKills: ', 1)
  357.         raidinfo = ri_b
  358.         ri_a, ri_b = raidinfo.split(' }', 1)
  359.         uld[34] = str(ri_a)
  360.         ri_a, ri_b = raidinfo.split('Hodir", nKills: ', 1)
  361.         raidinfo = ri_b
  362.         ri_a, ri_b = raidinfo.split(' }', 1)
  363.         uld[39] = str(ri_a)
  364.         ri_a, ri_b = raidinfo.split('Thorim", nKills: ', 1)
  365.         raidinfo = ri_b
  366.         ri_a, ri_b = raidinfo.split(' }', 1)
  367.         uld[44] = str(ri_a)
  368.         ri_a, ri_b = raidinfo.split('Freya", nKills: ', 1)
  369.         raidinfo = ri_b
  370.         ri_a, ri_b = raidinfo.split(' }', 1)
  371.         uld[49] = str(ri_a)
  372.         ri_a, ri_b = raidinfo.split('Mimiron", nKills: ', 1)
  373.         raidinfo = ri_b
  374.         ri_a, ri_b = raidinfo.split(' }', 1)
  375.         uld[54] = str(ri_a)
  376.         ri_a, ri_b = raidinfo.split('Vezax", nKills: ', 1)
  377.         raidinfo = ri_b
  378.         ri_a, ri_b = raidinfo.split(' }', 1)
  379.         uld[59] = str(ri_a)
  380.         ri_a, ri_b = raidinfo.split('Saron", nKills: ', 1)
  381.         raidinfo = ri_b
  382.         ri_a, ri_b = raidinfo.split(' }', 1)
  383.         uld[64] = str(ri_a)
  384.         ri_a, ri_b = raidinfo.split('server", nKills: ', 1)
  385.         raidinfo = ri_b
  386.         ri_a, ri_b = raidinfo.split(', optional: true }', 1)
  387.         uld[69] = str(ri_a)
  388.         #onyxia's lair
  389.         ri_a, ri_b = raidinfo.split('Onyxia", nKills: ', 1)
  390.         raidinfo = ri_b
  391.         ri_a, ri_b = raidinfo.split(' }', 1)
  392.         ony[4] = str(ri_a)
  393.         #trial of the crusader
  394.         ri_a, ri_b = raidinfo.split('Beasts", nKills: ', 1)
  395.         raidinfo = ri_b
  396.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  397.         toc[4] = str(ri_a)
  398.         raidinfo = ri_b
  399.         ri_a, ri_b = raidinfo.split(' }', 1)
  400.         toc[5] = str(ri_a)
  401.         ri_a, ri_b = raidinfo.split('axxus", nKills: ', 1)
  402.         raidinfo = ri_b
  403.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  404.         toc[9] = str(ri_a)
  405.         raidinfo = ri_b
  406.         ri_a, ri_b = raidinfo.split(' }', 1)
  407.         toc[10] = str(ri_a)
  408.         ri_a, ri_b = raidinfo.split('Champions", nKills: ', 1)
  409.         raidinfo = ri_b
  410.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  411.         toc[14] = str(ri_a)
  412.         raidinfo = ri_b
  413.         ri_a, ri_b = raidinfo.split(' }', 1)
  414.         toc[15] = str(ri_a)
  415.         ri_a, ri_b = raidinfo.split('Twins", nKills: ', 1)
  416.         raidinfo = ri_b
  417.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  418.         toc[19] = str(ri_a)
  419.         raidinfo = ri_b
  420.         ri_a, ri_b = raidinfo.split(' }', 1)
  421.         toc[20] = str(ri_a)
  422.         ri_a, ri_b = raidinfo.split('arak", nKills: ', 1)
  423.         raidinfo = ri_b
  424.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  425.         toc[24] = str(ri_a)
  426.         raidinfo = ri_b
  427.         ri_a, ri_b = raidinfo.split(' }', 1)
  428.         toc[25] = str(ri_a)
  429.         #icecrown citadel
  430.         ri_a, ri_b = raidinfo.split('rrowgar", nKills: ', 1)
  431.         raidinfo = ri_b
  432.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  433.         icc[4] = str(ri_a)
  434.         raidinfo = ri_b
  435.         ri_a, ri_b = raidinfo.split(' }', 1)
  436.         icc[5] = str(ri_a)
  437.         ri_a, ri_b = raidinfo.split('whisper", nKills: ', 1)
  438.         raidinfo = ri_b
  439.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  440.         icc[9] = str(ri_a)
  441.         raidinfo = ri_b
  442.         ri_a, ri_b = raidinfo.split(' }', 1)
  443.         icc[10] = str(ri_a)
  444.         ri_a, ri_b = raidinfo.split('Battle", nKills: ', 1)
  445.         raidinfo = ri_b
  446.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  447.         icc[14] = str(ri_a)
  448.         raidinfo = ri_b
  449.         ri_a, ri_b = raidinfo.split(' }', 1)
  450.         icc[15] = str(ri_a)
  451.         ri_a, ri_b = raidinfo.split('fang", nKills: ', 1)
  452.         raidinfo = ri_b
  453.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  454.         icc[19] = str(ri_a)
  455.         raidinfo = ri_b
  456.         ri_a, ri_b = raidinfo.split(' }', 1)
  457.         icc[20] = str(ri_a)
  458.         ri_a, ri_b = raidinfo.split('face", nKills: ', 1)
  459.         raidinfo = ri_b
  460.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  461.         icc[24] = str(ri_a)
  462.         raidinfo = ri_b
  463.         ri_a, ri_b = raidinfo.split(' }', 1)
  464.         icc[25] = str(ri_a)
  465.         ri_a, ri_b = raidinfo.split('gut", nKills: ', 1)
  466.         raidinfo = ri_b
  467.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  468.         icc[29] = str(ri_a)
  469.         raidinfo = ri_b
  470.         ri_a, ri_b = raidinfo.split(' }', 1)
  471.         icc[30] = str(ri_a)
  472.         ri_a, ri_b = raidinfo.split('cide", nKills: ', 1)
  473.         raidinfo = ri_b
  474.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  475.         icc[34] = str(ri_a)
  476.         raidinfo = ri_b
  477.         ri_a, ri_b = raidinfo.split(' }', 1)
  478.         icc[35] = str(ri_a)
  479.         ri_a, ri_b = raidinfo.split('Council", nKills: ', 1)
  480.         raidinfo = ri_b
  481.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  482.         icc[39] = str(ri_a)
  483.         raidinfo = ri_b
  484.         ri_a, ri_b = raidinfo.split(' }', 1)
  485.         icc[40] = str(ri_a)
  486.         ri_a, ri_b = raidinfo.split('thel", nKills: ', 1)
  487.         raidinfo = ri_b
  488.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  489.         icc[44] = str(ri_a)
  490.         raidinfo = ri_b
  491.         ri_a, ri_b = raidinfo.split(' }', 1)
  492.         icc[45] = str(ri_a)
  493.         ri_a, ri_b = raidinfo.split('walker", nKills: ', 1)
  494.         raidinfo = ri_b
  495.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  496.         icc[49] = str(ri_a)
  497.         raidinfo = ri_b
  498.         ri_a, ri_b = raidinfo.split(' }', 1)
  499.         icc[50] = str(ri_a)
  500.         ri_a, ri_b = raidinfo.split('gosa", nKills: ', 1)
  501.         raidinfo = ri_b
  502.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  503.         icc[54] = str(ri_a)
  504.         raidinfo = ri_b
  505.         ri_a, ri_b = raidinfo.split(' }', 1)
  506.         icc[55] = str(ri_a)
  507.         ri_a, ri_b = raidinfo.split('King", nKills: ', 1)
  508.         raidinfo = ri_b
  509.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  510.         icc[59] = str(ri_a)
  511.         raidinfo = ri_b
  512.         ri_a, ri_b = raidinfo.split(' }', 1)
  513.         icc[60] = str(ri_a)
  514.         #the ruby sanctum
  515.         ri_a, ri_b = raidinfo.split('Halion", nKills: ', 1)
  516.         raidinfo = ri_b
  517.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  518.         rs[4] = str(ri_a)
  519.         raidinfo = ri_b
  520.         ri_a, ri_b = raidinfo.split(' }', 1)
  521.         rs[5] = str(ri_a)
  522.         #baradin hold
  523.         ri_a, ri_b = raidinfo.split('Argaloth", nKills: ', 1)
  524.         raidinfo = ri_b
  525.         ri_a, ri_b = raidinfo.split(' }', 1)
  526.         bh[4] = str(ri_a)
  527.         ri_a, ri_b = raidinfo.split('thar", nKills: ', 1)
  528.         raidinfo = ri_b
  529.         ri_a, ri_b = raidinfo.split(' }', 1)
  530.         bh[9] = str(ri_a)
  531.         ri_a, ri_b = raidinfo.split('Hate", nKills: ', 1)
  532.         raidinfo = ri_b
  533.         ri_a, ri_b = raidinfo.split(' }', 1)
  534.         bh[14] = str(ri_a)
  535.         #blackwing descent
  536.         ri_a, ri_b = raidinfo.split('System", nKills: ', 1)
  537.         raidinfo = ri_b
  538.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  539.         bd[4] = str(ri_a)
  540.         raidinfo = ri_b
  541.         ri_a, ri_b = raidinfo.split(' }', 1)
  542.         bd[5] = str(ri_a)
  543.         ri_a, ri_b = raidinfo.split('Magmaw", nKills: ', 1)
  544.         raidinfo = ri_b
  545.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  546.         bd[9] = str(ri_a)
  547.         raidinfo = ri_b
  548.         ri_a, ri_b = raidinfo.split(' }', 1)
  549.         bd[10] = str(ri_a)
  550.         ri_a, ri_b = raidinfo.split('medes", nKills: ', 1)
  551.         raidinfo = ri_b
  552.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  553.         bd[14] = str(ri_a)
  554.         raidinfo = ri_b
  555.         ri_a, ri_b = raidinfo.split(' }', 1)
  556.         bd[15] = str(ri_a)
  557.         ri_a, ri_b = raidinfo.split('aeron", nKills: ', 1)
  558.         raidinfo = ri_b
  559.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  560.         bd[19] = str(ri_a)
  561.         raidinfo = ri_b
  562.         ri_a, ri_b = raidinfo.split(' }', 1)
  563.         bd[20] = str(ri_a)
  564.         ri_a, ri_b = raidinfo.split('riak", nKills: ', 1)
  565.         raidinfo = ri_b
  566.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  567.         bd[24] = str(ri_a)
  568.         raidinfo = ri_b
  569.         ri_a, ri_b = raidinfo.split(' }', 1)
  570.         bd[25] = str(ri_a)
  571.         ri_a, ri_b = raidinfo.split('End", nKills: ', 1)
  572.         raidinfo = ri_b
  573.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  574.         bd[29] = str(ri_a)
  575.         raidinfo = ri_b
  576.         ri_a, ri_b = raidinfo.split(' }', 1)
  577.         bd[30] = str(ri_a)
  578.         #the bastion of twilight
  579.         ri_a, ri_b = raidinfo.split('Wyrmbreaker", nKills: ', 1)
  580.         raidinfo = ri_b
  581.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  582.         bot[4] = str(ri_a)
  583.         raidinfo = ri_b
  584.         ri_a, ri_b = raidinfo.split(' }', 1)
  585.         bot[5] = str(ri_a)
  586.         ri_a, ri_b = raidinfo.split('Valiona", nKills: ', 1)
  587.         raidinfo = ri_b
  588.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  589.         bot[9] = str(ri_a)
  590.         raidinfo = ri_b
  591.         ri_a, ri_b = raidinfo.split(' }', 1)
  592.         bot[10] = str(ri_a)
  593.         ri_a, ri_b = raidinfo.split('Council", nKills: ', 1)
  594.         raidinfo = ri_b
  595.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  596.         bot[14] = str(ri_a)
  597.         raidinfo = ri_b
  598.         ri_a, ri_b = raidinfo.split(' }', 1)
  599.         bot[15] = str(ri_a)
  600.         ri_a, ri_b = raidinfo.split('gall", nKills: ', 1)
  601.         raidinfo = ri_b
  602.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  603.         bot[19] = str(ri_a)
  604.         raidinfo = ri_b
  605.         ri_a, ri_b = raidinfo.split(' }', 1)
  606.         bot[20] = str(ri_a)
  607.         ri_a, ri_b = raidinfo.split('Sinestra", nHeroicKills: ', 1)
  608.         raidinfo = ri_b
  609.         ri_a, ri_b = raidinfo.split(', optional: true }', 1)
  610.         bot[25] = str(ri_a)
  611.         #throne of the four winds
  612.         ri_a, ri_b = raidinfo.split('Wind", nKills: ', 1)
  613.         raidinfo = ri_b
  614.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  615.         tfw[4] = str(ri_a)
  616.         raidinfo = ri_b
  617.         ri_a, ri_b = raidinfo.split(' }', 1)
  618.         tfw[5] = str(ri_a)
  619.         ri_a, ri_b = raidinfo.split('Akir", nKills: ', 1)
  620.         raidinfo = ri_b
  621.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  622.         tfw[9] = str(ri_a)
  623.         raidinfo = ri_b
  624.         ri_a, ri_b = raidinfo.split(' }', 1)
  625.         tfw[10] = str(ri_a)
  626.         #firelands
  627.         ri_a, ri_b = raidinfo.split('tilac", nKills: ', 1)
  628.         raidinfo = ri_b
  629.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  630.         fl[4] = str(ri_a)
  631.         raidinfo = ri_b
  632.         ri_a, ri_b = raidinfo.split(' }', 1)
  633.         fl[5] = str(ri_a)
  634.         ri_a, ri_b = raidinfo.split('lith", nKills: ', 1)
  635.         raidinfo = ri_b
  636.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  637.         fl[9] = str(ri_a)
  638.         raidinfo = ri_b
  639.         ri_a, ri_b = raidinfo.split(' }', 1)
  640.         fl[10] = str(ri_a)
  641.         ri_a, ri_b = raidinfo.split('Shannox", nKills: ', 1)
  642.         raidinfo = ri_b
  643.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  644.         fl[14] = str(ri_a)
  645.         raidinfo = ri_b
  646.         ri_a, ri_b = raidinfo.split(' }', 1)
  647.         fl[15] = str(ri_a)
  648.         ri_a, ri_b = raidinfo.split('razor", nKills: ', 1)
  649.         raidinfo = ri_b
  650.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  651.         fl[19] = str(ri_a)
  652.         raidinfo = ri_b
  653.         ri_a, ri_b = raidinfo.split(' }', 1)
  654.         fl[20] = str(ri_a)
  655.         ri_a, ri_b = raidinfo.split('keeper", nKills: ', 1)
  656.         raidinfo = ri_b
  657.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  658.         fl[24] = str(ri_a)
  659.         raidinfo = ri_b
  660.         ri_a, ri_b = raidinfo.split(' }', 1)
  661.         fl[25] = str(ri_a)
  662.         ri_a, ri_b = raidinfo.split('Staghelm", nKills: ', 1)
  663.         raidinfo = ri_b
  664.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  665.         fl[29] = str(ri_a)
  666.         raidinfo = ri_b
  667.         ri_a, ri_b = raidinfo.split(' }', 1)
  668.         fl[30] = str(ri_a)
  669.         ri_a, ri_b = raidinfo.split('Ragnaros", nKills: ', 1)
  670.         raidinfo = ri_b
  671.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  672.         fl[34] = str(ri_a)
  673.         raidinfo = ri_b
  674.         ri_a, ri_b = raidinfo.split(' }', 1)
  675.         fl[35] = str(ri_a)
  676.         #dragon soul
  677.         ri_a, ri_b = raidinfo.split('Morchok", nLfrKills: ', 1)
  678.         raidinfo = ri_b
  679.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  680.         ds[3] = str(ri_a)
  681.         raidinfo = ri_b
  682.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  683.         ds[4] = str(ri_a)
  684.         raidinfo = ri_b
  685.         ri_a, ri_b = raidinfo.split(' }', 1)
  686.         ds[5] = str(ri_a)
  687.         ri_a, ri_b = raidinfo.split('ozz", nLfrKills: ', 1)
  688.         raidinfo = ri_b
  689.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  690.         ds[8] = str(ri_a)
  691.         raidinfo = ri_b
  692.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  693.         ds[9] = str(ri_a)
  694.         raidinfo = ri_b
  695.         ri_a, ri_b = raidinfo.split(' }', 1)
  696.         ds[10] = str(ri_a)
  697.         ri_a, ri_b = raidinfo.split('sleeping", nLfrKills: ', 1)
  698.         raidinfo = ri_b
  699.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  700.         ds[13] = str(ri_a)
  701.         raidinfo = ri_b
  702.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  703.         ds[14] = str(ri_a)
  704.         raidinfo = ri_b
  705.         ri_a, ri_b = raidinfo.split(' }', 1)
  706.         ds[15] = str(ri_a)
  707.         ri_a, ri_b = raidinfo.split('binder", nLfrKills: ', 1)
  708.         raidinfo = ri_b
  709.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  710.         ds[18] = str(ri_a)
  711.         raidinfo = ri_b
  712.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  713.         ds[19] = str(ri_a)
  714.         raidinfo = ri_b
  715.         ri_a, ri_b = raidinfo.split(' }', 1)
  716.         ds[20] = str(ri_a)
  717.         ri_a, ri_b = raidinfo.split('Ultraxion", nLfrKills: ', 1)
  718.         raidinfo = ri_b
  719.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  720.         ds[23] = str(ri_a)
  721.         raidinfo = ri_b
  722.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  723.         ds[24] = str(ri_a)
  724.         raidinfo = ri_b
  725.         ri_a, ri_b = raidinfo.split(' }', 1)
  726.         ds[25] = str(ri_a)
  727.         ri_a, ri_b = raidinfo.split('Blackhorn", nLfrKills: ', 1)
  728.         raidinfo = ri_b
  729.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  730.         ds[28] = str(ri_a)
  731.         raidinfo = ri_b
  732.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  733.         ds[29] = str(ri_a)
  734.         raidinfo = ri_b
  735.         ri_a, ri_b = raidinfo.split(' }', 1)
  736.         ds[30] = str(ri_a)
  737.         ri_a, ri_b = raidinfo.split('Spine of Deathwing", nLfrKills: ', 1)
  738.         raidinfo = ri_b
  739.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  740.         ds[33] = str(ri_a)
  741.         raidinfo = ri_b
  742.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  743.         ds[34] = str(ri_a)
  744.         raidinfo = ri_b
  745.         ri_a, ri_b = raidinfo.split(' }', 1)
  746.         ds[35] = str(ri_a)
  747.         ri_a, ri_b = raidinfo.split('Madness of Deathwing", nLfrKills: ', 1)
  748.         raidinfo = ri_b
  749.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  750.         ds[38] = str(ri_a)
  751.         raidinfo = ri_b
  752.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  753.         ds[39] = str(ri_a)
  754.         raidinfo = ri_b
  755.         ri_a, ri_b = raidinfo.split(' }', 1)
  756.         ds[40] = str(ri_a)
  757.         #mogu'shan vaults
  758.         ri_a, ri_b = raidinfo.split('Guard", nLfrKills: ', 1)
  759.         raidinfo = ri_b
  760.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  761.         mv[3] = str(ri_a)
  762.         raidinfo = ri_b
  763.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  764.         mv[4] = str(ri_a)
  765.         raidinfo = ri_b
  766.         ri_a, ri_b = raidinfo.split(' }', 1)
  767.         mv[5] = str(ri_a)
  768.         ri_a, ri_b = raidinfo.split('Accursed", nLfrKills: ', 1)
  769.         raidinfo = ri_b
  770.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  771.         mv[8] = str(ri_a)
  772.         raidinfo = ri_b
  773.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  774.         mv[9] = str(ri_a)
  775.         raidinfo = ri_b
  776.         ri_a, ri_b = raidinfo.split(' }', 1)
  777.         mv[10] = str(ri_a)
  778.         ri_a, ri_b = raidinfo.split('binder", nLfrKills: ', 1)
  779.         raidinfo = ri_b
  780.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  781.         mv[13] = str(ri_a)
  782.         raidinfo = ri_b
  783.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  784.         mv[14] = str(ri_a)
  785.         raidinfo = ri_b
  786.         ri_a, ri_b = raidinfo.split(' }', 1)
  787.         mv[15] = str(ri_a)
  788.         ri_a, ri_b = raidinfo.split('Kings", nLfrKills: ', 1)
  789.         raidinfo = ri_b
  790.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  791.         mv[18] = str(ri_a)
  792.         raidinfo = ri_b
  793.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  794.         mv[19] = str(ri_a)
  795.         raidinfo = ri_b
  796.         ri_a, ri_b = raidinfo.split(' }', 1)
  797.         mv[20] = str(ri_a)
  798.         ri_a, ri_b = raidinfo.split('Elegon", nLfrKills: ', 1)
  799.         raidinfo = ri_b
  800.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  801.         mv[23] = str(ri_a)
  802.         raidinfo = ri_b
  803.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  804.         mv[24] = str(ri_a)
  805.         raidinfo = ri_b
  806.         ri_a, ri_b = raidinfo.split(' }', 1)
  807.         mv[25] = str(ri_a)
  808.         ri_a, ri_b = raidinfo.split('Emperor", nLfrKills: ', 1)
  809.         raidinfo = ri_b
  810.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  811.         mv[28] = str(ri_a)
  812.         raidinfo = ri_b
  813.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  814.         mv[29] = str(ri_a)
  815.         raidinfo = ri_b
  816.         ri_a, ri_b = raidinfo.split(' }', 1)
  817.         mv[30] = str(ri_a)
  818.         #heart of fear
  819.         ri_a, ri_b = raidinfo.split('lok", nLfrKills: ', 1)
  820.         raidinfo = ri_b
  821.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  822.         hof[3] = str(ri_a)
  823.         raidinfo = ri_b
  824.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  825.         hof[4] = str(ri_a)
  826.         raidinfo = ri_b
  827.         ri_a, ri_b = raidinfo.split(' }', 1)
  828.         hof[5] = str(ri_a)
  829.         ri_a, ri_b = raidinfo.split('yak", nLfrKills: ', 1)
  830.         raidinfo = ri_b
  831.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  832.         hof[8] = str(ri_a)
  833.         raidinfo = ri_b
  834.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  835.         hof[9] = str(ri_a)
  836.         raidinfo = ri_b
  837.         ri_a, ri_b = raidinfo.split(' }', 1)
  838.         hof[10] = str(ri_a)
  839.         ri_a, ri_b = raidinfo.split('alon", nLfrKills: ', 1)
  840.         raidinfo = ri_b
  841.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  842.         hof[13] = str(ri_a)
  843.         raidinfo = ri_b
  844.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  845.         hof[14] = str(ri_a)
  846.         raidinfo = ri_b
  847.         ri_a, ri_b = raidinfo.split(' }', 1)
  848.         hof[15] = str(ri_a)
  849.         ri_a, ri_b = raidinfo.split('jarak", nLfrKills: ', 1)
  850.         raidinfo = ri_b
  851.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  852.         hof[18] = str(ri_a)
  853.         raidinfo = ri_b
  854.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  855.         hof[19] = str(ri_a)
  856.         raidinfo = ri_b
  857.         ri_a, ri_b = raidinfo.split(' }', 1)
  858.         hof[20] = str(ri_a)
  859.         ri_a, ri_b = raidinfo.split('sok", nLfrKills: ', 1)
  860.         raidinfo = ri_b
  861.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  862.         hof[23] = str(ri_a)
  863.         raidinfo = ri_b
  864.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  865.         hof[24] = str(ri_a)
  866.         raidinfo = ri_b
  867.         ri_a, ri_b = raidinfo.split(' }', 1)
  868.         hof[25] = str(ri_a)
  869.         ri_a, ri_b = raidinfo.split('zeer", nLfrKills: ', 1)
  870.         raidinfo = ri_b
  871.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  872.         hof[28] = str(ri_a)
  873.         raidinfo = ri_b
  874.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  875.         hof[29] = str(ri_a)
  876.         raidinfo = ri_b
  877.         ri_a, ri_b = raidinfo.split(' }', 1)
  878.         hof[30] = str(ri_a)
  879.         #terrace of endless spring
  880.         ri_a, ri_b = raidinfo.split('Endless", nLfrKills: ', 1)
  881.         raidinfo = ri_b
  882.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  883.         tes[3] = str(ri_a)
  884.         raidinfo = ri_b
  885.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  886.         tes[4] = str(ri_a)
  887.         raidinfo = ri_b
  888.         ri_a, ri_b = raidinfo.split(' }', 1)
  889.         tes[5] = str(ri_a)
  890.         ri_a, ri_b = raidinfo.split('long", nLfrKills: ', 1)
  891.         raidinfo = ri_b
  892.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  893.         tes[8] = str(ri_a)
  894.         raidinfo = ri_b
  895.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  896.         tes[9] = str(ri_a)
  897.         raidinfo = ri_b
  898.         ri_a, ri_b = raidinfo.split(' }', 1)
  899.         tes[10] = str(ri_a)
  900.         ri_a, ri_b = raidinfo.split('Shi", nLfrKills: ', 1)
  901.         raidinfo = ri_b
  902.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  903.         tes[13] = str(ri_a)
  904.         raidinfo = ri_b
  905.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  906.         tes[14] = str(ri_a)
  907.         raidinfo = ri_b
  908.         ri_a, ri_b = raidinfo.split(' }', 1)
  909.         tes[15] = str(ri_a)
  910.         ri_a, ri_b = raidinfo.split('Fear", nLfrKills: ', 1)
  911.         raidinfo = ri_b
  912.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  913.         tes[18] = str(ri_a)
  914.         raidinfo = ri_b
  915.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  916.         tes[19] = str(ri_a)
  917.         raidinfo = ri_b
  918.         ri_a, ri_b = raidinfo.split(' }', 1)
  919.         tes[20] = str(ri_a)
  920.         #throne of thunder
  921.         ri_a, ri_b = raidinfo.split('Breaker", nLfrKills: ', 1)
  922.         raidinfo = ri_b
  923.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  924.         tot[3] = str(ri_a)
  925.         raidinfo = ri_b
  926.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  927.         tot[4] = str(ri_a)
  928.         raidinfo = ri_b
  929.         ri_a, ri_b = raidinfo.split(' }', 1)
  930.         tot[5] = str(ri_a)
  931.         ri_a, ri_b = raidinfo.split('Horridon", nLfrKills: ', 1)
  932.         raidinfo = ri_b
  933.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  934.         tot[8] = str(ri_a)
  935.         raidinfo = ri_b
  936.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  937.         tot[9] = str(ri_a)
  938.         raidinfo = ri_b
  939.         ri_a, ri_b = raidinfo.split(' }', 1)
  940.         tot[10] = str(ri_a)
  941.         ri_a, ri_b = raidinfo.split('Elders", nLfrKills: ', 1)
  942.         raidinfo = ri_b
  943.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  944.         tot[13] = str(ri_a)
  945.         raidinfo = ri_b
  946.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  947.         tot[14] = str(ri_a)
  948.         raidinfo = ri_b
  949.         ri_a, ri_b = raidinfo.split(' }', 1)
  950.         tot[15] = str(ri_a)
  951.         ri_a, ri_b = raidinfo.split('Tortos", nLfrKills: ', 1)
  952.         raidinfo = ri_b
  953.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  954.         tot[18] = str(ri_a)
  955.         raidinfo = ri_b
  956.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  957.         tot[19] = str(ri_a)
  958.         raidinfo = ri_b
  959.         ri_a, ri_b = raidinfo.split(' }', 1)
  960.         tot[20] = str(ri_a)
  961.         ri_a, ri_b = raidinfo.split('Megaera", nLfrKills: ', 1)
  962.         raidinfo = ri_b
  963.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  964.         tot[23] = str(ri_a)
  965.         raidinfo = ri_b
  966.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  967.         tot[24] = str(ri_a)
  968.         raidinfo = ri_b
  969.         ri_a, ri_b = raidinfo.split(' }', 1)
  970.         tot[25] = str(ri_a)
  971.         ri_a, ri_b = raidinfo.split('Kun", nLfrKills: ', 1)
  972.         raidinfo = ri_b
  973.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  974.         tot[28] = str(ri_a)
  975.         raidinfo = ri_b
  976.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  977.         tot[29] = str(ri_a)
  978.         raidinfo = ri_b
  979.         ri_a, ri_b = raidinfo.split(' }', 1)
  980.         tot[30] = str(ri_a)
  981.         ri_a, ri_b = raidinfo.split('gotten", nLfrKills: ', 1)
  982.         raidinfo = ri_b
  983.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  984.         tot[33] = str(ri_a)
  985.         raidinfo = ri_b
  986.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  987.         tot[34] = str(ri_a)
  988.         raidinfo = ri_b
  989.         ri_a, ri_b = raidinfo.split(' }', 1)
  990.         tot[35] = str(ri_a)
  991.         ri_a, ri_b = raidinfo.split('rdius", nLfrKills: ', 1)
  992.         raidinfo = ri_b
  993.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  994.         tot[38] = str(ri_a)
  995.         raidinfo = ri_b
  996.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  997.         tot[39] = str(ri_a)
  998.         raidinfo = ri_b
  999.         ri_a, ri_b = raidinfo.split(' }', 1)
  1000.         tot[40] = str(ri_a)
  1001.         ri_a, ri_b = raidinfo.split('Animus", nLfrKills: ', 1)
  1002.         raidinfo = ri_b
  1003.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1004.         tot[43] = str(ri_a)
  1005.         raidinfo = ri_b
  1006.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1007.         tot[44] = str(ri_a)
  1008.         raidinfo = ri_b
  1009.         ri_a, ri_b = raidinfo.split(' }', 1)
  1010.         tot[45] = str(ri_a)
  1011.         ri_a, ri_b = raidinfo.split('Qon", nLfrKills: ', 1)
  1012.         raidinfo = ri_b
  1013.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1014.         tot[48] = str(ri_a)
  1015.         raidinfo = ri_b
  1016.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1017.         tot[49] = str(ri_a)
  1018.         raidinfo = ri_b
  1019.         ri_a, ri_b = raidinfo.split(' }', 1)
  1020.         tot[50] = str(ri_a)
  1021.         ri_a, ri_b = raidinfo.split('Consorts", nLfrKills: ', 1)
  1022.         raidinfo = ri_b
  1023.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1024.         tot[53] = str(ri_a)
  1025.         raidinfo = ri_b
  1026.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1027.         tot[54] = str(ri_a)
  1028.         raidinfo = ri_b
  1029.         ri_a, ri_b = raidinfo.split(' }', 1)
  1030.         tot[55] = str(ri_a)
  1031.         ri_a, ri_b = raidinfo.split('Shen", nLfrKills: ', 1)
  1032.         raidinfo = ri_b
  1033.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1034.         tot[58] = str(ri_a)
  1035.         raidinfo = ri_b
  1036.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1037.         tot[59] = str(ri_a)
  1038.         raidinfo = ri_b
  1039.         ri_a, ri_b = raidinfo.split(' }', 1)
  1040.         tot[60] = str(ri_a)
  1041.         ri_a, ri_b = raidinfo.split('den", nHeroicKills: ', 1)
  1042.         raidinfo = ri_b
  1043.         ri_a, ri_b = raidinfo.split(', optional: true }', 1)
  1044.         tot[65] = str(ri_a)
  1045.         #siege of orgrimmar
  1046.         ri_a, ri_b = raidinfo.split('Immerseus", nLfrKills: ', 1)
  1047.         raidinfo = ri_b
  1048.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1049.         soo[3] = str(ri_a)
  1050.         raidinfo = ri_b
  1051.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1052.         soo[4] = str(ri_a)
  1053.         raidinfo = ri_b
  1054.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1055.         soo[5] = str(ri_a)
  1056.         raidinfo = ri_b
  1057.         ri_a, ri_b = raidinfo.split(' }', 1)
  1058.         soo[6] = str(ri_a)
  1059.         ri_a, ri_b = raidinfo.split('Protectors", nLfrKills: ', 1)
  1060.         raidinfo = ri_b
  1061.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1062.         soo[8] = str(ri_a)
  1063.         raidinfo = ri_b
  1064.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1065.         soo[9] = str(ri_a)
  1066.         raidinfo = ri_b
  1067.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1068.         soo[10] = str(ri_a)
  1069.         raidinfo = ri_b
  1070.         ri_a, ri_b = raidinfo.split(' }', 1)
  1071.         soo[11] = str(ri_a)
  1072.         ri_a, ri_b = raidinfo.split('ushen", nLfrKills: ', 1)
  1073.         raidinfo = ri_b
  1074.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1075.         soo[13] = str(ri_a)
  1076.         raidinfo = ri_b
  1077.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1078.         soo[14] = str(ri_a)
  1079.         raidinfo = ri_b
  1080.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1081.         soo[15] = str(ri_a)
  1082.         raidinfo = ri_b
  1083.         ri_a, ri_b = raidinfo.split(' }', 1)
  1084.         soo[16] = str(ri_a)
  1085.         ri_a, ri_b = raidinfo.split('Pride", nLfrKills: ', 1)
  1086.         raidinfo = ri_b
  1087.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1088.         soo[18] = str(ri_a)
  1089.         raidinfo = ri_b
  1090.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1091.         soo[19] = str(ri_a)
  1092.         raidinfo = ri_b
  1093.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1094.         soo[20] = str(ri_a)
  1095.         raidinfo = ri_b
  1096.         ri_a, ri_b = raidinfo.split(' }', 1)
  1097.         soo[21] = str(ri_a)
  1098.         ri_a, ri_b = raidinfo.split('Galakras", nLfrKills: ', 1)
  1099.         raidinfo = ri_b
  1100.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1101.         soo[23] = str(ri_a)
  1102.         raidinfo = ri_b
  1103.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1104.         soo[24] = str(ri_a)
  1105.         raidinfo = ri_b
  1106.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1107.         soo[25] = str(ri_a)
  1108.         raidinfo = ri_b
  1109.         ri_a, ri_b = raidinfo.split(' }', 1)
  1110.         soo[26] = str(ri_a)
  1111.         ri_a, ri_b = raidinfo.split('Juggernaut", nLfrKills: ', 1)
  1112.         raidinfo = ri_b
  1113.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1114.         soo[28] = str(ri_a)
  1115.         raidinfo = ri_b
  1116.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1117.         soo[29] = str(ri_a)
  1118.         raidinfo = ri_b
  1119.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1120.         soo[30] = str(ri_a)
  1121.         raidinfo = ri_b
  1122.         ri_a, ri_b = raidinfo.split(' }', 1)
  1123.         soo[31] = str(ri_a)
  1124.         ri_a, ri_b = raidinfo.split('Shaman", nLfrKills: ', 1)
  1125.         raidinfo = ri_b
  1126.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1127.         soo[33] = str(ri_a)
  1128.         raidinfo = ri_b
  1129.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1130.         soo[34] = str(ri_a)
  1131.         raidinfo = ri_b
  1132.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1133.         soo[35] = str(ri_a)
  1134.         raidinfo = ri_b
  1135.         ri_a, ri_b = raidinfo.split(' }', 1)
  1136.         soo[36] = str(ri_a)
  1137.         ri_a, ri_b = raidinfo.split('Nazgrim", nLfrKills: ', 1)
  1138.         raidinfo = ri_b
  1139.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1140.         soo[38] = str(ri_a)
  1141.         raidinfo = ri_b
  1142.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1143.         soo[39] = str(ri_a)
  1144.         raidinfo = ri_b
  1145.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1146.         soo[40] = str(ri_a)
  1147.         raidinfo = ri_b
  1148.         ri_a, ri_b = raidinfo.split(' }', 1)
  1149.         soo[41] = str(ri_a)
  1150.         ri_a, ri_b = raidinfo.split('orok", nLfrKills: ', 1)
  1151.         raidinfo = ri_b
  1152.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1153.         soo[43] = str(ri_a)
  1154.         raidinfo = ri_b
  1155.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1156.         soo[44] = str(ri_a)
  1157.         raidinfo = ri_b
  1158.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1159.         soo[45] = str(ri_a)
  1160.         raidinfo = ri_b
  1161.         ri_a, ri_b = raidinfo.split(' }', 1)
  1162.         soo[46] = str(ri_a)
  1163.         ri_a, ri_b = raidinfo.split('Pandaria", nLfrKills: ', 1)
  1164.         raidinfo = ri_b
  1165.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1166.         soo[48] = str(ri_a)
  1167.         raidinfo = ri_b
  1168.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1169.         soo[49] = str(ri_a)
  1170.         raidinfo = ri_b
  1171.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1172.         soo[50] = str(ri_a)
  1173.         raidinfo = ri_b
  1174.         ri_a, ri_b = raidinfo.split(' }', 1)
  1175.         soo[51] = str(ri_a)
  1176.         ri_a, ri_b = raidinfo.split('thirsty", nLfrKills: ', 1)
  1177.         raidinfo = ri_b
  1178.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1179.         soo[53] = str(ri_a)
  1180.         raidinfo = ri_b
  1181.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1182.         soo[54] = str(ri_a)
  1183.         raidinfo = ri_b
  1184.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1185.         soo[55] = str(ri_a)
  1186.         raidinfo = ri_b
  1187.         ri_a, ri_b = raidinfo.split(' }', 1)
  1188.         soo[56] = str(ri_a)
  1189.         ri_a, ri_b = raidinfo.split('fuse", nLfrKills: ', 1)
  1190.         raidinfo = ri_b
  1191.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1192.         soo[58] = str(ri_a)
  1193.         raidinfo = ri_b
  1194.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1195.         soo[59] = str(ri_a)
  1196.         raidinfo = ri_b
  1197.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1198.         soo[60] = str(ri_a)
  1199.         raidinfo = ri_b
  1200.         ri_a, ri_b = raidinfo.split(' }', 1)
  1201.         soo[61] = str(ri_a)
  1202.         ri_a, ri_b = raidinfo.split('Klaxxi", nLfrKills: ', 1)
  1203.         raidinfo = ri_b
  1204.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1205.         soo[63] = str(ri_a)
  1206.         raidinfo = ri_b
  1207.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1208.         soo[64] = str(ri_a)
  1209.         raidinfo = ri_b
  1210.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1211.         soo[65] = str(ri_a)
  1212.         raidinfo = ri_b
  1213.         ri_a, ri_b = raidinfo.split(' }', 1)
  1214.         soo[66] = str(ri_a)
  1215.         ri_a, ri_b = raidinfo.split('scream", nLfrKills: ', 1)
  1216.         raidinfo = ri_b
  1217.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1218.         soo[68] = str(ri_a)
  1219.         raidinfo = ri_b
  1220.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1221.         soo[69] = str(ri_a)
  1222.         raidinfo = ri_b
  1223.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1224.         soo[70] = str(ri_a)
  1225.         raidinfo = ri_b
  1226.         ri_a, ri_b = raidinfo.split(' }', 1)
  1227.         soo[71] = str(ri_a)
  1228.         #highmaul
  1229.         ri_a, ri_b = raidinfo.split('fist", nLfrKills: ', 1)
  1230.         raidinfo = ri_b
  1231.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1232.         hm[3] = str(ri_a)
  1233.         raidinfo = ri_b
  1234.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1235.         hm[4] = str(ri_a)
  1236.         raidinfo = ri_b
  1237.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1238.         hm[5] = str(ri_a)
  1239.         raidinfo = ri_b
  1240.         ri_a, ri_b = raidinfo.split(' }', 1)
  1241.         hm[6] = str(ri_a)
  1242.         ri_a, ri_b = raidinfo.split('Butcher", nLfrKills: ', 1)
  1243.         raidinfo = ri_b
  1244.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1245.         hm[8] = str(ri_a)
  1246.         raidinfo = ri_b
  1247.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1248.         hm[9] = str(ri_a)
  1249.         raidinfo = ri_b
  1250.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1251.         hm[10] = str(ri_a)
  1252.         raidinfo = ri_b
  1253.         ri_a, ri_b = raidinfo.split(' }', 1)
  1254.         hm[11] = str(ri_a)
  1255.         ri_a, ri_b = raidinfo.split('spore", nLfrKills: ', 1)
  1256.         raidinfo = ri_b
  1257.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1258.         hm[13] = str(ri_a)
  1259.         raidinfo = ri_b
  1260.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1261.         hm[14] = str(ri_a)
  1262.         raidinfo = ri_b
  1263.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1264.         hm[15] = str(ri_a)
  1265.         raidinfo = ri_b
  1266.         ri_a, ri_b = raidinfo.split(' }', 1)
  1267.         hm[16] = str(ri_a)
  1268.         ri_a, ri_b = raidinfo.split('Tectus", nLfrKills: ', 1)
  1269.         raidinfo = ri_b
  1270.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1271.         hm[18] = str(ri_a)
  1272.         raidinfo = ri_b
  1273.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1274.         hm[19] = str(ri_a)
  1275.         raidinfo = ri_b
  1276.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1277.         hm[20] = str(ri_a)
  1278.         raidinfo = ri_b
  1279.         ri_a, ri_b = raidinfo.split(' }', 1)
  1280.         hm[21] = str(ri_a)
  1281.         ri_a, ri_b = raidinfo.split('Ogron", nLfrKills: ', 1)
  1282.         raidinfo = ri_b
  1283.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1284.         hm[23] = str(ri_a)
  1285.         raidinfo = ri_b
  1286.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1287.         hm[24] = str(ri_a)
  1288.         raidinfo = ri_b
  1289.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1290.         hm[25] = str(ri_a)
  1291.         raidinfo = ri_b
  1292.         ri_a, ri_b = raidinfo.split(' }', 1)
  1293.         hm[26] = str(ri_a)
  1294.         ri_a, ri_b = raidinfo.split('ragh", nLfrKills: ', 1)
  1295.         raidinfo = ri_b
  1296.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1297.         hm[28] = str(ri_a)
  1298.         raidinfo = ri_b
  1299.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1300.         hm[29] = str(ri_a)
  1301.         raidinfo = ri_b
  1302.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1303.         hm[30] = str(ri_a)
  1304.         raidinfo = ri_b
  1305.         ri_a, ri_b = raidinfo.split(' }', 1)
  1306.         hm[31] = str(ri_a)
  1307.         ri_a, ri_b = raidinfo.split('gok", nLfrKills: ', 1)
  1308.         raidinfo = ri_b
  1309.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1310.         hm[33] = str(ri_a)
  1311.         raidinfo = ri_b
  1312.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1313.         hm[34] = str(ri_a)
  1314.         raidinfo = ri_b
  1315.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1316.         hm[35] = str(ri_a)
  1317.         raidinfo = ri_b
  1318.         ri_a, ri_b = raidinfo.split(' }', 1)
  1319.         hm[36] = str(ri_a)
  1320.         #blackrock foundry
  1321.         ri_a, ri_b = raidinfo.split('gorger", nLfrKills: ', 1)
  1322.         raidinfo = ri_b
  1323.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1324.         brf[3] = str(ri_a)
  1325.         raidinfo = ri_b
  1326.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1327.         brf[4] = str(ri_a)
  1328.         raidinfo = ri_b
  1329.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1330.         brf[5] = str(ri_a)
  1331.         raidinfo = ri_b
  1332.         ri_a, ri_b = raidinfo.split(' }', 1)
  1333.         brf[6] = str(ri_a)
  1334.         ri_a, ri_b = raidinfo.split('Gruul", nLfrKills: ', 1)
  1335.         raidinfo = ri_b
  1336.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1337.         brf[8] = str(ri_a)
  1338.         raidinfo = ri_b
  1339.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1340.         brf[9] = str(ri_a)
  1341.         raidinfo = ri_b
  1342.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1343.         brf[10] = str(ri_a)
  1344.         raidinfo = ri_b
  1345.         ri_a, ri_b = raidinfo.split(' }', 1)
  1346.         brf[11] = str(ri_a)
  1347.         ri_a, ri_b = raidinfo.split('Furnace", nLfrKills: ', 1)
  1348.         raidinfo = ri_b
  1349.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1350.         brf[13] = str(ri_a)
  1351.         raidinfo = ri_b
  1352.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1353.         brf[14] = str(ri_a)
  1354.         raidinfo = ri_b
  1355.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1356.         brf[15] = str(ri_a)
  1357.         raidinfo = ri_b
  1358.         ri_a, ri_b = raidinfo.split(' }', 1)
  1359.         brf[16] = str(ri_a)
  1360.         ri_a, ri_b = raidinfo.split('Franzok", nLfrKills: ', 1)
  1361.         raidinfo = ri_b
  1362.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1363.         brf[18] = str(ri_a)
  1364.         raidinfo = ri_b
  1365.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1366.         brf[19] = str(ri_a)
  1367.         raidinfo = ri_b
  1368.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1369.         brf[20] = str(ri_a)
  1370.         raidinfo = ri_b
  1371.         ri_a, ri_b = raidinfo.split(' }', 1)
  1372.         brf[21] = str(ri_a)
  1373.         ri_a, ri_b = raidinfo.split('graz", nLfrKills: ', 1)
  1374.         raidinfo = ri_b
  1375.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1376.         brf[23] = str(ri_a)
  1377.         raidinfo = ri_b
  1378.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1379.         brf[24] = str(ri_a)
  1380.         raidinfo = ri_b
  1381.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1382.         brf[25] = str(ri_a)
  1383.         raidinfo = ri_b
  1384.         ri_a, ri_b = raidinfo.split(' }', 1)
  1385.         brf[26] = str(ri_a)
  1386.         ri_a, ri_b = raidinfo.split('Kromog", nLfrKills: ', 1)
  1387.         raidinfo = ri_b
  1388.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1389.         brf[28] = str(ri_a)
  1390.         raidinfo = ri_b
  1391.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1392.         brf[29] = str(ri_a)
  1393.         raidinfo = ri_b
  1394.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1395.         brf[30] = str(ri_a)
  1396.         raidinfo = ri_b
  1397.         ri_a, ri_b = raidinfo.split(' }', 1)
  1398.         brf[31] = str(ri_a)
  1399.         ri_a, ri_b = raidinfo.split('Darmac", nLfrKills: ', 1)
  1400.         raidinfo = ri_b
  1401.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1402.         brf[33] = str(ri_a)
  1403.         raidinfo = ri_b
  1404.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1405.         brf[34] = str(ri_a)
  1406.         raidinfo = ri_b
  1407.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1408.         brf[35] = str(ri_a)
  1409.         raidinfo = ri_b
  1410.         ri_a, ri_b = raidinfo.split(' }', 1)
  1411.         brf[36] = str(ri_a)
  1412.         ri_a, ri_b = raidinfo.split('Thogar", nLfrKills: ', 1)
  1413.         raidinfo = ri_b
  1414.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1415.         brf[38] = str(ri_a)
  1416.         raidinfo = ri_b
  1417.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1418.         brf[39] = str(ri_a)
  1419.         raidinfo = ri_b
  1420.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1421.         brf[40] = str(ri_a)
  1422.         raidinfo = ri_b
  1423.         ri_a, ri_b = raidinfo.split(' }', 1)
  1424.         brf[41] = str(ri_a)
  1425.         ri_a, ri_b = raidinfo.split('Maidens", nLfrKills: ', 1)
  1426.         raidinfo = ri_b
  1427.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1428.         brf[43] = str(ri_a)
  1429.         raidinfo = ri_b
  1430.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1431.         brf[44] = str(ri_a)
  1432.         raidinfo = ri_b
  1433.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1434.         brf[45] = str(ri_a)
  1435.         raidinfo = ri_b
  1436.         ri_a, ri_b = raidinfo.split(' }', 1)
  1437.         brf[46] = str(ri_a)
  1438.         ri_a, ri_b = raidinfo.split('Blackhand", nLfrKills: ', 1)
  1439.         raidinfo = ri_b
  1440.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1441.         brf[48] = str(ri_a)
  1442.         raidinfo = ri_b
  1443.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1444.         brf[49] = str(ri_a)
  1445.         raidinfo = ri_b
  1446.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1447.         brf[50] = str(ri_a)
  1448.         raidinfo = ri_b
  1449.         ri_a, ri_b = raidinfo.split(' }', 1)
  1450.         brf[51] = str(ri_a)
  1451.         #hellfire citadel
  1452.         ri_a, ri_b = raidinfo.split('Assault", nLfrKills: ', 1)
  1453.         raidinfo = ri_b
  1454.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1455.         hfc[3] = str(ri_a)
  1456.         raidinfo = ri_b
  1457.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1458.         hfc[4] = str(ri_a)
  1459.         raidinfo = ri_b
  1460.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1461.         hfc[5] = str(ri_a)
  1462.         raidinfo = ri_b
  1463.         ri_a, ri_b = raidinfo.split(' }', 1)
  1464.         hfc[6] = str(ri_a)
  1465.         ri_a, ri_b = raidinfo.split('Reaver", nLfrKills: ', 1)
  1466.         raidinfo = ri_b
  1467.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1468.         hfc[8] = str(ri_a)
  1469.         raidinfo = ri_b
  1470.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1471.         hfc[9] = str(ri_a)
  1472.         raidinfo = ri_b
  1473.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1474.         hfc[10] = str(ri_a)
  1475.         raidinfo = ri_b
  1476.         ri_a, ri_b = raidinfo.split(' }', 1)
  1477.         hfc[11] = str(ri_a)
  1478.         ri_a, ri_b = raidinfo.split('Kormrok", nLfrKills: ', 1)
  1479.         raidinfo = ri_b
  1480.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1481.         hfc[13] = str(ri_a)
  1482.         raidinfo = ri_b
  1483.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1484.         hfc[14] = str(ri_a)
  1485.         raidinfo = ri_b
  1486.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1487.         hfc[15] = str(ri_a)
  1488.         raidinfo = ri_b
  1489.         ri_a, ri_b = raidinfo.split(' }', 1)
  1490.         hfc[16] = str(ri_a)
  1491.         ri_a, ri_b = raidinfo.split('Council", nLfrKills: ', 1)
  1492.         raidinfo = ri_b
  1493.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1494.         hfc[18] = str(ri_a)
  1495.         raidinfo = ri_b
  1496.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1497.         hfc[19] = str(ri_a)
  1498.         raidinfo = ri_b
  1499.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1500.         hfc[20] = str(ri_a)
  1501.         raidinfo = ri_b
  1502.         ri_a, ri_b = raidinfo.split(' }', 1)
  1503.         hfc[21] = str(ri_a)
  1504.         ri_a, ri_b = raidinfo.split('Deadeye", nLfrKills: ', 1)
  1505.         raidinfo = ri_b
  1506.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1507.         hfc[23] = str(ri_a)
  1508.         raidinfo = ri_b
  1509.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1510.         hfc[24] = str(ri_a)
  1511.         raidinfo = ri_b
  1512.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1513.         hfc[25] = str(ri_a)
  1514.         raidinfo = ri_b
  1515.         ri_a, ri_b = raidinfo.split(' }', 1)
  1516.         hfc[26] = str(ri_a)
  1517.         ri_a, ri_b = raidinfo.split('fiend", nLfrKills: ', 1)
  1518.         raidinfo = ri_b
  1519.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1520.         hfc[28] = str(ri_a)
  1521.         raidinfo = ri_b
  1522.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1523.         hfc[29] = str(ri_a)
  1524.         raidinfo = ri_b
  1525.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1526.         hfc[30] = str(ri_a)
  1527.         raidinfo = ri_b
  1528.         ri_a, ri_b = raidinfo.split(' }', 1)
  1529.         hfc[31] = str(ri_a)
  1530.         ri_a, ri_b = raidinfo.split('Iskar", nLfrKills: ', 1)
  1531.         raidinfo = ri_b
  1532.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1533.         hfc[33] = str(ri_a)
  1534.         raidinfo = ri_b
  1535.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1536.         hfc[34] = str(ri_a)
  1537.         raidinfo = ri_b
  1538.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1539.         hfc[35] = str(ri_a)
  1540.         raidinfo = ri_b
  1541.         ri_a, ri_b = raidinfo.split(' }', 1)
  1542.         hfc[36] = str(ri_a)
  1543.         ri_a, ri_b = raidinfo.split('Eternal", nLfrKills: ', 1)
  1544.         raidinfo = ri_b
  1545.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1546.         hfc[38] = str(ri_a)
  1547.         raidinfo = ri_b
  1548.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1549.         hfc[39] = str(ri_a)
  1550.         raidinfo = ri_b
  1551.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1552.         hfc[40] = str(ri_a)
  1553.         raidinfo = ri_b
  1554.         ri_a, ri_b = raidinfo.split(' }', 1)
  1555.         hfc[41] = str(ri_a)
  1556.         ri_a, ri_b = raidinfo.split('hari", nLfrKills: ', 1)
  1557.         raidinfo = ri_b
  1558.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1559.         hfc[43] = str(ri_a)
  1560.         raidinfo = ri_b
  1561.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1562.         hfc[44] = str(ri_a)
  1563.         raidinfo = ri_b
  1564.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1565.         hfc[45] = str(ri_a)
  1566.         raidinfo = ri_b
  1567.         ri_a, ri_b = raidinfo.split(' }', 1)
  1568.         hfc[46] = str(ri_a)
  1569.         ri_a, ri_b = raidinfo.split('Zakuun", nLfrKills: ', 1)
  1570.         raidinfo = ri_b
  1571.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1572.         hfc[48] = str(ri_a)
  1573.         raidinfo = ri_b
  1574.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1575.         hfc[49] = str(ri_a)
  1576.         raidinfo = ri_b
  1577.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1578.         hfc[50] = str(ri_a)
  1579.         raidinfo = ri_b
  1580.         ri_a, ri_b = raidinfo.split(' }', 1)
  1581.         hfc[51] = str(ri_a)
  1582.         ri_a, ri_b = raidinfo.split('horac", nLfrKills: ', 1)
  1583.         raidinfo = ri_b
  1584.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1585.         hfc[53] = str(ri_a)
  1586.         raidinfo = ri_b
  1587.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1588.         hfc[54] = str(ri_a)
  1589.         raidinfo = ri_b
  1590.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1591.         hfc[55] = str(ri_a)
  1592.         raidinfo = ri_b
  1593.         ri_a, ri_b = raidinfo.split(' }', 1)
  1594.         hfc[56] = str(ri_a)
  1595.         ri_a, ri_b = raidinfo.split('roth", nLfrKills: ', 1)
  1596.         raidinfo = ri_b
  1597.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1598.         hfc[58] = str(ri_a)
  1599.         raidinfo = ri_b
  1600.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1601.         hfc[59] = str(ri_a)
  1602.         raidinfo = ri_b
  1603.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1604.         hfc[60] = str(ri_a)
  1605.         raidinfo = ri_b
  1606.         ri_a, ri_b = raidinfo.split(' }', 1)
  1607.         hfc[61] = str(ri_a)
  1608.         ri_a, ri_b = raidinfo.split('Archimonde", nLfrKills: ', 1)
  1609.         raidinfo = ri_b
  1610.         ri_a, ri_b = raidinfo.split(', nKills: ', 1)
  1611.         hfc[63] = str(ri_a)
  1612.         raidinfo = ri_b
  1613.         ri_a, ri_b = raidinfo.split(', nHeroicKills: ', 1)
  1614.         hfc[64] = str(ri_a)
  1615.         raidinfo = ri_b
  1616.         ri_a, ri_b = raidinfo.split(', nMythicKills: ', 1)
  1617.         hfc[65] = str(ri_a)
  1618.         raidinfo = ri_b
  1619.         ri_a, ri_b = raidinfo.split(' }', 1)
  1620.         hfc[66] = str(ri_a)
  1621.         print(hfc)
  1622.        
  1623.         percent+=15
  1624.         self.progressBar.setProperty("value", percent)        
  1625.         self.progresstext.setText("Raid Scraping Complete ...")
  1626.                  
  1627. class MainWindow(QtWidgets.QMainWindow, Ui_mainwindow):
  1628.     def __init__(self, parent=None):
  1629.         QtWidgets.QMainWindow.__init__(self, parent)
  1630.         self.setupUi(self)
  1631.        
  1632.         #make sure you change these to the scraped images after scraping is added
  1633.         bg_basePixmap = QtGui.QPixmap('resources/bg/bg_base.jpg')
  1634.         bg_baseScaledPixmap = bg_basePixmap.scaled(self.bglabel.size())
  1635.         self.bglabel.setPixmap(bg_baseScaledPixmap)
  1636.         #make sure you change these to the scraped images after scraping is added
  1637.         bg_topPixmap = QtGui.QPixmap('resources/bg/bg_top.jpg')
  1638.         bg_topScaledPixmap = bg_topPixmap.scaled(self.fglabel.size())
  1639.         self.fglabel.setPixmap(bg_topScaledPixmap)
  1640.         bg_fillerPixmap = QtGui.QPixmap('resources/bg/bg_filler.png')
  1641.         bg_fillerScaledPixmap = bg_fillerPixmap.scaled(self.bg_fillerlabel.size())
  1642.         self.bg_fillerlabel.setPixmap(bg_fillerScaledPixmap)
  1643.         #ITEMS START HERE **** TEMP IMAGES ARE IN PLACE****
  1644.         headlabelPixmap = QtGui.QPixmap('item_icon.jpg')
  1645.         headlabelScaledPixmap = headlabelPixmap.scaled(self.headlabel.size())
  1646.         self.headlabel.setPixmap(headlabelScaledPixmap)
  1647.         necklabelPixmap = QtGui.QPixmap('item_icon.jpg')
  1648.         necklabelScaledPixmap = necklabelPixmap.scaled(self.necklabel.size())
  1649.         self.necklabel.setPixmap(necklabelScaledPixmap)
  1650.         shoulderlabelPixmap = QtGui.QPixmap('item_icon.jpg')
  1651.         shoulderlabelScaledPixmap = shoulderlabelPixmap.scaled(self.shoulderlabel.size())
  1652.         self.shoulderlabel.setPixmap(shoulderlabelScaledPixmap)
  1653.         backlabelPixmap = QtGui.QPixmap('item_icon.jpg')
  1654.         backlabelScaledPixmap = backlabelPixmap.scaled(self.backlabel.size())
  1655.         self.backlabel.setPixmap(backlabelScaledPixmap)
  1656.         chestlabelPixmap = QtGui.QPixmap('item_icon.jpg')
  1657.         chestlabelScaledPixmap = chestlabelPixmap.scaled(self.chestlabel.size())
  1658.         self.chestlabel.setPixmap(chestlabelScaledPixmap)
  1659.         shirtlabelPixmap = QtGui.QPixmap('item_icon.jpg')
  1660.         shirtlabelScaledPixmap = shirtlabelPixmap.scaled(self.shirtlabel.size())
  1661.         self.shirtlabel.setPixmap(shirtlabelScaledPixmap)
  1662.         tabardlabelPixmap = QtGui.QPixmap('item_icon.jpg')
  1663.         tabardlabelScaledPixmap = tabardlabelPixmap.scaled(self.tabardlabel.size())
  1664.         self.tabardlabel.setPixmap(tabardlabelScaledPixmap)
  1665.         wristlabelPixmap = QtGui.QPixmap('item_icon.jpg')
  1666.         wristlabelScaledPixmap = wristlabelPixmap.scaled(self.wristlabel.size())
  1667.         self.wristlabel.setPixmap(wristlabelScaledPixmap)
  1668.         handlabelPixmap = QtGui.QPixmap('item_icon.jpg')
  1669.         handlabelScaledPixmap = handlabelPixmap.scaled(self.handlabel.size())
  1670.         self.handlabel.setPixmap(handlabelScaledPixmap)
  1671.         waistlabelPixmap = QtGui.QPixmap('item_icon.jpg')
  1672.         waistlabelScaledPixmap = waistlabelPixmap.scaled(self.waistlabel.size())
  1673.         self.waistlabel.setPixmap(waistlabelScaledPixmap)
  1674.         leglabelPixmap = QtGui.QPixmap('item_icon.jpg')
  1675.         leglabelScaledPixmap = leglabelPixmap.scaled(self.leglabel.size())
  1676.         self.leglabel.setPixmap(leglabelScaledPixmap)
  1677.         feetlabelPixmap = QtGui.QPixmap('item_icon.jpg')
  1678.         feetlabelScaledPixmap = feetlabelPixmap.scaled(self.feetlabel.size())
  1679.         self.feetlabel.setPixmap(feetlabelScaledPixmap)
  1680.         ringalabelPixmap = QtGui.QPixmap('item_icon.jpg')
  1681.         ringalabelScaledPixmap = ringalabelPixmap.scaled(self.ringalabel.size())
  1682.         self.ringalabel.setPixmap(ringalabelScaledPixmap)
  1683.         ringblabelPixmap = QtGui.QPixmap('item_icon.jpg')
  1684.         ringblabelScaledPixmap = ringblabelPixmap.scaled(self.ringblabel.size())
  1685.         self.ringblabel.setPixmap(ringblabelScaledPixmap)
  1686.         trinketalabelPixmap = QtGui.QPixmap('item_icon.jpg')
  1687.         trinketalabelScaledPixmap = trinketalabelPixmap.scaled(self.trinketalabel.size())
  1688.         self.trinketalabel.setPixmap(trinketalabelScaledPixmap)
  1689.         trinketblabelPixmap = QtGui.QPixmap('item_icon.jpg')
  1690.         trinketblabelScaledPixmap = trinketblabelPixmap.scaled(self.trinketblabel.size())
  1691.         self.trinketblabel.setPixmap(trinketblabelScaledPixmap)
  1692.         mainhandlabelPixmap = QtGui.QPixmap('item_icon.jpg')
  1693.         mainhandlabelScaledPixmap = mainhandlabelPixmap.scaled(self.mainhandlabel.size())
  1694.         self.mainhandlabel.setPixmap(mainhandlabelScaledPixmap)
  1695.         offhandlabelPixmap = QtGui.QPixmap('item_icon.jpg')
  1696.         offhandlabelScaledPixmap = offhandlabelPixmap.scaled(self.offhandlabel.size())
  1697.         self.offhandlabel.setPixmap(offhandlabelScaledPixmap)
  1698.         #item quality overlays
  1699.         poor_overlaylabelPixmap = QtGui.QPixmap('poor_overlay.png')
  1700.         poor_overlaylabelScaledPixmap = poor_overlaylabelPixmap.scaled(self.poor_overlaylabel.size())
  1701.         self.poor_overlaylabel.setPixmap(poor_overlaylabelScaledPixmap)
  1702.         uncommon_overlaylabelPixmap = QtGui.QPixmap('uncommon_overlay.png')
  1703.         uncommon_overlaylabelScaledPixmap = uncommon_overlaylabelPixmap.scaled(self.uncommon_overlaylabel.size())
  1704.         self.uncommon_overlaylabel.setPixmap(uncommon_overlaylabelScaledPixmap)
  1705.         common_overlaylabelPixmap = QtGui.QPixmap('common_overlay.png')
  1706.         common_overlaylabelScaledPixmap = common_overlaylabelPixmap.scaled(self.common_overlaylabel.size())
  1707.         self.common_overlaylabel.setPixmap(common_overlaylabelScaledPixmap)
  1708.         rare_overlaylabelPixmap = QtGui.QPixmap('rare_overlay.png')
  1709.         rare_overlaylabelScaledPixmap = rare_overlaylabelPixmap.scaled(self.rare_overlaylabel.size())
  1710.         self.rare_overlaylabel.setPixmap(rare_overlaylabelScaledPixmap)
  1711.         epic_overlaylabelPixmap = QtGui.QPixmap('epic_overlay.png')
  1712.         epic_overlaylabelScaledPixmap = epic_overlaylabelPixmap.scaled(self.epic_overlaylabel.size())
  1713.         self.epic_overlaylabel.setPixmap(epic_overlaylabelScaledPixmap)
  1714.         legendary_overlaylabelPixmap = QtGui.QPixmap('legendary_overlay.png')
  1715.         legendary_overlaylabelScaledPixmap = legendary_overlaylabelPixmap.scaled(self.legendary_overlaylabel.size())
  1716.         self.legendary_overlaylabel.setPixmap(legendary_overlaylabelScaledPixmap)
  1717.        
  1718. #os.system("mode con lines=50") #DEBUGGING. resizes console height for debugging. REMOVE THIS BEFORE RELEASE
  1719.  
  1720. if __name__ == '__main__':
  1721.     app = QtWidgets.QApplication(sys.argv)
  1722.     MainApp = LoginWindow()
  1723.     MainApp.show()
  1724.     sys.exit(app.exec_())
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement