在返回的标题中搜索字符串

时间:2015-06-05 12:08:02

标签: python sockets recv

我在搜索返回的标头时遇到某些信息有困难。当我从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()

1 个答案:

答案 0 :(得分:3)

在套接字returns a string上调用recv。如果像在for line in header:中那样遍历字符串,则会循环遍历字符串中的每个字符。迭代行:

for line in header.splitlines():