左梓惠 发表于 2018-6-4 14:11:16

Win7 怎么使用 Python + ip2region 批量查询 IP 归属地?

Win7 怎么使用 Python + ip2region 批量查询 IP 归属地? 根据这个教程 http://blog.51cto.com/wujianwei/2123493
摸索了一天 也搞不懂,教材使用的是 centos 我在 Win 7 上测试
有没有现成的或成品的 Python + ip2region 批量查询 IP 归属地 并且生成 CSV
我在 Win 7 已经搭建了 Python3h 和 JAVA 环境。

ip2region https://github.com/lionsoul2014/ip2region

admaster 发表于 2018-6-4 16:13:18

用excel也可以批量查询归属地

左梓惠 发表于 2018-6-4 16:14:37

admaster 发表于 2018-6-4 16:13
用excel也可以批量查询归属地

网络接口太慢了
我要的是本地数据库接口

左梓惠 发表于 2018-6-4 16:15:17

admaster 发表于 2018-6-4 16:13
用excel也可以批量查询归属地

excel有本地接口?

admaster 发表于 2018-6-4 16:16:44

左梓惠 发表于 2018-6-4 16:15
excel有本地接口?

Excel也可以编程,VBA.只是匹配的话公式也可以。

左梓惠 发表于 2018-6-4 16:31:04

admaster 发表于 2018-6-4 16:16
Excel也可以编程,VBA.只是匹配的话公式也可以。

哦,不会
太麻烦了
你有本地接口 IP数据库?

xiaoxue 发表于 2018-6-4 18:58:40

本帖最后由 xiaoxue 于 2018-6-4 19:00 编辑

这不有给例子吗 https://github.com/lionsoul2014/ip2region/blob/master/binding/python/testSearcher.py 至于csv 用逗号拼接下结果 在写到文件就好了或者 你说具体点 帮你写.

xiaoxue 发表于 2018-6-4 19:02:07

你的ip是在文本按行存储的还是?
输出csv是
127.0.0.1,本地局域网
这种格式?

左梓惠 发表于 2018-6-4 22:35:15

xiaoxue 发表于 2018-6-4 19:02
你的ip是在文本按行存储的还是?
输出csv是



嗯,是这样的
113.12.36.83中国广西梧州 电信

左梓惠 发表于 2018-6-4 22:45:56

别人教程在centos上使用 而我在 Win 7 上测试
这句出错:python binding/python/testSearcher.py ./data/ip2region.db
应该是python2我安装的是python3 不知在哪里加()

我不知生成ip2region.db文件有什么用ip2region本身就有这个文件
默认的ip2region.db文件生成命令:
cd ip2region项目根目录
java -jar dbMaker-1.2.2.jar -src ./data/ip.merge.txt -region ./data/global_region.csv

教程http://blog.51cto.com/wujianwei/2123493
貌似系统不同命令也不同
我在Win7 安装了 python3
我需要一个不用修改或生成的ip2region.db文件一个用于运行的py文件一个用于测试的IP文档
生成csv在同一目录下

左梓惠 发表于 2018-6-4 22:49:01

对了 我不懂python
正准备有时间学习了解下
@xiaoxue还在吗?

xiaoxue 发表于 2018-6-5 11:13:26

本帖最后由 xiaoxue 于 2018-6-5 11:27 编辑

左梓惠 发表于 2018-6-4 22:49
对了 我不懂python
正准备有时间学习了解下
@xiaoxue还在吗?
用的是python2
ip2region.db 在当前目录下 ./data/
你要跟新的话 就把生成的 ip2region.db 替换到 ./data/ 即可

https://transfer.sh/PWS3q/ip2region.zip

ip 写到 ip.txt 格式如下:

43.243.228.1
43.243.228.2
58.24.0.0
101.251.0.0
103.14.136.0
127.0.0.1
192.168.1.1
203.86.0.0


然后运行 :
python testSearcher.py ip.csv
结果保存到了ip.csv
43.243.228.1,0 中国|0|内蒙古|乌海|联通
43.243.228.2,0 中国|0|内蒙古|乌海|联通
58.24.0.0,0 中国|0|上海|上海|上海广电
101.251.0.0,0 中国|0|内蒙古|呼和浩特|电信
103.14.136.0,0 中国|0|北京|北京|联通
127.0.0.1,0 0|0|0|内网IP|内网IP
192.168.1.1,0 0|0|0|内网IP|内网IP
203.86.0.0,0 中国|0|广东|深圳|电信


左梓惠 发表于 2018-6-5 14:27:00

xiaoxue 发表于 2018-6-5 11:13
用的是python2
ip2region.db 在当前目录下 ./data/
你要跟新的话 就把生成的 ip2region.db 替换到 ./data/ ...

谢谢
刚刚看到 去试试看先

左梓惠 发表于 2018-6-5 19:29:15

本帖最后由 左梓惠 于 2018-6-5 19:30 编辑

刚测试完就是生成的csv不是GBK也不是UTF-8编码的 而是UNIX的
估计你在Linux生产的
修改下编码打开就不是乱码了

左梓惠 发表于 2018-6-5 19:31:48

@xiaoxue 你除了会Python 会PHP 吗?
页: [1] 2
查看完整版本: Win7 怎么使用 Python + ip2region 批量查询 IP 归属地?