@ru_python

Страница 6115 из 9768
Denis
02.08.2018
18:01:05
Я ждал, что кто-то опытный поможет, а прибежали философы ?
Опытные люди делают nocover в таких местах

Alexandr
02.08.2018
18:01:12
curl -X POST -H "Content-type:application/json" -d @/home/user/mnt/zbx-con.json http://192.168.100.10/zabbix/api_jsonrpc.php HTTP/1.1 {"jsonrpc":"2.0","result":"3.0.5","id":1}curl: (6) Could not resolve host: HTTP; Unknown error

Артем
02.08.2018
18:05:33
Ребят, кто знает как написать сервер на фласке для вебхука тг

Ссыль на статью мб или что то такое

Google
FindYanot
02.08.2018
18:06:15
Mark
02.08.2018
18:07:48
пиздкц

столько всего для эхо бота

Oleg
02.08.2018
18:07:58
Ребят, кто знает как написать сервер на фласке для вебхука тг
Цель научиться поднимать сервер на фласке или настоить ловлю хуков? Если второе, то возьми библиотеку со встроенным сервером и радуйся. Если первое, то велком на habr, я там видел статью

Вупи
02.08.2018
18:08:32
Request и Flask

ivan
02.08.2018
18:08:32
столько всего для эхо бота
Ты о чем, там 80 строк кода и конфиг

Вупи
02.08.2018
18:08:42
Mark
02.08.2018
18:08:42
я не смотрел

Denis
02.08.2018
18:09:13
Вупи
02.08.2018
18:09:25
Можешь взять либу для json

Oleg
02.08.2018
18:09:53
Хуки) но готовое решение не хочу, хочу сам уметь это делать
А почему выбор на фласк лёг? Глянь aiohttp ) он поддерживает стиль работы как с фласком, но при этом асинхронный

Google
Артем
02.08.2018
18:10:23
Апи телеграма, Request и Flask
Да спасибо, мне нужно было глянуть как на фласке хуки

Denis
02.08.2018
18:10:41
Он не настолько допиленный, как flask)
Зачем боту допиленность?

Артем
02.08.2018
18:10:51
А почему выбор на фласк лёг? Глянь aiohttp ) он поддерживает стиль работы как с фласком, но при этом асинхронный
Если есть статья как на нем сервак для хуков сделать, то кинь ссыль плиз

И з и
Я с ним просто не работал еще

Oleg
02.08.2018
18:11:35
Он не настолько допиленный, как flask)
Что там недопиленного для приёма вебхуков?

ivan
02.08.2018
18:11:35
Что там недопиленного для приёма вебхуков?
Ну да, для такой задачи мб и пофиг) Но фиг знает, на нём пока не очень охотно пишут

Хотя мне самому aiohttp нрав больше, чем тот же flask

ivan
02.08.2018
18:12:35
maybe

Ну, сторонние либы некоторые сыроватые, в веб-сокетах тоже пока не всё работает

Потому что боятся async/await? :))
ТОпово, что там, в отличии от flask, app - это dict подобный объект Оч удобно

Артем
02.08.2018
18:14:21
Так есть статейка как на аио хуки сделать?

ivan
02.08.2018
18:14:37
Когда нужна глобальная точка доступа к некоторым вещам

Denis
02.08.2018
18:14:50
Ты хотел вроде все сам сделать, а копипастить из статейки это не сам

Артем
02.08.2018
18:15:40
Ты хотел вроде все сам сделать, а копипастить из статейки это не сам
Я не хотел готовую либу использовать.А посмотреть в статье это другое дело

Oleg
02.08.2018
18:15:48
Так есть статейка как на аио хуки сделать?
Можно открыть aiogram и почитать код. Там реализован сервер в коробке.

Google
Oleg
02.08.2018
18:16:13
А если самому делать, то лучше в доку к aiohttp сходить, там оч всё красиво описано

Артем
02.08.2018
18:16:46
Я если честно с вебчиклм не очень и не совсем врубаюсь шо за вебхуки и с чем их едят) я прочитал про них но чет не доходит

Я понял, что апи телеге отправляет что то на указанный айпи если придет сообщение, но что дальше? Зачем сервак?

Oleg
02.08.2018
18:18:20
Я если честно с вебчиклм не очень и не совсем врубаюсь шо за вебхуки и с чем их едят) я прочитал про них но чет не доходит
Ну так статей полно. Тут новую писать не хочется. В двух словах, это сообщение от телеги (в твоём случае) о том, что что-то произошло (например сообщение новое поступило). Эти сообщения летят тебе на адрес, который слушает твой серв. Вот тебе надо научить сервер слушать такие сообщения и предпринимать правильные действия

ivan
02.08.2018
18:19:58
Я если честно с вебчиклм не очень и не совсем врубаюсь шо за вебхуки и с чем их едят) я прочитал про них но чет не доходит
Это нужно, чтобы ты получал оповещения по мере их появления В противном случае, тебе пришлось бы опрашивать сервера телеграмм, а не пришли ли тебе новый сообщения. Что, в случае если сообщений не пришло, было бы пустой тратой ресурсов как для тебя, так и для телеги

Артем
02.08.2018
18:21:27
Всем спасибо, сразу понятно стало

Druzhinina
02.08.2018
18:30:09
ребят, всем привет, ни у кого нет образа Windows XP?

Denis
02.08.2018
18:30:46
На рутрекере должен быть

Druzhinina
02.08.2018
18:32:47
мне для работы надо

программа старая, только на xp встает

ivan
02.08.2018
18:33:11
Ужос

Kami
02.08.2018
18:33:32
а что за программа? современных альтернатив нет?

Druzhinina
02.08.2018
18:34:11
неа

Oleg
02.08.2018
18:37:29
Режим совместимости не помогает? Вообще на rutracker образ лежал XP

Druzhinina
02.08.2018
18:38:49
ну щас смотрю

Kirill
02.08.2018
18:40:19
Подскажите, пожалуйста, как лучше организовать TestCase. Есть 6 методов: * Создать объект * Изменить объект * Добавить к объекту свойство * Прочитать свойства объекта * Удалить свойство * Удалить объект Я видел реализацию test_create_update_delete, но в моем кейсе буду все шесть шагов и ИМХО это не правильно все объединять в один метод кейса. На ум приходит только выполнение "Создать/Удалить" в каждом методе, но вроде как тоже не правильно, есть же отдельный тест на проверку этих методов.

Maks
02.08.2018
18:43:39
сегодня понял, что вот это (нахождение минимального числа в веденных с клавиатуры числах): a = input() a = a.strip() b = a.split(' ') minNumber = int(b[0]) for number in b: if minNumber > int(number): minNumber = number print("min value is: " + str(minNumber)) можно уместить в одну строку: print(min([int(item) for item in input().strip().split(', ')])) вот это python!!

Aragaer
02.08.2018
18:44:09
один тест это создать объект. С него начинаем. Когда он проходит, больше этот тест не нужен, потому что создаваться объект будет во всех тестах

Google
Aragaer
02.08.2018
18:44:23
изменить объект это один отдельный тест, там больше ничего не нужно

добавить свойство можено сделать такой тест, чтобы добавлять. А потом этот тест опять же не нужен, потому что при чтении все равно добавляешь

но возможно нужны тесты "не добавлял, но читаю" и "не добавлял, но удаляю"

Aragaer
02.08.2018
18:45:33
тест на удаление это добавить - удалить - прочитать удаленное

удаление свойства в смысле

Admin
ERROR: S client not available

Aragaer
02.08.2018
18:46:12
ну а тест удаления объекта это ... хрен знает, как проверить корректно, что объект действительно удаляется, но само по себе действие вызвать надо

ivan
02.08.2018
18:46:23
Aragaer
02.08.2018
18:46:34
но потом как отдельный тест оно опять же не нужно, потому что оно есть в teardown всех остальных тестов

ivan
02.08.2018
18:46:38
Особенно, когда добавляется куча говна типо lambda, filter, map

Бензофуран
02.08.2018
18:46:55
Зачастую не читабельно
Ну да, но не всегда Иногда они вполне к месту

Aragaer
02.08.2018
18:47:13
про однострочник - не нужно квадратные скобки, это раз

Бензофуран
02.08.2018
18:47:41
Особенно, когда добавляется куча говна типо lambda, filter, map
Эти три штуки очень часто встречаются в однострочниках

ivan
02.08.2018
18:47:42
Ну да, когда это в разумном количестве юзается А иногда бывает Смотришь на код впервые, когда ты в принципе не особо понимаешь, что хотел сделать человек, писавший код А там куча однострочной жести

Aragaer
02.08.2018
18:47:45
стрип я бы перенес внутрь int, а сплит делал только по запятым

потому что твой кейс сломается на "1, 3,5"

print(min(int(t.strip()) for t in input().split(',')))

Maks
02.08.2018
18:48:51
понял, принял

Google
Maks
02.08.2018
18:48:59
спасибо

Aragaer
02.08.2018
18:49:20
но такое "прочитал, посчитал, напечатал" бывает нужно не так часто

обычно прочитал это раз, напечатал это три, а все остальное действительно можно в шаг два засунуть

ivan
02.08.2018
18:50:13
про однострочник - не нужно квадратные скобки, это раз
А какая разница то ли это list comprehension то ли это генератор?

Aragaer
02.08.2018
18:50:14
line = input() result = min(int(t.strip()) for t in line.split()) print(result)

это в любом случае генератор, просто зачем-то он явно превращается в список

я кстати не уверен в необходимости делать strip

Бензофуран
02.08.2018
18:51:06
Генераторы меньше памяти емнип кушают

Aragaer
02.08.2018
18:51:18
таки да, min(int(t) for t in line.split(','))

>>> int(" 2 ") 2

Nikolay
02.08.2018
18:51:35
Aragaer
02.08.2018
18:51:58
да пофиг

ivan
02.08.2018
18:52:10
Генераторы меньше памяти емнип кушают
Мы никуда не сохраняем результат list comprehension, так что без разницы, вроде как

Point
02.08.2018
18:52:12
Ребят, помогите разобраться с кодировками

Aragaer
02.08.2018
18:52:12
>>> int("\n\t 2\n") 2

Point
02.08.2018
18:52:16
проблема такая UnicodeDecodeError: 'ascii' codec can't decode byte 0xd0 in position 0: ordinal not in range(128)

в начале файла писал это

Aragaer
02.08.2018
18:52:32
пробельные символы отбрасываются

Страница 6115 из 9768