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

python winpdb远程调试

时间:2018-06-17 11:01:23      阅读:607      评论:0      收藏:0      [点我收藏+]

标签:follow   and   start   serve   rip   wait   adl   http   comm   

 1.使用rpdb2.start_embedded_debugger ,注意要将参数fAllowRemote 设置为True

    2.winpdb前端GUI使用python2

    3.rpdb兼容python2,3

    4.winpdb-1.4.8下载

 

def start_embedded_debugger(
    pwd,
    fAllowUnencrypted = True,
    fAllowRemote = False,
    timeout = TIMEOUT_FIVE_MINUTES,
    fDebug = False
    ):

    """
    Use ‘start_embedded_debugger‘ to invoke the debugger engine in embedded
    scripts. put the following line as the first line in your script:

    import rpdb2; rpdb2.start_embedded_debugger(pwd)

    This will cause the script to freeze until a debugger console attaches.

    pwd     - The password that governs security of client/server communication
    fAllowUnencrypted - Allow unencrypted communications. Communication will
                        be authenticated but encrypted only if possible.
    fAllowRemote - Allow debugger consoles from remote machines to connect.
    timeout - Seconds to wait for attachment before giving up. If None,
              never give up. Once the timeout period expires, the debuggee will
              resume execution.
    fDebug  - debug output.

    IMPORTNAT SECURITY NOTE:
    USING A HARDCODED PASSWORD MAY BE UNSECURE SINCE ANYONE WITH READ
    PERMISSION TO THE SCRIPT WILL BE ABLE TO READ THE PASSWORD AND CONNECT TO
    THE DEBUGGER AND DO WHATEVER THEY WISH VIA THE ‘EXEC‘ DEBUGGER COMMAND.

    It is safer to use: start_embedded_debugger_interactive_password()
    """

    return __start_embedded_debugger(
                        pwd,
                        fAllowUnencrypted,
                        fAllowRemote,
                        timeout,
                        fDebug
                        )

def start_embedded_debugger_interactive_password(
    fAllowUnencrypted = True,
    fAllowRemote = False,
    timeout = TIMEOUT_FIVE_MINUTES,
    fDebug = False,
    stdin = sys.stdin,
    stdout = sys.stdout
    ):

    if g_server is not None:
        return

    if stdout is not None:
        stdout.write(Please type password:)

    pwd = stdin.readline().rstrip(n)

    return __start_embedded_debugger(
                        pwd,
                        fAllowUnencrypted,
                        fAllowRemote,
                        timeout,
                        fDebug
                        )

 

参考:

  1.https://segmentfault.com/a/1190000000356018

  2.http://winpdb.org/docs/embedded-debugging/

python winpdb远程调试

标签:follow   and   start   serve   rip   wait   adl   http   comm   

原文地址:https://www.cnblogs.com/goyier/p/9191985.html

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