# !/usr/bin/env python
# -*- coding:utf-8 -*-
import pandas as pd
import os
import geoip2.database
# 设置工作目录
os.chdir('G:/python/0-ip')
# 数据读取
df = pd.read_excel('1.xlsx', sheet_name = 0)
# print(df)
df_length = len(df)
# 读取'IP'列数据放入列表
ip_data = df.IP.tolist()
# print(ip)
city_data = []
isp_data = []
j = 1
reader = geoip2.database.Reader('G:/python/0-ip/GeoLite2-City.mmdb')
for i in ip_data:
if(j==20):
exit()
try:
data = reader.city(i)
except geoip2.errors.AddressNotFoundError:
city = '无'
city_data.append(city)
continue
try:
city = data.city.names['zh-CN']
except KeyError:
city = data.city.name
print(data.city)
country = data.country.name
# 提取需要获取的信息并导入成为列表
j = j+ 1
city_data.append(city)
# 将数据整合为Dataframe类型
ipinfo = {"IP": ip_data, "城市": city_data}
result = pd.DataFrame(ipinfo)
# Dataframe输出为excel
result.to_excel('2.xlsx')
本文为Larwas原创文章,转载无需和我联系,但请注明来自larwas博客 https://larwas.com
最新评论