发包利器scapy最近在帮助用户调试一个网络问题时候,发现一个很好用发包工具scapy,记录一下使用方法。我们在调试TCP/IP时, 有时需要发送一些报文,用工具一般有ping, nping, netcat 等。 如果需要再深入微调IP或传输层域,或发送一些畸型报文,以上工具可能就不一定能做到了。 此时我们可以自己用socket 编程,不过太麻烦了,迭代周期太长了。 此时 scapy 是
转载 2024-06-03 10:06:56
392阅读
目录before制作过程制作tar包小结返回Python目录beforecentos 7.4 + python 3.6.8 + pip 9.0.3 + wheel 3.1.0关于Python包管理工具发展和使用本次共整理为三篇:第一篇主要要概述Python包管理工具发展史,以及各包管理工具简单使用。第二篇(即本篇)则是主要介绍包(模块)分发,也就是如何将你包打包,然后分发给别人使用。第三
转载 2023-09-25 18:41:58
112阅读
# Python发包教程 ## 1. 整体流程 下面是实现Python发包整体流程: | 步骤 | 描述 | | --- | --- | | 1 | 创建一个Python项目 | | 2 | 编写代码 | | 3 | 打包代码 | | 4 | 上传到PyPI | | 5 | 安装包 | 接下来,我将逐步解释每一步具体操作和代码。 ## 2. 创建一个Python项目 首先,你需要创
原创 2023-09-11 07:34:12
130阅读
# Python发包脚本详解 在Python开发中,我们经常需要将自己编写代码打包成一个独立库,以供其他开发者使用。本文将介绍如何使用Python发包脚本来创建自己库,并分享一些关于发包脚本常见用法和技巧。 ## 什么是发包脚本? 发包脚本是一个用于构建和发布Python脚本。它负责将你源代码、依赖项和其他必要资源打包成一个可用库,并上传到PyPI(Python Pac
原创 2023-09-14 09:47:43
303阅读
还记得楼主在大学时候听董富国老课第一次接触到python,什么?蟒蛇?一脸懵逼楼主第一次知道了还有这门编程语言,视野一下从易语言 C语言 C++ 汇编 C# VB 这些编译语言拓宽了不少。编译语言又叫做静态语言,由于代码经过编译器编译成机器码之后已经看不到之前代码,编译后程序很难再修改,也正是因为被编译成了计算机更容易理解形式,所以运行起来速度会非常快。相反,像python Java
转载 2023-08-31 07:43:34
47阅读
因为项目中要使用到setuptools,所以大致学习了一下,相关学习笔记如下,理解有限,如有问题还请指出一、为什么要打包1、前言将我们写Python程序发布成包后,可以使其能够安装使用。在项目上测试时候,某些情况下,可以将Python打包,然后上传到测试服务器,安装测试。setuptools是常用打包工具。setuptools是Python distutils增强版集合,它可以帮助我们
Python 有非常丰富第三方库可以使用,很多开发者会向 pypi 上提交自己 Python 包。要想向 pypi 包仓库提交自己开发包,首先要将自己代码打包,才能上传分发。distutils 简介distutils 是标准库中负责建立 Python 第三方库安装器,使用它能够进行 Python 模块安装和发布。distutils 对于简单分发很有用,但功能缺少。大部分Python
      当我们完成了某一个模块开发后,可以通过PyPI在网上发布,也可以在本地发布,即让其他人以"第三方扩展库"方式使用我们模块。      setuptools是python标准打包分发工具,它可以将我们编写python项目打包安装,这样其他人就可以像调用标准库或python第三方库那样直接使用   
转载 2024-02-26 15:40:26
36阅读
分发工具 setuptools第一个安装文件使用安装文件创建 wheelSource distributionBuilt distributionWheel安装 Wheel上传 Wheel 到 PyPI注册 PyPI 账号安装 twine使用 twine 上传setup() 参数nameversionpackagesdescriptionurlauthorlicenseclassifiersk
为什么使用包管理?python模块或者源文件直接可以复制到目标项目目录中,就可以导入使用了。但是为了更多项目调用使用,或者共享给别人,就需要打包,或发布到网络,以便供人使用。目的也是为了复用。Pypi(python package lndex),公共模块存储中心,https://pypi,python.org/pypi主要工具distutils官方库didtutils,使用安装架脚本setup
创建项目项目需要有以下文件结构:packaging_tutorial/ example_pkg/ __init__.py setup.py LICENSE README.md packaging_tutorial/ example_pkg/ __init__.py setup.py LICENSE README.mdexample_pkg是包文件名,因为是python包,所以要有__init
python模拟微信发红包,输入金额和红包个数,得到结果,多次发红包,验证先抢后抢红包大小随机性是否一样。1、思路如100元发5个红包,结合几个点几个线段数学知识,需要在0-100之间取4个不重复数,即可得到5个区间,每个区间值即为红包金额。2、代码import random def fenhongbao(money, num): # 钱数最小为1分,为了便于计算取值,需
本文主要介绍如何把个人编写 Python 应用打包并上传到官方仓库 PyPI,使得可以直接通过 pip 进行安装使用,并在 PyPI 上进行维护。分发工具 setuptools曾经 Python 分发工具是 distutils,但它无法定义包之间依赖关系。setuptools 则是它增强版,能帮助我们更好创建和分发 Python 包,尤其是具有复杂依赖关系包。其通过添加一个基本依赖系
首先,使用C编写模块psnd,如下,将其放入某个目录下,如sendpacket。psnd.c1 #include <Python.h> 2 3 #include <pcap.h> 4 #include <remote-ext.h> 5 6 #include <stdlib.h> 7 #include <std
关于我 编程界一名小程序猿,目前在一个创业团队任team lead,技术栈涉及Android、Python、Java和Go,这个也是我们团队主要技术栈。 0x00 使用进程实现并发上一篇文章介绍了线程使用。然而Python中由于Global Interpreter Lock(全局解释锁GIL)存在,每个线程在在执行时需要获取到这个GIL,在同一时刻中只有一个线程得到解释锁执行,Pytho
# Python 发包 Setup 参数详解 在Python中,发包是指将你项目打包成一个可以被其他用户或开发者使用发包。使用 `setuptools` 来创建这个包是最常见方法之一。本文将通过一个简单流程指导你如何实现,并提供每一步具体代码及注释说明。 ## 流程步骤 以下是整个发包流程简要步骤: | 步骤 | 描述 | |------|------| | 1 | 创
原创 2024-08-23 08:54:15
28阅读
教你用python做一个属于自己窃取摄像头照片软件。需要安装python3.5以上版本,在官网下载即可。然后安装库opencv-python,安装方式为打开终端输入命令行。可以在使用pip时候加参数-i https://pypi.tuna.tsinghua.edu.cn/simple,这样就会从清华这边镜像去安装需要库,会快很多。$ pip install opencv-python -
转载 2023-11-28 14:39:39
83阅读
# 使用 Python 进行网卡发包实用指南 在网络编程和网络安全领域中,发包(Packet Sending)是一项非常重要且常见任务。对于初学者而言,可能会觉得这个过程比较复杂。本文将为你提供一个全面的指南,帮助你了解如何使用 Python 实现网卡发包功能。 ## 流程概述 首先,我们需要明确实现网卡发包流程。以下是简单流程步骤: | 步骤 | 描述
原创 10月前
66阅读
# 如何使用Python进行游戏发包 随着游戏开发蓬勃发展,越来越多开发者开始使用Python语言来构建他们游戏。在这篇文章中,我们将探讨如何使用Python进行游戏发包,包括基本概念、流程和代码示例。 ## 什么是游戏发包? 游戏发包是指将开发好游戏程序及相关资源打包成可执行文件过程。这个过程通常包括编译代码、打包资源文件、编写配置文件等,以便于最终用户能够轻松下载和安装游戏。
原创 2024-08-27 07:33:54
113阅读
# 使用 Python 和 Wireshark 进行数据包发送与捕获 在网络通信中,数据包发送和捕获是一项基础而重要技能。通过使用 Python 编程语言和 Wireshark 工具,我们可以轻松地模拟数据包发送并进行网络监控。本文将探讨如何使用 Python 创建和发送数据包,并在 Wireshark 中捕获这些数据包。我们同时会通过代码示例和关系图来帮助您更好地理解这一过程。 ##
原创 2024-09-22 07:10:08
379阅读
  • 1
  • 2
  • 3
  • 4
  • 5