如何使用python从网络上的设备捕获数据?

时间:2012-11-20 09:48:03

标签: sockets network-programming python-2.7 access-control hid

我有一个 HID Edge ER40 网络非接触式读卡器,连接到与我正在使用的PC相同的网络。当读卡器扫描卡片时,我想使用 Python程序从读取器捕获数据 我没有网络编程方面的经验,所以想要提供与该设备连接的提示和想法 我知道设备的IP和主机IP地址以及PC的IP地址。

  • 我怎么知道该设备的套接字号。
  • 这个程序适合哪些python模块?

我可以使用HID VertX Discovery GUI查看网络中的所有设备状态 请参考样本和文档。

1 个答案:

答案 0 :(得分:0)

首先,您了解“套接字号”的概念无效。知道某台机器x上的描述符的值不允许您从中读取数据。您必须使用标准库在接口级别上执行此操作。

其次,libpcap,pypcap,scapy等库有很多选项。

查看python packet sniffing

然而,要理解的重要概念是,你对嗅探其他机器的流量有一个有限的控制。所有上述库都可以从同一台机器可靠地嗅探流量,或者他们在混杂模式下嗅探,例如,如果它们是LAN上的路由器/交换机,则可以看到通过该机器运行嗅探器的所有客户端机器的流量。所有其他不通过你的人都不可见。

这是我在从本地计算机上进行数据包嗅探时写的一些scapy code sample。您必须安装软件包并在python中导入才能使其正常工作。