【问题标题】:searching for string in returned header在返回的标头中搜索字符串
【发布时间】:2015-06-05 12:08:02
【问题描述】:

我很难在返回的标头中搜索某些信息。当我从 s.recv 打印结果时,它会显示完整的标题。我试图逐行搜索“服务器”这个词,但这样做每行显示一个字符。我不想在这个任务中使用正则表达式。

#!/usr/bin/python

import ipaddress, socket

port = 80

net = ipaddress.ip_network('216.58.208.78/32')
for x in net:
    x = str(x)
    s = socket.socket()
    s.connect((x,port))
    print "Connected to port"
    s.send("GET\r\n")
    print "Returned header..\n"
    header = s.recv(1024)
    for line in header:
         if 'Server' in line:
              print line
    s.close()

【问题讨论】:

    标签: python sockets recv


    【解决方案1】:

    在套接字returns a string 上调用recv。如果您像在for line in header: 中那样遍历字符串,您将遍历字符串中的每个字符。要遍历行:

    for line in header.splitlines():
    

    【讨论】:

      猜你喜欢
      • 2014-12-20
      • 1970-01-01
      • 2011-01-18
      • 1970-01-01
      • 2014-07-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多