Python實現根據IP獲得位址

2021-10-01 03:18:34 字數 1610 閱讀 1062

import json

import tkinter as tk

import requests

defgui()

:# 建立視窗介面

window = tk.tk(

) window.title(

"ip查位址"

) window.geometry(

"200x100"

) e = tk.entry(window, show=

none

) e.pack(

) t = tk.text(window, height=2)

t.pack(

)def

submit()

: ip_str =

str(e.get())

address = main(ip_str)

t.insert(

'end'

, address)

b = tk.button(window, text=

'submit'

, width=

15, height=

2, command=submit)

b.pack(

) window.mainloop(

)# 根據ip獲得位址的主函式

defmain

(ip_str)

: session = requests.session(

) url =

''url2 =

''add_ip = ip_str

form_data =

headers =

r = session.get(url2)

# print(r.cookies.get_dict()['slim_session'])

r = session.post(url, headers=headers, data=form_data)

print

(r.cookies.get_dict())

response = session.post(url, headers=headers, data=form_data)

add_dict = json.loads(response.text)

return add_dict[

'text'][

'chunzhen'

]# print(add_dict)

# 重新整理介面

defrefresh()

: url =

''headers =

requests.get(url, headers=headers)

if __name__ ==

'__main__'

: gui(

)

讓我比較納悶的事,**的cookie一段時間就會改變,所以一段時間就要更改cookie,即使我採用了 requests.session(),還是不行。

效果圖了 requests.session(),還是不行。

效果圖

根據ip獲得省市資訊

根據輸入ip,使用二分法獲得ip對應的省市資訊。處理掉無效資料後,資料量大小不到20mb,使用乙個map,乙個set,占用記憶體不多,可以作為乙個介面服務使用。輸入ip位址,輸出ip位址對應的省市。內容格式如下 ip開始 ip結束國家省 市區縣區域code 如下 根據輸入ip,使用二分法演算法獲得省...

根據主機名獲得IP及根據IP獲得主機名

根據主機名獲得ip好說,前面已經學習過了,用函式gethostbyname獲得主機資訊,其中包括ip資訊 int cneighbordlg getipbyname afxmessagebox t list return 0 else 根據ip獲得主機資訊則要用gethostbyaddr函式 int ...

根據IP位址查詢所在地

using system using system.collections.generic using system.text using system.io using system.text.regularexpressions namespace aimscommon endregion re...