Форум сайта python.su
Здрасьте,
Подскажите, пожалуйста, есть модуль из дистрибутива struct, и есть разные сторонние, например, construct и несколько других. Задача: паковать/распаковывать свои upd/tcp пакетики. Есть ли профит в сторонних модулях? Может кто использовал?
Спасибо.
Офлайн
VirtulВообще-то, struct это как раз и есть модуль. Модуль struct из стандартной библиотеки питона.
Подскажите, пожалуйста, есть модуль из дистрибутива struct
Офлайн
py.user.nextЯ это и имел в виду, вероятно, непонятно выразился
Вообще-то, struct это как раз и есть модуль. Модуль struct из стандартной библиотеки питона.
py.user.nextТ.е авторы construct, scapy, packet, protlib и, вероятно, ещё других, просто не смогли научиться пользоваться struct? Если честно, то у меня есть сомнения, что вы понимаете о чём говорите… Как-то это очень маловероятно, по крайней мере у того же construct есть фишки вроде адаптеров и каких-то там ещё, а protlib написан поверх struct.
Если не можешь паковать пакеты через struct, то, скорее всего, не умеешь им пользоваться просто.
Офлайн
VirtulДа не, читанул
Если честно, то у меня есть сомнения, что вы понимаете о чём говорите
VirtulВообще поделка какая-то.
а protlib написан поверх struct
Офлайн
У вас какие-то уж слишком эмоциональные отзывы о них (или манера общения такая, извините, не пойму), как я понял, вы их только сегодня увидели?
А доводилось ли кому-нибудь реально использовать ?
Вот у меня появилась такая задача: собрать пакет из 1 бита - флаг тру/фолс и 15 бит - число. Паковать через тип short и потом “пилить” или есть такое решение, чтоб сама либа запаковала?
Офлайн
Virtul
Вы бы сами немного пыл умерили.
В сети невероятное количество разнообразных поделок различной степени адекватности, и аудитория пользователей большинства этих поделок - полторы калеки. Тот факт, что вам удалось нагуглить ту или иную тулзу вовсе не добавляет этой тулзе полезности и уж вовсе не означает, что кто-то из посетителей форума должен ей пользоваться. Самое надежное решение - стандартная библиотека, но если вам хочется экспериментировать делайте это на свой страх и риск самостоятельно. Потом расскажете.
Вообще, мне кажется, что у вас задача на пару десятков строк кода, а вы какой-то кастинг устроили, как будто на этой библиотеке у вас огромный фреймворк базироваться будет.
Отредактировано FishHook (Янв. 19, 2016 15:39:17)
Офлайн
VirtulНу, напиши класс, который собирает этот пакет. Для преобразования в последовательность байт и обратно используй struct.
Вот у меня появилась такая задача: собрать пакет из 1 бита - флаг тру/фолс и 15 бит - число.
Офлайн
FishHook
Не совсем понимаю про пыл, но в остальном спасибо, “кастинг” - чтобы потом не жалеть. Кому и 15 строчек написать - пол дня.
Офлайн
VirtulПонимаете, человеку с опытом не надо полдня, чтобы написать 15 строчек кода. Дать приблизительную оценку какой-то чужой библиотеке тоже не нужно полдня, достаточно поверхностного взгляда.
Не совсем понимаю про пыл
Офлайн
FishHookМожет быть, конечно, но только если оппонент знает что-нибудь. А тут фразы типа, что struct - это дистрибутив.
Поэтому ваше “как я понял, вы их только сегодня увидели” может быть несколько обидным.
Офлайн