基于GIScript和GeoIP进行访问网址的地理定位分析

眉间皱痕 提交于 2019-12-17 18:55:12

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

    通过网页访问日志分析使用者的地址,然后将其放到地图上,分析访问来源的热区从而得到用户的地图分布,是不是很有用、也很酷?这里介绍个使用GIScript和GeoIP来进行访问网址的地理定位的例子。

    这个功能虽然看起来简单,但其实要分为很多个环节的。下面详述:

  •     1、首先是获取IP地址,这个不多说了。在Web服务器的RequestHeaders中都有,也可以通过日志进行提取。从文件中提取可以批量处理,而从访问信息中提取然后直接发送到消息总线或NoSQL之类的高效率存储系统可以实现实时的处理。

  •     2、使用GeoIP讲域名或IP地址解析为地名。GeoIP是MaxMind开发的用于IP到地址的解析工具,包括软件和IP数据库。免费版的定位较粗,而付费版的可以实现较高精度的定位。

  •     3、将地名通过地理编码(Geocoding)功能转换为空间坐标或空间几何对象,需要软件和地图数据的共同支持。这个以前是专业GIS才有的功能,现在google/百度都提供在线服务接口。但是因为在线的有很多限制(网络带宽、并发控制、账号等等),这里使用GIScript这个工具来做。因为与GeoIP都有Python库,很容易集成到一起。如果需要大批量的处理,再假设一个Celery进行并行处理就OK了。

  •     4、统计空间数据库中的数据样本的频度和其它属性,生成专题图或中间结果,可以输出图件或者将数据传送到R中继续进行高级分析,产生统计图表。

  •     5、R分析的结果可以使用GIScript反向保存回空间数据库,进一步进行高级专题图的制作。

    这个流程可以用到很多应用场景中,比如用户分析、反欺诈、搜索分析、市场分析等等。

    后面进行具体的攻略研究,未完待续。


易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!