1

190 個の IP アドレスのリストを含むテキスト ファイルがあります。これらすべてのサーバーの場所を取得するにはどうすればよいですか?

4

2 に答える 2

1

ipinfodbなど、無料の IP to Geo location APIがいくつかあります。ページの下には、さまざまな言語のサンプルがいくつかあります。より多くのAPIについては、「ip to location api」という用語をグーグルで検索することをお勧めします。

于 2013-01-25T06:57:00.957 に答える
1

pygeoip を使用した python の場合:

#!/usr/bin/env python
import sys
import pygeoip

def main():
    db = pygeoip.GeoIP('GeoLiteCity.dat')
    source = "MyIpList.txt"
    with open(source, 'r') as fs:
        lignes = fs.readlines()
        for ip in lignes:
            dico =  db.record_by_addr(ip)
            for k,v in dico.iteritems():
                print "%s : %s" % (k,v)

if __name__ == '__main__':
    main()

Geo 都市データベースをダウンロードし、この形式で MyIpList.txt ファイルを作成します。

64.233.161.99
209.131.36.159

このスクリプトは以下を出力します: country_code country_code3 country_name region, city postal_code latitude longitude dma_code metro_code area_code region_name time_zone

record_by_addr()は辞書を返します。

于 2013-01-26T23:15:27.420 に答える