通过IP地址反查归属地的python模块
业务逻辑由其它C++模块已经完成了开发。
#include <Python.h>
#include "iplookup.h"
static il_db_t _g_db;
ipitem ip_lookup(const char *query)
{
const char *encoding = "UTF-8";
data_type type = text;
ipitem iphm;
il_iplookup(query, iphm, _g_db, type, encoding);
return iphm;
}
static PyObject * wrap_ip_lookup(PyObject *self, PyObject *args)
{
const char * command;
if (!PyArg_ParseTuple(args, "s", &command))//这句是把python的变量args转换成c的变量command
return NULL;
ipitem iphm = ip_lookup(command);//调用c的函数
return Py_BuildValue("(sssssss)",iphm.country ,iphm.province,iphm.city ,iphm.district,iphm.isp , iphm.type , iphm.desc);
//把c的返回值n转换成python的对象
}
// 3 方法列表
static PyMethodDef IpLocateMethods[] = {
{"ip_lookup", wrap_ip_lookup, METH_VARARGS, "locate ip address."},
{NULL, NULL, 0, NULL}
};
PyMODINIT_FUNC initiplocate(void)
{
PyObject *m = Py_InitModule("iplocate", IpLocateMethods);
const char* db_file = "/opt/iplookup/share/ip.db";
_g_db = il_open(db_file);
if (m == NULL) return;
}
编译安装:
g++ -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -fPIC -I. -I/opt
/python2.6/include/python2.6 -c iplocate.cpp -o iplocate.o
g++ -Xlinker -export-dynamic -pthread -shared -Wl,-O1 -Wl libiplookup_la-ip.o
libiplookup_la-iplookup.o libiplookup_la-iconv_ext.o iplocate.o -o iplocate.so
-I /opt/python2.6/include/python2.6 -I /usr/include/
把生成的模块移到:
/opt/python2.6/lib/python2.6/lib-dynload/
分享到:
相关推荐
泰达在线IP批量反查URL模块-查询版具有批量按IP段反查功能!网上有很多的网站提供的IP反查DNS功能,只是单IP模式,方法简单,且只提供查询使用!适合人群:网警,备案机构,IDC空间商,其他行业的研究者! 泰达...
此模块具有批量按IP段反查功能!网上有很多的网站提供的IP反查DNS功能,只是单IP模式,方法简单,且只提供查询使用!适合人群:网警,备案机构,IDC空间商,其他行业的研究者!案例一:网警想知道某IDC空间提供商所...
通过webscan ip批量反查域名脚本
在这个“易语言五笔单字反查模块源码”中,我们主要探讨的是如何利用易语言来实现五笔字型编码的反查功能。五笔字型是一种广泛使用的汉字输入法,通过拆分汉字为基本的字根来快速输入。反查功能则是输入部分五笔编码...
《泰达在线IP批量反查URL模块 v1.0 查询版》是一款专为网络监控、备案机构和IDC服务商设计的高效工具,旨在提供批量IP反查DNS的解决方案。这款软件能够帮助用户快速、准确地获取指定IP段内的网址信息,从而在网络...
在Java编程中,根据IP地址反查对应的省市县地址是一项常见的需求,这通常涉及到网络编程和地理信息系统(GIS)的应用。下面将详细讲解如何利用Java实现这一功能。 首先,我们需要理解IP地址的基本概念。IP地址是由...
9. **异常处理**:在实际编程中,需要考虑IP地址无效、网络错误、数据库无法访问等情况,因此需要编写适当的异常处理代码。 10. **性能优化**:由于IP查询可能会频繁进行,缓存策略可以提高性能。例如,可以缓存...
在使用Python进行网络编程时,经常需要根据IP地址反向查找对应的主机名称。这是一个非常实用的功能,尤其在网络编程、系统管理以及日常开发中常常被用到。Python标准库中提供了这样的功能,可以通过内置模块socket...
在实际应用中,这种模块可以用于各种汉字与五笔编码转换的场景,比如开发汉字输入法、编写文字处理工具,或者进行汉字教学软件的开发。通过对源码的学习和分析,开发者可以更好地理解五笔编码的工作原理,并且可以...
用户可以通过这个数据库进行IP反查,即从IP地址找到对应的位置信息,这对于网络管理和网络诊断非常有用。 "ShowIP.exe"很可能是一个应用程序,设计用来显示与输入的IP地址相关的信息。当运行这个程序并输入一个IP...
5. **地理位置**:虽然不直接在分配表中列出,但可以通过IP地址反查到大致的地理位置,这在网络安全、数据分析和内容分发等方面非常重要。 6. **用途**:IP地址可能用于公网(全球可达)或私网(仅限内部使用,如...
本文将详细讲解如何使用Python编程语言实现86五笔反查功能。Python因其简洁易读的语法和丰富的库支持,成为处理这种任务的理想选择。要实现86五笔反查,我们需要以下关键步骤: 1. **数据准备**: 首先,我们需要...
标题中的“IP地址所属地 - 2016年7月CSV版本”指的是一个数据集,这个数据集包含了2016年7月时全球IP地址与其对应的地理位置信息。CSV(Comma Separated Values)是一种常见的数据存储格式,用于结构化数据的交换,...
通过IP地址可以查找到IP下绑定的所有域名。 西安紫微软件工作室开发 www.ziweisoft.com www.ziweisoft.cn
基于Python实现的域名解析、IP反查域名、WHOIS查询、CDN检测、端口扫描、目录扫描、子域名挖掘工具源码 一.安装说明 1.工具使用python3开发,请确保您的电脑上已经安装了python3环境。 2.工具的端口扫描功能调用了...
3. 地理位置定位:通过IP地址反查地理位置信息,这通常需要调用第三方API,如IP-API、GeoIP等服务。 4. 网络连通性测试:程序可以尝试与特定IP地址建立连接,检查网络可达性,例如使用ping命令或TCP/UDP连接。 5. ...
2. **ipwhois.php**:此文件可能实现了IP反查功能,通过查询WHOIS数据库获取IP的相关信息,如注册机构、地理位置等,这有助于识别潜在的恶意IP。 3. **banIP.php**:根据名称推测,这个文件用于禁止或阻止指定IP...
2. IP地址解析:理解IPv4或IPv6地址的结构,以及如何使用IP地址反查地理位置信息。 3. 数据库设计:IP地址数据是如何被规范化和组织到数据库表中的,例如,可能有一个表格记录IP段,另一个表格记录对应的地理位置...
ip反查.zip
易语言域名反查源码,域名反查,取IP,取IP地址,取中间文本内容,取IP地址_,gethostbyname,WSAStartup,inet_addr,socket,getpeername,Connect,GetDateFormat,GetLocalTime,GetTimeFormat,recv,closesocket,WSACleanup,...