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

相关文章

pandas进行数据的交集与并集方式的数据合并方法

数据合并有多种方式,其中最常见的应该就是交集和并集的求取。之前通过分析总结过pandas数据merge功能默认的行为,其实默认下求取的就是两个数据的“交集”。 有如下数据定义: In...

深入浅析Python中的yield关键字

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

Python 装饰器@,对函数进行功能扩展操作示例【开闭原则】

本文实例讲述了Python 装饰器@,对函数进行功能扩展操作。分享给大家供大家参考,具体如下: 装饰器可以对原函数进行功能扩展,但还不需要修改原函数的内容(开闭原则),也不需要修改原函数...

python日期相关操作实例小结

本文实例讲述了python日期相关操作。分享给大家供大家参考,具体如下: 用 Python 做项目时,经常会遇到与日期转换相关,日期计算相关的功能,动不动就要去查python手册,感觉麻...

Python获取CPU、内存使用率以及网络使用状态代码

由于psutil已更新到3.0.1版本,最新的代码如下: #!/usr/bin/env python import os import time import sys import...