• 把请求头信息添加到请求报文中,然后发送请求到淘宝,显示回复信息


    1. import socket # 提供了创建套接字和进行网络通信的功能
    2. # 建立TCP连接
    3. s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
    4. # 与服务器建立连接
    5. host='www.taobao.com'
    6. s.connect(('www.taobao.com',80)) # HTTP服务的默认端口号是80,FTP的默认端口号是21,SMTP的默认端口号是25等
    7. s.send("Get /HTTP/1.1\r\nHost:{}\r\nConnection:close\r\n \
    8. User-Agen:Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) \
    9. Gecko/20100101 Firefox/116.0 \r\n\r\n".format(host).encode("utf-8"))
    10. print(s.recv(1024).decode('utf-8')) # 'recv'方法的参数是希望接收的数据的最大字节数
    11. s.close()

    使用'send'方法将HTTP请求报文发送到服务器。这个请求是GET请求,并且指定了HTTP版本为1.1。"
    "在请求报文中添加Host头信息,其中'{}'被替换为淘宝的域名(http://www.taobao.com)。"
    "在请求报文中添加Connection头信息,其值为'close',表示此请求完成后,就关闭连接。"
    "在请求报文中添加User-Agent头信息,这是一个假扮的浏览器信息,通常服务器会根据这个信息来返回不同的内容。",
    "再添加一个空行,表示请求报文的结束。"
    "使用'recv'方法接收服务器返回的HTTP响应报文,并使用'decode'方法将其从二进制格式转换为字符串格式。"
     

    HTTP/1.1 400 Bad Request
    Server: Tengine
    Date: Fri, 20 Oct 2023 14:44:14 GMT
    Content-Type: text/html
    Content-Length: 249
    Connection: close
    Via: cache5.cn4242-1[,0]
    Timing-Allow-Origin: *
    EagleId: 0000000016978130543453246e



    400 Bad Request

    400 Bad Request


    Your browser sent a request that this server could not understand.


    Powered by Tengine

     

  • 相关阅读:
    YOLOV5学习笔记
    ai语音机器人OKCC的空号检测
    JWT 使用入门(二)token有效期
    DDoS渗透与攻防实战 (一) : 初识DDoS
    9.23/24数电
    ACPI规范概览-2
    [开源项目]可观测、易使用的SpringBoot线程池
    谷粒学苑项目前台界面 (一)
    《MySQL实战45讲》——学习笔记16 “order by排序原理、varchar(255)“
    vscode + latex
  • 原文地址:https://blog.csdn.net/m0_74261473/article/details/133955501