zoukankan      html  css  js  c++  java
  • windows 环境下python 安装 pypcap 并用pyinstaller打包到exe,解决DLL 加载失败。

    安装 PYQT5 pypcap

    环境:

    windows10_x64

    python3.6.3

    pycharm2017.2.4

    备注:

    需要安装 Visual C++ Build Tools 2015 可以解决

    error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": http://landinghub.visualstudio.com/visual-cpp-build-tools

    1:建立虚拟环境

    创建虚拟环境,基于python3.6.3,自动包含 pip  setuptools

    2:安装pyqt5

    pycharm直接在虚拟环境中安装pyqt5,自动安装sip 

    3.安装dpkt

    pycharm直接在虚拟环境中安装dpkt

    4.安装pypcap

    4.1下载pypcap源码https://github.com/pynetwork/pypcap/releases

    4.2根据官网https://github.com/pynetwork/pypcap提示,windows下装个Npcap

    WinPcap has compatibility issues with Windows 10, therefore it's recommended to use Npcap (Nmap's packet sniffing library for Windows, based on the WinPcap/Libpcap libraries, but with improved speed, portability, security, and efficiency). Please enable WinPcap API-compatible mode during the library installation.

    4.3https://nmap.org/npcap/   npcap下载地址。

    打开WinPcap API-compatible mode,这是pypcap要求的。

    打开Support raw 802.1 traffic (and  monitor mode)for wireless adapters    像是无线网络支持。

      

    4.3下载npcap的SDK  https://nmap.org/npcap/

    4.4 解压npcap SDK  

    放到一个盘的根目录并改文件夹名为wpdpack

    我放在了D盘

    (至少我这样,是可以正常安装成功的)

    4.5解压pypcap

    这个要解压到和SDK同一个盘符下,也放根目录吧。作者写的东西是基于linux的,没有盘符的概念,不会跨盘符去找文件。

    4.6执行命令进行安装

    介绍都说的很简单  python.exe  setup.py install

    这个python是你的系统下的python,不是你虚拟环境中的python,这个路径又长。

    教你个不用来回确认路径的方法,和我以前配置pycharm external tools 一样简单。

    4.6.1,用pycharm 打开pypcap的文件夹。

    4.6.2,打开setup.py

    4.6.3,鼠标右键,运行它

    4.6.4,编辑它的运行参数

    4.6.5,运行参数如下:

     

    有用的其实就3条:

    1 Script 脚本文件,我们的setup.py

    2 Script parameters: 脚本参数 install 

    3 Python interpreter:用的是哪个python虚拟环境  python

    好了,安装命令的  python  setup.py install 三个都有了。

    再运行一下这个setup.py就可以了。

    它自动生成的命令是:
    D:PythonTestVirtual_SnifferScriptspython.exe D:/pypcap-1.2.0/setup.py install

    自认高手的就自己照着去敲吧,我是懒的敲,就用这样的方法来执行了。

    安装完成了。接下来打包。

    pyinstall ****.py,图形配置在pyinstall文章。

    问题是打包到了别的电脑,无法正常启动,提示加载DLL失败,提示出错的行是  import pcap,warn******.txt中并没有提示这个模块怎么样。

    误打误撞,在别的电脑,首先安装NPCAP,并勾选winpcapAPI。然后再运行,就可以了。

    安装

    pcap方法接收5个参数:

    • name,监听的网卡名称。
    • snaplen,捕获的每个数据包的最大长度。
    • promisc,是否开启混杂模式
    • timeout_ms,接收数据包的超时时间
    • immediate,立即模式,如果启用则不会缓存数据包

    我遇到了cookie抓取长度不够的问题。

    烂写了一些东西,加上标记,自己再拼接。

    有空试试snaplen。但是它默认是65535。还能改大么?

  • 相关阅读:
    Maven ==> 简介
    IDEA结合GIT的使用
    Shell ==> 基础
    Dubbo ==> 简介
    iptables防火墙
    文件系统对比
    supervisord部署
    inotify+rsync安装配置
    前端插件网址
    Nginx高级玩法
  • 原文地址:https://www.cnblogs.com/jackadam/p/8279080.html
Copyright © 2011-2022 走看看