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程序设计有所帮助。

相关文章

深入浅析Python中的yield关键字

前言 python中有一个非常有用的语法叫做生成器,所利用到的关键字就是yield。有效利用生成器这个工具可以有效地节约系统资源,避免不必要的内存占用。 一段代码 def fun()...

Python对两个有序列表进行合并和排序的例子

假设有2个有序列表l1、l2,如何效率比较高的将2个list合并并保持有序状态,这里默认排序是正序。 思路是比较简单的,无非是依次比较l1和l2头部第一个元素,将比较小的放在一个新的列表...

pytorch 常用线性函数详解

Pytorch的线性函数主要封装了Blas和Lapack,其用法和接口都与之类似。 常用的线性函数如下: 函数 功能...

Django数据库表反向生成实例解析

本文我们研究下如何在django中反向生成mysql model代码,接下来我们看看具体介绍。 我们在展示django ORM反向生成之前,我们先说一下怎么样正向生成代码。 正向生成,指...

Python使用pylab库实现绘制直方图功能示例

Python使用pylab库实现绘制直方图功能示例

本文实例讲述了Python使用pylab库实现绘制直方图功能。分享给大家供大家参考,具体如下: Python直方图 #!/usr/bin/python # -*- coding: u...