Olá Humanos, estou em Cuiaba, esperando meu avião para SP, sim !! vou para Campus Partty !!!!
Estou apanhando com uma codigo que fiquei devendo para um amigo aqui segue a primeira parte onde uso flask (MicroFrameWork web) para me mostrar informações sobre rede IP,MASK, e ping,
pensei que seria um pouco simples porem retornei a estudar para analizar como funcionaria flask com bibliotecas conhecidas para trabalhar com redes, EX: pyping, ok que chega de rodeios segue o codigo de como essa operação foi terminada em um aeroporto super quente ¬__¬
from flask import Flask,render_template # importamos de dentro da biblioteca os metodos Flask e render_template
import networktools # 2 Minha Biblioteca que vou disponibilizar quando ela tiver com um codigo fofinho é legivel kkkk
import pyping # 3 Essa bibiblioteca so trampa com ping, no python quando for executar o codigo redo um sudo na frente do script, para dar permição de ping ue
app = Flask(__name__)
@app.route("/")
def index():
me = networktools.network_tools("wlan0").interface() # 4 rodo a minha lib para falar que quero usar a placa wlan0 e que quero que me de as interfaces ou seje informações em lista
ip = me[1] # aqui ela me da meu ip
r = pyping.ping(ip) # 5 aqui rodo um ping em cima dela
if r.max_rtt and r.min_rtt and r.avg_rtt: #6 Com o ping realizado uso as informações disponiveis para validar se esta vivo ou não, se tdos os valores derem 00000, fala que ta offiline, caso contrario esta online
status = "Online"
else:
status = "Offline"
msg = {
"title":"Monstrar Informations of Rede",
"ip":me[1],
"mask":me[2],
"target":ip,
"status":status
} # 7 salvo as informações em um dicionario simples titulando em strings e referenciando com variaveis ja obtidas, do pyping e do networktools
return render_template("index.html",**msg) # 8 mando rodar o template index, com arguimentos dentro de msg
if __name__ == "__main__":
app.run(host="0.0.0.0",port=80,debug=True) # 9 sim habilito o debug para ver o que da errado ¬_¬
Estou apanhando com uma codigo que fiquei devendo para um amigo aqui segue a primeira parte onde uso flask (MicroFrameWork web) para me mostrar informações sobre rede IP,MASK, e ping,
pensei que seria um pouco simples porem retornei a estudar para analizar como funcionaria flask com bibliotecas conhecidas para trabalhar com redes, EX: pyping, ok que chega de rodeios segue o codigo de como essa operação foi terminada em um aeroporto super quente ¬__¬
from flask import Flask,render_template # importamos de dentro da biblioteca os metodos Flask e render_template
import networktools # 2 Minha Biblioteca que vou disponibilizar quando ela tiver com um codigo fofinho é legivel kkkk
import pyping # 3 Essa bibiblioteca so trampa com ping, no python quando for executar o codigo redo um sudo na frente do script, para dar permição de ping ue
app = Flask(__name__)
@app.route("/")
def index():
me = networktools.network_tools("wlan0").interface() # 4 rodo a minha lib para falar que quero usar a placa wlan0 e que quero que me de as interfaces ou seje informações em lista
ip = me[1] # aqui ela me da meu ip
r = pyping.ping(ip) # 5 aqui rodo um ping em cima dela
if r.max_rtt and r.min_rtt and r.avg_rtt: #6 Com o ping realizado uso as informações disponiveis para validar se esta vivo ou não, se tdos os valores derem 00000, fala que ta offiline, caso contrario esta online
status = "Online"
else:
status = "Offline"
msg = {
"title":"Monstrar Informations of Rede",
"ip":me[1],
"mask":me[2],
"target":ip,
"status":status
} # 7 salvo as informações em um dicionario simples titulando em strings e referenciando com variaveis ja obtidas, do pyping e do networktools
return render_template("index.html",**msg) # 8 mando rodar o template index, com arguimentos dentro de msg
if __name__ == "__main__":
app.run(host="0.0.0.0",port=80,debug=True) # 9 sim habilito o debug para ver o que da errado ¬_¬
Ok, neh, agora vamos entender como esse codigo funciona, primeiramente devo informar que a lib
networktools é uma lib minha que vou disponibilizar logo mais, com mais detalhes sobre ela, não disponibilizo ela por que foi escrita nas cochas e ta feia ¬_¬, quando tiver fofinha eu publico aqui com um post porem, o que devemos usar dela nada mais e do que informação que pode ser acessada por qualquer outra lib que trabalhe com redes em low level para indentificar placa e interfaces.
Então não termina por aqui por que temos ainda o codigo html que vai rodar em cima da função render_template, segue o codigo abaixo
<html>
<title>Mostrar IP</title>
<h1>{{ title }} </h1>
<br>IP Local: {{ ip }}</br>
<br>MASK: {{ mask }} </br>
<br>Target: {{ target }}<br>
<br>Status Target: {{ status }}</br>
</html>
Quando referenciamos o no codigo python sobre o dicionario
msg = {
"title":"Eu sou um titutlo"}
Usamos essa referencia no html para marcar que estamos referenciamos ele a uma informação que deve mostrar e o mesmo para referencia ip,mask,target,status.
Com isso obtemos as informações basicas de rede em uma pagina web ^__^.
PS: a cadeias de arquivos deve ficar no modelo onde você deve ter uma pasta chamada templates e dentro desta tenha o index.html, fora dela o arquivo main.py que com o render_template acessara sua pasta e rodara o que você definir no codigo dele.
THe end.
Comentários
Postar um comentário