summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitrii Morozov <snoopdesigns@gmail.com>2024-03-27 17:58:41 +0100
committerDmitrii Morozov <snoopdesigns@gmail.com>2024-03-27 17:58:41 +0100
commitb0452bcd13650efc837962473b32a40bc295d9f6 (patch)
tree5cfec9b9c70f7fb511caaa136d1229965664a119
parent50441816e05a26383bf67d107cf588ce3e618774 (diff)
Removed fortnite status scriptHEADmaster
-rw-r--r--scripts/fortnite-status.py72
1 files changed, 0 insertions, 72 deletions
diff --git a/scripts/fortnite-status.py b/scripts/fortnite-status.py
deleted file mode 100644
index 3c0e33b..0000000
--- a/scripts/fortnite-status.py
+++ /dev/null
@@ -1,72 +0,0 @@
-# Simple utility class which provides an access to Fortnite service status report.
-# Usage: ForniteStatus().getStatus()
-
-import requests as req
-import html5lib
-from bs4 import BeautifulSoup
-
-class FortniteStatus:
- """
- Instantiate a FortniteStatus class.
- """
-
- class Status:
- serviceStatuses = []
-
- def prettify(self):
- return 'Fortnite services status:\n' + '\n'.join([serviceStatus.prettify() for serviceStatus in self.serviceStatuses])
-
- class ServiceStatus:
- serviceName = ''
- status = False
-
- def __init__(self, serviceName, status):
- self.serviceName = serviceName
- self.status = status
-
- def prettify(self):
- return f'{self.serviceName}, {self.status}'
-
- def __findFortniteStatusHtmlComponent(self, html):
- for component in html.findAll('div', {'class': 'component-container'}):
- innerContainers = component.findAll('div', {'class': 'component-inner-container'})
- for innerContainer in innerContainers:
- for names in innerContainer.findAll('span', {'class': 'name'}):
- for name in names.findAll('span'):
- if 'class' not in name.attrs and 'Fortnite' in name.text:
- return component
-
- def __parseFortniteStatus(self, html):
- component = self.__findFortniteStatusHtmlComponent(html)
- status = self.Status()
- childContainer = component.find('div', {'class': 'child-components-container'})
- for innerContainer in childContainer.findAll('div', {'class': 'component-inner-container'}):
- name = innerContainer.find('span', {'class': 'name'}).text.strip()
- statusString = innerContainer.find('span', {'class': 'component-status'}).text.strip()
- if statusString == 'Operational':
- statusCode = True
- else:
- statusCode = False
- status.serviceStatuses.append(self.ServiceStatus(name, statusCode))
-
- return status
-
- def getStatus(self):
- webContent = req.get("https://status.epicgames.com/")
- parsedHtml = BeautifulSoup(webContent.text, 'html5lib')
-
- return self.__parseFortniteStatus(parsedHtml)
-
-
-
- def printStatus(self):
- """
- Prints a current Fortnite services status in stdout.
- Example:
-
- """
- print(self.generateFortniteStatusReport())
-
-# Example call
-fortniteStatus = FortniteStatus()
-print(fortniteStatus.getStatus().prettify()) \ No newline at end of file