Skip to content
Snippets Groups Projects
Commit be1cc96a authored by Adrien Béraud's avatar Adrien Béraud
Browse files

scanner: autodownload GeoIP database

parent f3eb1127
No related branches found
No related tags found
No related merge requests found
...@@ -20,9 +20,11 @@ ...@@ -20,9 +20,11 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
# THE SOFTWARE. # THE SOFTWARE.
import time, sys import time, sys, os
from pprint import pprint from pprint import pprint
from math import cos, sin, pi from math import cos, sin, pi
from urllib import request
import gzip
sys.path.append('..') sys.path.append('..')
from opendht import * from opendht import *
...@@ -70,6 +72,18 @@ exitbtn = Button(exitax, 'Exit') ...@@ -70,6 +72,18 @@ exitbtn = Button(exitax, 'Exit')
reloadax = plt.axes([0.92, 0.90, 0.07, 0.04]) reloadax = plt.axes([0.92, 0.90, 0.07, 0.04])
button = Button(reloadax, 'Reload') button = Button(reloadax, 'Reload')
def check_dl(fname, url):
if os.path.isfile(fname):
return
print('downloading', url)
ghandle = gzip.GzipFile(fileobj=request.urlopen(url))
with open(fname, 'wb') as out:
for line in ghandle:
out.write(line)
check_dl("GeoLiteCity.dat", "http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz")
check_dl("GeoLiteCityv6.dat", "http://geolite.maxmind.com/download/geoip/database/GeoLiteCityv6-beta/GeoLiteCityv6.dat.gz")
gi = GeoIP.open("GeoLiteCity.dat", GeoIP.GEOIP_INDEX_CACHE | GeoIP.GEOIP_CHECK_CACHE) gi = GeoIP.open("GeoLiteCity.dat", GeoIP.GEOIP_INDEX_CACHE | GeoIP.GEOIP_CHECK_CACHE)
gi6 = GeoIP.open("GeoLiteCityv6.dat", GeoIP.GEOIP_INDEX_CACHE | GeoIP.GEOIP_CHECK_CACHE) gi6 = GeoIP.open("GeoLiteCityv6.dat", GeoIP.GEOIP_INDEX_CACHE | GeoIP.GEOIP_CHECK_CACHE)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment