Python10行代码制作企业内网IP地址查询网站
生活随笔
收集整理的這篇文章主要介紹了
Python10行代码制作企业内网IP地址查询网站
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
企業內部您是否遇到過IP無法定位和查詢的情況,而網絡和運維的部分平臺不便開放給其他用戶。所以本次搭建簡單的IP查詢網站給普通用戶使用,
環境: 1.mongodb(可使用其他數據庫),數據庫安裝可自行查詢其他網站 2.streamlit 實現簡單網站查詢IP地址歸屬,簡單方便。streamlit安裝可以參考
代碼如下:
#coding:utf-8import streamlit as st import pymongo@st.cache # 開啟緩存,如果不緩存,每次刷新都要請求,緩存可以減少搜索時間 def mongodb():# build connectionconn = pymongo.MongoClient('192.168.100.100', 27017) # connect dataBasemydb = conn.cmdb_data# get collectionmyCollect = mydb.cmdb_dns_list# myCollect.insert_one(data_dict)# print(myCollect)return myCollectdb = mongodb() # a = db.find() # 查詢所有的數據庫,無法直接查看,使用for循環可以打印出來 # a = db.find_one({"IP":"192.168.1.1"}) # 查詢單條數據 # print(a) # for i in a: # print(i)st.header("IP地址查詢")title = st.text_input('請輸入IP', '192.168.1.1') st.write('輸入的內容為', db.find_one({"IP":title}))# df = a # st.dataframe(df)展示結果:
代碼過于簡單,可能存在注入等漏洞情況(雖然已經限制只查詢IP),建議生產環境需要對輸入的內容進行限制。避免出現被提權的情況,那就得不償失啦
問題:
安裝streamlit 可能遇到下列錯誤
解決方案:
再安裝streamlit 已經成功
============================================================================
內網搭建公網IP查詢頁面
#coding:utf-8import streamlit as st import requests@st.cache def ip(ipaddress):url = "http://ip-api.com/json/{ip}?lang=zh-CN".format(ip=ipaddress)res = requests.get(url).json()# return resif res["status"] == "success":return {"狀態": "成功" if res["status"] in "success" else "失敗","國家": res["country"],"國家代碼": res["countryCode"],"區域": res["region"],"省份": res["regionName"],"城市": res["city"],"郵政編碼": res["zip"],"經度": res["lat"],"緯度": res["lon"],"時區": res["timezone"],"運營商": res["isp"],"企業或組織":res["org"],"AS": res["as"],"查詢IP": res["query"]}else:return ["輸入錯誤,請輸入公網IP地址"] st.header("IP地址查詢")title = st.text_input('請輸入IP', '1.1.1.1') # st.write('輸入的內容為', db.find_one({"IP":title})) st.write('輸入的內容為', ip(title))頁面展示
總結
以上是生活随笔為你收集整理的Python10行代码制作企业内网IP地址查询网站的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何一步步成为一名架构师?满满干货指导
- 下一篇: 第十三届服务外包创新创业大赛记录总结(一