码迷,mamicode.com
首页 > 数据库 > 详细

尝试去读SQLMAP源码(一)

时间:2017-06-16 10:08:55      阅读:812      评论:0      收藏:0      [点我收藏+]

标签:mod   .com   pre   ble   color   image   方便   his   pat   

本人python 小菜比 一枚。拜读业界典范~~

sqlmap.py 脚本中 72~83

def modulePath():
    """
    This will get us the program‘s directory, even if we are frozen
    using py2exe
    """

    try:
        _ = sys.executable if weAreFrozen() else __file__
    except NameError:
        _ = inspect.getsourcefile(modulePath)

    return getUnicode(os.path.dirname(os.path.realpath(_)), encoding=sys.getfilesystemencoding() or UNICODE_ENCODING)

modulePath 按照名字来看,应该是和路径相关的。

sys.executable 获取当前python 解释器路径。

__file__ 相对路径下执行获得相对路径,绝对路径下执行获得绝对路径。

weAreFrozen() 这个函数在这里,hasattr 获取sys 中是否存在这个frozen属性,返回一个布尔值。

技术分享

小技巧:Python获得自己的绝对路径
Python中有个魔术变量可以得到脚本自身的名称,但转换成exe后该变量失效,这时得改用sys.executable获得可执行程序的名称,可用hasattr(sys, "frozen")判断自己是否已被打包,下面是一个方便取绝对路径的。

 

为了搞明白,然后做了测试。

技术分享

技术分享

技术分享

 

 

太困了....下面一部分,晚上再读。

 

尝试去读SQLMAP源码(一)

标签:mod   .com   pre   ble   color   image   方便   his   pat   

原文地址:http://www.cnblogs.com/MiWhite/p/7021981.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!