python批量提交沙箱问题实例

yipeiwu_com6年前Python基础

本文实例讲述了python批量提交沙箱问题,分享给大家供大家参考。具体方法如下:

出现的问题如下:

1. Popen的使用,在linux下参数用列表传,不要用字符串传   否则可能会有“OSErrorror: [Errno 2] No such file or directory”错误

2. 列表要拷贝用 shutil模块中  不然会连续append..提交完第一个样本后,后面的提交参数就错了。

代码如下:

import os 
from subprocess import Popen 
 
class SubmitCuckoo: 
  """""" 
 
  def __init__(self, dirctory): 
    """Constructor""" 
    self._dirctory = dirctory 
    self._pargs = ["/usr/bin/python", "/home/xxx/xxx/submit.py"] 
   
  def _file_callback(self, file_path): 
    args = ["/usr/bin/python", "/home/xx/xxx/submit.py"] 
    args.append(file_path) 
    print "args:",args 
    Popen(args) 
     
  def submit_cuckoo(self, file_callback=_file_callback): 
    """ 
     
    """ 
    dir = self._dirctory 
    for root, dirs, files in os.walk(dir):  
      for f in files:  
        file_path = os.path.join(root, f)  
        if file_callback:  
          file_callback(self, file_path) 
 
if __name__ == "__main__": 
  submit_cuckoo = SubmitCuckoo(r"/home/xxx/xxx/samples") 
  submit_cuckoo.submit_cuckoo() 

希望本文所述对大家的Python程序设计有所帮助。

相关文章

对numpy 数组和矩阵的乘法的进一步理解

对numpy 数组和矩阵的乘法的进一步理解

1、当为array的时候,默认d*f就是对应元素的乘积,multiply也是对应元素的乘积,dot(d,f)会转化为矩阵的乘积, dot点乘意味着相加,而multiply只是对应元素相乘...

Pytorch.nn.conv2d 过程验证方式(单,多通道卷积过程)

Pytorch.nn.conv2d 过程验证方式(单,多通道卷积过程)

今天在看文档的时候,发现pytorch 的conv操作不是很明白,于是有了一下记录 首先提出两个问题: 1.输入图片是单通道情况下的filters是如何操作的? 即一通道卷积核卷积过程...

Flask之pipenv虚拟环境的实现

在 python 开发过程中,导入第三方库是最常见的操作,但是如果咋在本机自带 python 环境下安装第三方包。 就会造成库的冗余,比如某个项目只需要部分第三方库,但是其他项目又需要其...

flask使用session保存登录状态及拦截未登录请求代码

本文主要研究的是flask使用session保存登录状态及拦截未登录请求的相关内容,具体介绍如下。 前端请求form: <form action="/user/add" met...

python实现机器人卡牌

python实现机器人卡牌

介绍 这个例子主要利用turtle库实现根据输入动态展示不同机器人的图像和属性信息。 代码部分非原创只是做了些许修改和整理使得更易阅读。 图片和文件资源请访问git仓库获取:链接地址 涉...