summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app.py7
-rw-r--r--whois.py4
2 files changed, 8 insertions, 3 deletions
diff --git a/app.py b/app.py
index 85bfd62..de3e70a 100644
--- a/app.py
+++ b/app.py
@@ -1,5 +1,6 @@
from flask import Flask, request
from os import environ
+from whois import whois
app = Flask(__name__)
@@ -8,6 +9,9 @@ env = 'PROD' if 'PROD' in environ else 'DEV'
TEMPLATE = '''
/----------------------------------------\\
| {ip:39}|
+| {route:39}|
+| {origin:39}|
+| {descr:39}|
| |
| Created by Yuval Adam |
| https://github.com/yuvadm/ipcli.app |
@@ -28,7 +32,8 @@ def get_ip(request):
@app.route('/')
def index():
ip = get_ip(request)
- return TEMPLATE.format(ip=ip)
+ w = whois(ip)
+ return TEMPLATE.format(ip=ip, route=w['route'], origin=w['origin'], descr=w['descr'])
@app.route('/p')
def plain():
diff --git a/whois.py b/whois.py
index 57993f4..2681db0 100644
--- a/whois.py
+++ b/whois.py
@@ -3,11 +3,11 @@ from subprocess import run
def extract_field(field, response):
for line in response:
if line.startswith(field):
- return line.split(' ')[-1]
+ return line.split(' ')[-1].strip()
def whois(ip):
cp = run(['whois', ip], capture_output=True)
lines = cp.stdout.decode().split('\n')
- fields = ['route', 'origin']
+ fields = ['route', 'origin', 'descr']
res = {f: extract_field(f, lines) for f in fields}
return res