Das Programm:
Zum Leerzeich ermitteln, damit es ordentlich aussieht:Code: Alles auswählen
from urllib.request import urlopen #importieren from urllib.parse import urlparse import time import sys import random def speziell(): print("\n") for k in range(101): time.sleep(random.uniform(0.001, 0.003)) sys.stdout.write("\r%d%%" % k + " geladen") sys.stdout.flush() def frage(): frage = str(input("Deine Ip oder eine andere? [M/A] und Q zum verlassen oder h für Hilfe!: ")) if frage == "M" or frage == "m": return True if frage == "A" or frage == "a": return False if frage == "Q" or frage == "q": return "Ciao" if frage == "h" or frage == "H": return "Help" if frage != "A" or frage != "a" or frage != "M" or frage !="m" or frage != "Q" or frage != "q" or frage != "h" or frage != "H": return "Fehler" def main(): global l l = [] data = str(check.read()) if data.find("fail") != -1: print("IP ADRESSE: ", eingabe) print("Verbindung: fehlgeschlagen") quit() a = (data.count(",")) data = data[2:len(data)] n = data.find(",") l.insert(i, data[:n]) data = data[n+1:len(data)] l.insert(i+1, data[:(len(data)-1)]) l[0] = "erfolgreich" def liste(): #fkt fuer Liste l1 = ["Verbindung: ", "Land: ", "Landescode: ", "Bundesland-Abk.:", "Bundesland: ", "Stadt: ", "PLZ: ", "Breitengrad: ", "Laengengrad: ", "Zeitzone: ", "ISP: ", "Organisation ", "AS Nummer: ", "IP ADRESSE: "] #Tabelle print("\n") print(l1[13], l[13]) for j in range(0, 13): print(l1[j], l[j]) print("\n") def hilfe(): print("\n ================ HILFSEITE ================") print("\nMit diesem Programm kannst du Geodaten von IP's bestimmen.\n[M/m] = Damit bestimmst du deine eigene IP.\n[A/a] = Hiermit kannst du eine andere IP bestimmen oder die Ip von Websiten") print(" Dazu gibst du die Seite im folgenden Format ein: 'xyz.tld'!\n") print("\nSollte 'Verbindung: fehlgeschlagen' erscheinen, so gibt es deine IP nicht oder dem Programm ist es nicht möglich die Daten auszulesen.") print("\n\nDie Daten werden von der Api der Seite http://ip-api.com ausgelesen.") print("\n\nMade by addi\n\n") meine = frage() if meine == "Help": hilfe() if meine == True: speziell() eingabe = 0 check = urlopen("http://ip-api.com/csv?lang=de") main() liste() if meine == False: s = "" eingabe = str(input("Deine gesuchte Ip Adresse?: ")) check = "http://ip-api.com/csv/" lang = "?lang=de" check = s.join([check, eingabe, lang]) check = urlopen(check) main() liste() if meine == "Fehler": print("Bitte waehle zwichen den beiden optionen")
Die Funktion "speziell" ist eine kleine Spielerei, wollte das ausprobieren.Code: Alles auswählen
l1 = ["Verbindung:", "Land:", "Landescode:", "Bundesland-Abk.:", "Bundesland:", "Stadt:", "PLZ:", "Breitengrad:", "Laengengrad:", "Zeitzone:", "ISP:", "Organisation", "AS Nummer:", "IP ADRESSE:"] l = len(l1) l2 = [] while l >= 1: for i in range(len(l1)-1): if len(l1[i]) > len(l1[i+1]): zwichen = l1[i] l1[i] = l1[i+1] l1[i+1] = zwichen l = l - 1 print("Leerzeichen") s="" for i in range(len(l1)): a = len(l1[13]) - len(l1[i]) b = a * " " l2.insert(i, s.join([l1[i], b])) print(l2)
Was nicht gut ist:
- keine Kommentare
- Variablenbezeichnung ist katastrophal (werde ich bei Gelegenheit nach bessern)
Was noch kommt:
-ein kleiner Log als Txt
-IP Check vor dem senden
-check, ob Website online ist
(- GUI)
Jetzt probiere ich mich etwas an den Web Frameworks