基于python實(shí)現(xiàn)查詢(xún)ip地址來(lái)源
從http://freeapi.ipip.net和http://ip-api.com/json/這兩個(gè)網(wǎng)站提供的免費(fèi)調(diào)用接口查詢(xún)IP地址歸屬地。
接口調(diào)用方法是在url后面直接加上IP地址。
url = ’http://freeapi.ipip.net/218.192.3.42’ #中文免費(fèi)url2 = ’http://ip-api.com/json/218.192.3.42’ #外國(guó)網(wǎng)站
ip.py:
import sysimport requestsdef main(argv): url = ’http://freeapi.ipip.net/’ #中文免費(fèi) url2 = ’http://ip-api.com/json/’ #外國(guó)網(wǎng)站 args = sys.argv[1] url=url+format(args) url2 = url2 + format(args) response = requests.get(url) response2 = requests.get(url2) str=response.text.replace(’'’,’’) #去掉雙引號(hào) str=str.replace(’[’,’’) #去掉方括號(hào) str=str.replace(’]’,’’) str=str.replace(’ ’,’’) str=str.split(',') #已逗號(hào)為分割符號(hào),分割字符串為數(shù)組 print('****************************************') print('您查詢(xún)的IP地址 %s 來(lái)源地是:'%args) print('國(guó)家:%s'%(str[0])) #訪問(wèn)數(shù)組里面的值 print('省份:%s'%(str[1])) print('城市:%s'%(str[2])) print('區(qū)域:%s'%(str[3])) str[4] = str[4].replace(’n’, ’’) #去掉回車(chē)符號(hào) print('運(yùn)營(yíng)商:%s'%(str[4])) print('數(shù)據(jù)來(lái)源<www.ipip.net免費(fèi)查詢(xún)接口>') print('****************************************') strpp={} #定義一個(gè)字典strpp strpp=response2.json() #把英文網(wǎng)站json接口返回值傳給字典strpp print('n')#下面就是直接從字典取值,顯示。 print('您查詢(xún)的IP地址 %s 來(lái)源地是:'%(strpp.get(’query’))) print('國(guó)家:%s'%(strpp.get(’country’))) print('城市:%s'%(strpp.get(’city’))) print('經(jīng)緯度坐標(biāo):%s,%s'%(strpp.get(’lat’),strpp.get(’lon’))) print('運(yùn)營(yíng)商編號(hào):%s'%(strpp.get(’as’))) print('ISP服務(wù)商:%s'%(strpp.get(’isp’))) print('數(shù)據(jù)來(lái)源<www.ip-api.com免費(fèi)查詢(xún)接口>') print('****************************************')if __name__ == '__main__': main(sys.argv)
運(yùn)行的方法是直接進(jìn)入該程序所在的工程文件夾中,
然后輸入cmd
然后輸入python ip.py ip地址
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. 解決python腳本中error: unrecognized arguments: True錯(cuò)誤2. python檢查目錄文件權(quán)限并修改目錄文件權(quán)限的操作3. css進(jìn)階學(xué)習(xí) 選擇符4. java不解壓直接讀取壓縮包中文件的實(shí)現(xiàn)方法5. jsp+servlet實(shí)現(xiàn)猜數(shù)字游戲6. ASP.NET Core按用戶等級(jí)授權(quán)的方法7. Ajax對(duì)xml信息的接收和處理操作實(shí)例分析8. JSP實(shí)現(xiàn)文件上傳功能9. java中Servlet監(jiān)聽(tīng)器的工作原理及示例詳解10. ASP基礎(chǔ)知識(shí)Command對(duì)象講解
