我的python套接字接收不到?

2024-05-26 22:55:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我有python套接字问题
我可以启动脚本,使用wireshark,将数据发送到我的电脑,
但是Python看不到数据?
我可以看到套接字在包嗅探器上应该接收什么,有什么想法吗?
我几乎什么都试过了,但不管怎样,我似乎都无法让它发挥作用。
我一直想永远把这件事办好,但一直没有时间去做。
但现在我知道了。在

import sys
import socket
import os
import hashlib
import subprocess

class ConnectToServer:

    port = 12345
    host = "80.69.129.118"

    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    s.bind((socket.gethostname(), 12345))

    s.connect((host , port))
    message = "LOGON\n Protocol-Version: 2.0\n App-type: Windows x86\n Operator: PC_CLIENT\n name: palpythonbot@gmail.com\n capabilities: 4\n"

class SendAndReceive:

    s.send(message)
    rply = s.recv(10)
    #####WONT RECEIVE RPLY
    print rply
    passmd5 = hashlib.md5()
    passmd5.update(pal_pass)
    authmessage = "AUTH\n Encryption-Type: 1\n Online-Status: 1\n Last: 1\n" +     passmd5.hexdigest()
    s.send(authmessage)
    rply1 = s.recv(10)
    print rply1
    s.close()

Tags: 数据importsendhostmessageportsocketclass
1条回答
网友
1楼 · 发布于 2024-05-26 22:55:37

我看到两件事看起来很可疑:

  • 在以后用于通信的套接字上使用bind()。这通常只在用于accept()调用的套接字上使用。在
  • 检查你的同伴是否想要CRLF行结尾。如果它正在等待CRLF对,它将不会将您发送的多行代码识别为一个完整的行。在

顺便说一句,可读性黑客:

authmessage = ("AUTH\n"
               " Encryption-Type: 1\n"
               " Online-Status: 1\n")

方括号扩展了表达式,“两个”“字符串”将自动连接起来。另外,正如我所写的,前导空格是正确的吗?在

相关问题 更多 >

    热门问题