У меня есть этот ответ от сервера: HTTP-Version: WEB 981.20\r\n\r\nlogintype=none&since=today
Я знаю, что вы можете считать буквы с помощью функции len()
, но эта функция будет считать все буквы ответа.
Как мне считать буквы после этой фразы: HTTP-Version: WEB 981.20\r\n\r\n
?
Результат должен быть 26.
Попробуйте этот код Python:
response = "HTTP-Version: WEB 981.20\r\n\r\nlogintype=none&since=today"
substring = response.split("HTTP-Version: WEB 981.20\r\n\r\n")[1]
print(substring)
count=len(substring)
print(count)
Этот код просто захватывает все, что находится после строки, которую вы предоставили, и помещает ее в подстроку, а затем считает ее.
@DarkKnight Я только что отредактировал, чтобы добавить параметр подсчета, но простое использование len в подстроке сработает, что, я уверен, понял ОП.
у этой проблемы было много решений, но это самое простое:
response = "HTTP-Version: WEB 981.20\r\n\r\nlogintype=none&since=today"
а потом:
part_response = response[-26:]
print(len(part_reponse))
Это работает, только если вы знаете, что после фразы есть 26 символов. Возможно, вам следует перечитать вопрос
Чтобы сделать это надежно, вам нужно сделать несколько вещей.
В первую очередь нужно проверить, есть ли фраза в ответе и тем более где она есть.
Если он существует, вы можете получить длину той части ответа, которая следует за фразой.
Следующее:
response = 'HTTP-Version: WEB 981.20\r\n\r\nlogintype=none&since=today'
phrase = 'HTTP-Version: WEB 981.20\r\n\r\n'
if (offset := response.find(phrase)) >= 0:
print(len(response[offset+len(phrase):]))
Выход:
26
Как это достигает цели ОП по нахождению количества символов после фразы? Почему это принятый ответ очень загадочен