最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python實現(xiàn)ip查詢示例

 更新時間:2014年03月26日 10:15:50   作者:  
這篇文章主要介紹了python實現(xiàn)ip查詢示例,需要的朋友可以參考下

以下代碼實現(xiàn)了ip查詢功能

處理程序

復(fù)制代碼 代碼如下:

import os,time

def getip(filepath):
    ip2city={}
    file=open(filepath,'r')
    lines=file.readlines()
    file.close()
    for line in lines:
        ip=line.split(' ')[0]
        city=line.split(' ')[1]
        haship=hashm(ip)
        if haship in ip2city:
            pass
        else:
            ip2city[haship]=city
    print('Hash done!')
    return ip2city

def hashm(ip):
    iplist=ip.split('.')
    ip=int(iplist[0])*4+int(iplist[1])*2+int(iplist[2])
    return ip

def getcityfromip(filepath,ipandcity):
    outputstr=[]
    for file in os.listdir(filepath):
        file_handler=open(filepath+'\\'+file,'r')
        line=file_handler.readline()
        while line:
            ip=hashm(line.rstrip())
            if ip in ipandcity:
                outputstr.append(line.rstrip()+'    '+ipandcity[ip])
            line=file_handler.readline()
        file_handler.close()
        outfile_handler=open(filepath+'\\'+file.split('.')[0]+'_out.txt','a+')
        outfile_handler.writelines(outputstr)
        outfile_handler.close()
        print(file.split('.')[0]+'_out.txt'+'done!')
       

def splitfile(filepath):
    file=open(filepath,'r')
    block_size=8000000
    filecount=1
    temp=[]
    count=0
    line=file.readline()
    while line or temp:
        if count==block_size:
            wfile=open('D:\\ipfile\\file_'+str(filecount)+'.txt','a+')
            wfile.writelines(temp)
            temp=[]
            count=0
            wfile.close()
            filecount+=1
            print('Split'+str(filecount)+' done!')
        else:
            count+=1
            temp.append(line)
            line=file.readline()
    file.close()
    return os.path.join('D:\\'+'ipfile')

if __name__ == '__main__':
    start=time.clock()
    filepath='D:\\ip.txt'
    ippath='D:\\citys.txt'
    ip2city=getip(ippath)
    splitfilepath=splitfile(filepath)
    getcityfromip('D:\\'+'ipfile',ip2city)
    end=time.clock()
    print(end-start)

生成IP

復(fù)制代碼 代碼如下:

#Generate 100 millon ip
import random
import time

def generateIpAdd(file,num):
    ip=[]
    file=open(file,'a+')
    for i in range(num):
        ipAdd='192.168.'+str(random.randint(0,255))+'.'+str(random.randint(0,255))
        ip.append(ipAdd+'\n')
    file.writelines(ip)
    file.close()

if __name__=='__main__':
    start=time.clock()
    for i in range(10000):
        generateIpAdd('D:\ip.txt',10000)
    end=time.clock()
    print(end-start)

相關(guān)文章

  • tensorflow 變長序列存儲實例

    tensorflow 變長序列存儲實例

    今天小編就為大家分享一篇tensorflow 變長序列存儲實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-01-01
  • python中l(wèi)ambda與def用法對比實例分析

    python中l(wèi)ambda與def用法對比實例分析

    這篇文章主要介紹了python中l(wèi)ambda與def用法對比,實例分析了lambda與def的區(qū)別與使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-04-04
  • Atom的python插件和常用插件說明

    Atom的python插件和常用插件說明

    這篇文章給大家分享了Atom的python插件和常用插件,有需要的朋友們可以學(xué)習(xí)參考下。
    2018-07-07
  • Python基礎(chǔ)之面向?qū)ο筮M(jìn)階詳解

    Python基礎(chǔ)之面向?qū)ο筮M(jìn)階詳解

    這篇文章主要為大家詳細(xì)介紹了Python基礎(chǔ)之面向?qū)ο筮M(jìn)階,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02
  • Python自動化辦公之文件整理腳本分享

    Python自動化辦公之文件整理腳本分享

    這篇文章主要為大家分享了一個Python自動化辦公腳本,可以實現(xiàn)文件整理,這是一個很有用的技能,可以幫助你管理你的電腦上的各種文件,需要的可以收藏一下
    2023-08-08
  • Python Tornado批量上傳圖片并顯示功能

    Python Tornado批量上傳圖片并顯示功能

    Tornado龍卷風(fēng)是一個開源的網(wǎng)絡(luò)服務(wù)器框架,它是基于社交聚合網(wǎng)站FriendFeed的實時信息服務(wù)開發(fā)而來的。這篇文章主要介紹了Python Tornado批量上傳圖片并顯示,需要的朋友可以參考下
    2020-03-03
  • python+selenium識別驗證碼并登錄的示例代碼

    python+selenium識別驗證碼并登錄的示例代碼

    本篇文章主要介紹了python+selenium識別驗證碼并登錄的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-12-12
  • Python如何在for循環(huán)中同時使用兩個變量與兩個控制條件

    Python如何在for循環(huán)中同時使用兩個變量與兩個控制條件

    Python是一種廣泛使用的編程語言,其提供了許多強(qiáng)大的方法來處理代碼,Python?for循環(huán)是其中一種非常有用的方法,下面這篇文章主要給大家介紹了關(guān)于Python如何在for循環(huán)中同時使用兩個變量與兩個控制條件的相關(guān)資料,需要的朋友可以參考下
    2024-03-03
  • 20行python代碼實現(xiàn)人臉識別

    20行python代碼實現(xiàn)人臉識別

    這篇文章主要介紹了python人臉識別,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • Python簡單實現(xiàn)自動刪除目錄下空文件夾的方法

    Python簡單實現(xiàn)自動刪除目錄下空文件夾的方法

    這篇文章主要介紹了Python簡單實現(xiàn)自動刪除目錄下空文件夾的方法,涉及Python針對文件與目錄的讀取、判斷、刪除等相關(guān)操作技巧,需要的朋友可以參考下
    2017-08-08

最新評論

静宁县| 西乌珠穆沁旗| 永州市| 丰宁| 卢氏县| 嘉善县| 涿州市| 台东市| 阿克陶县| 大宁县| 汾阳市| 广宗县| 澎湖县| 文山县| 西贡区| 平顺县| 甘孜| 阿拉尔市| 兰坪| 丽水市| 淮南市| 抚远县| 连南| 城口县| 通河县| 民勤县| 宁明县| 定州市| 梅州市| 佛教| 三台县| 中超| 横峰县| 科技| 三门县| 和平县| 棋牌| 建湖县| 江门市| 察隅县| 舒兰市|