导入pwn包时报错

文章讲述了在使用pip安装并导入pwntools库时遇到的错误,原因在于elftools.common.py3compat模块已被移除,解决方案是更新import语句以指向新的elftools.common.utils模块。
摘要由CSDN通过智能技术生成

pip安装好pwntools库后,导入pwn库时发生以下错误

Traceback (most recent call last):
  File "F:\code\py\luogu\test.py", line 1, in <module>
    from pwn import *
  File "C:\Users\1\AppData\Local\Programs\Python\Python37\lib\site-packages\pwn\__init__.py", line 4, in <module>
    from pwn.toplevel import *
  File "C:\Users\1\AppData\Local\Programs\Python\Python37\lib\site-packages\pwn\toplevel.py", line 23, in <module>
    from pwnlib import *
  File "C:\Users\1\AppData\Local\Programs\Python\Python37\lib\site-packages\pwnlib\dynelf.py", line 57, in <module>
    from pwnlib import elf
  File "C:\Users\1\AppData\Local\Programs\Python\Python37\lib\site-packages\pwnlib\elf\__init__.py", line 9, in <module>
    from pwnlib.elf.corefile import Core
  File "C:\Users\1\AppData\Local\Programs\Python\Python37\lib\site-packages\pwnlib\elf\corefile.py", line 79, in <module>
    from elftools.common.py3compat import bytes2str
ModuleNotFoundError: No module named 'elftools.common.py3compat'

是因为elftools.common.py3compat已经不存在,bytes2str移动到了elftools.common.utils

所以将在报错的 \lib\site-packages\pwnlib\elf\corefile.py处,将

from elftools.common.py3compat import bytes2str  
from elftools.common.utils import roundup  
from elftools.common.utils import struct_parse  
from elftools.construct import CString

改为

from elftools.common.utils import bytes2str  
from elftools.common.utils import roundup  
from elftools.common.utils import struct_parse  
from elftools.construct import CString

即可解决

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值