Python - Проблемы библиотеки

Это нормальное поведение, вы находитесь в том же контексте класса, что означает, что вы можете получить доступ к частной собственности, даже если это новый экземпляр.

Здесь C # эквивалент того же поведения (действительный)

public class A
{
    private int _prop;
    public void MyMethod()
    {
        var x = new A();
        x._prop = 5;
    }
}
6
задан Chris Bunch 23 October 2008 в 13:41
поделиться

4 ответа

С протестом от Federico Ramponi "Необходимо использовать scapy в качестве интерпретатора его собственным, не как библиотека", я хочу ответить на non-scapy-specific части вопроса.

Q: при установке библиотек Python я должен изменить свой путь или что-либо подобное?

A: Я думаю, что Вы говорите об изменении PYTHONPATH в масштабе всей системы. Это обычно не требуется или хорошая идея.

Сторонние библиотеки Python должны или быть установлены в системных каталогах, такой как /usr/lib/python2.5/site-packages, или установленный локально, в этом случае Вы могли бы хотеть установить PYTHONPATH в Вашем Make-файле или в сценарии оболочки драйвера.

Q: Кроме того, есть ли что-то, что я могу выполнить в интерпретаторе, чтобы сказать мне содержание scapy пакета?

A: Можно сделать что-то вроде этого:

>>> import scapy
>>> dir(scapy)

Или еще лучше:

>>> import scapy
>>> help(scapy)

Вопрос премии задают в комментарии.

Q: 'Импорт scapy' то же как 'от импорта scapy *'?

A: import scapy связывает имя scapy в локальном пространстве имен к scapy объекту модуля. OTOH, from scapy import * не связывает имя модуля, но все общедоступные имена, определенные в scapy модуле, связываются в локальном пространстве имен.

См. абзацы 6 и 7 Справочника Python, 6.12 оператор импорта.

6
ответ дан 8 December 2019 в 17:29
поделиться

Это говорит Вам, что не может найти sr1 в scapy. Не уверенный, как newbite Вы, но интерпретатор всегда является Вашим другом. Включите интерпретатор (просто вводят "Python" на командной строке), и при подсказке (>>>) тип (но не вводите>, они обнаружатся собой):

>>> import scapy
>>> from pprint import pformat
>>> pformat(dir(scapy))

Последняя строка должна распечатать много материала. Вы видите 'sr1', 'IP' и 'ICMP' там где-нибудь? В противном случае пример виновным.

Попытка также помогает (scapy)

Это о том, сколько я могу помочь Вам, не устанавливая scapy и смотря на Ваш фактический исходный файл сам.

3
ответ дан 8 December 2019 в 17:29
поделиться

scapy пакет является инструментом для сетевого управления и контроля. Мне любопытно относительно того, что Вы пытаетесь сделать с ним. Грубо шпионить за Вашими друзьями.:-)

coventry@metta:~/src$ wget -q http://www.secdev.org/projects/scapy/files/scapy-latest.zip
coventry@metta:~/src$ unzip -qq scapy-latest.zip 
warning [scapy-latest.zip]:  61 extra bytes at beginning or within zipfile
  (attempting to process anyway)
coventry@metta:~/src$ find scapy-2.0.0.10 -name \*.py | xargs grep sr1
scapy-2.0.0.10/scapy/layers/dns.py:    r=sr1(IP(dst=nameserver)/UDP()/DNS(opcode=5,
scapy-2.0.0.10/scapy/layers/dns.py:    r=sr1(IP(dst=nameserver)/UDP()/DNS(opcode=5,
scapy-2.0.0.10/scapy/layers/inet6.py:from scapy.sendrecv import sr,sr1,srp1
scapy-2.0.0.10/scapy/layers/snmp.py:            r = sr1(IP(dst=dst)/UDP(sport=RandShort())/SNMP(community=community, PDU=SNMPnext(varbindlist=[SNMPvarbind(oid=oid)])),timeout=2, chainCC=1, verbose=0, retry=2)
scapy-2.0.0.10/scapy/layers/inet.py:from scapy.sendrecv import sr,sr1,srp1
scapy-2.0.0.10/scapy/layers/inet.py:            p = sr1(IP(dst=target, options="\x00"*40, proto=200)/"XXXXYYYYYYYYYYYY",timeout=timeout,verbose=0)
scapy-2.0.0.10/scapy/sendrecv.py:def sr1(x,filter=None,iface=None, nofilter=0, *args,**kargs):

Согласно последней строке, sr1 функция, определяемая в scapy.sendrecv. Кто-то должен зарегистрировать ошибку документации с автором.

1
ответ дан 8 December 2019 в 17:29
поделиться

У меня была та же проблема, в scapy v2.x используйте

 from scapy.all import * 

вместо v1.x

 from scapy import *

, как написано здесь

Наслаждайтесь =)

4
ответ дан 8 December 2019 в 17:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: