Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 19, 2017 14:57:42

Mr.Anderson
Зарегистрирован: 2015-02-06
Сообщения: 57
Репутация: +  0  -
Профиль   Отправить e-mail  

Socket и http, возвращает код 400

Собственно есть код

 import socket
host = '208.85.252.184'
port = 8080
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.connect((host, port))
sock.send('GET /\r\n'.encode(encoding='utf_8'))
data = sock.recv(120).decode()
print(data)
print(type(data))
if 'RT-' in data:
    print(1)
else:
    print(0)
На момент написания все было окей, возвращал как и должен был 401
Спустя какое то время стал выкидывать код 400
В коде ничего не менялось, вопрос, почему?

Отредактировано Mr.Anderson (Фев. 19, 2017 14:58:18)

Офлайн

#2 Фев. 19, 2017 15:35:10

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Socket и http, возвращает код 400

в вашем коде ничего не менялось или в коде на той стороне?



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#3 Фев. 19, 2017 15:43:51

Mr.Anderson
Зарегистрирован: 2015-02-06
Сообщения: 57
Репутация: +  0  -
Профиль   Отправить e-mail  

Socket и http, возвращает код 400

И там и там.
Это IP роутера, асус.
на другие адреса пробовал, то же самое.

UP:
Решил проблему изменив строку

 sock.send('GET / HTTP/1.1\r\n\r\n'.encode(encoding='utf_8'))
Теперь все работает. Но все равно странно, предыдущий вариант тоже работал..

Отредактировано Mr.Anderson (Фев. 19, 2017 20:55:30)

Офлайн

#4 Фев. 19, 2017 22:14:17

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Socket и http, возвращает код 400

Если на той стороне HTTP сервер может Вам использовать requests ? Сомневаюсь что приведенный код это весь код что у Вас есть.



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#5 Фев. 20, 2017 04:51:02

Mr.Anderson
Зарегистрирован: 2015-02-06
Сообщения: 57
Репутация: +  0  -
Профиль   Отправить e-mail  

Socket и http, возвращает код 400

Проблема в том, что request создает большую нагрузку на сеть. Так как там очень много запросов в один момент. Решил попробовать сокеты. Результат лучше, но все равно не идеален.

Офлайн

#6 Фев. 20, 2017 12:07:08

PooH
От:
Зарегистрирован: 2006-12-05
Сообщения: 1948
Репутация: +  72  -
Профиль   Отправить e-mail  

Socket и http, возвращает код 400

Mr.Anderson
В коде ничего не менялось, вопрос, почему?
Mr.Anderson
Это IP роутера, асус.
Роутер обновил прошивку?
Mr.Anderson
Проблема в том, что request создает большую нагрузку на сеть. Так как там очень много запросов в один момент.
Это как, вы мне шаблон рвете.



Вот здесь один из первых отарков съел лаборанта. Это был такой умный отарк, что понимал даже теорию относительности. Он разговаривал с лаборантом, а потом бросился на него и загрыз…

Офлайн

#7 Фев. 20, 2017 14:30:47

Mr.Anderson
Зарегистрирован: 2015-02-06
Сообщения: 57
Репутация: +  0  -
Профиль   Отправить e-mail  

Socket и http, возвращает код 400

На счет обновления сомневаюсь, хотя кто знает.
На счет requests, как именно не знаю, просто, чисто из личного наблюдения.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version