
Marperia
03.12.2018
14:44:05

Tigran
03.12.2018
14:44:12
И это совсем не то же самое, что «сначала загрузите весь свой код в облако».

Google

serbernar
03.12.2018
14:45:34
Хммм
а я не ввожу

Jentry
03.12.2018
14:45:47

serbernar
03.12.2018
14:45:48
один раз ввел и всё

Marperia
03.12.2018
14:45:56


Сергей
03.12.2018
14:46:04
Вопрос по best practiсies.
Есть модуль со следующей структурой:
module/
—sub/
——config.py
——functions.py
—main.py
В main.py запускается web-socket клиент, который принимает функцию как параметр on_message. У меня эта функция использует Redis, и соответственно я подключаюсь к нему в файле functions.py вне всех функций (глобально), что конечно же не очень здорово. Но и как параметр я его передать не могу, т.к. функция on_message может содержать только сам веб-сокет и сообщение.
Так вот, как использовать Redis в функции, чтобы не объявлять её глобально в functions.py?
Немного кода:
#module/main.py
ws = websocket.WebSocketApp(cfg.API_URL, on_message=fn.on_message)
ws.run_forever()
#module/sub/functions.py
redis_db = redis.StrictRedis(
host=cfg.REDIS['host'],
port=cfg.REDIS['port']
)
def on_message(ws, message):
...
redis_db.hset(key, val, json.dumps(message))
P.S. У меня весь код процедурный, ООП нет, так что тупо переписать и использовать как self.redis даже не предлагайте.
Спасибо.
можно еще как-то так
https://pastebin.com/5xjSnTbQ
как работает хз, не проверял ?


Tigran
03.12.2018
14:46:09

Alex
03.12.2018
14:46:20
Зависит видимо от лицензии… я раз в год на сайт логинюсь чтобы оплатить ключ и все.

serbernar
03.12.2018
14:47:13
у меня с карты просто снимают :3

Marperia
03.12.2018
14:47:16

Jentry
03.12.2018
14:47:32

Alex
03.12.2018
14:47:49
@marperia я возможно повторюсь, но здешнее сообщество не одобряет крякнутое ПО и его обсуждение находится вне правил этой конференции.

Tigran
03.12.2018
14:47:52

Google

Tishka17
03.12.2018
14:47:58

Alex
03.12.2018
14:48:27
Вы всегда можете создать свой уютненький чатик и обсуждать кряки для PyCharm там.

Tishka17
03.12.2018
14:48:35

serbernar
03.12.2018
14:48:48

Tigran
03.12.2018
14:48:53
Тебе придётся организовывать магазины так, чтобы нельзя было просто зайти и что-то взять (старая добрая схема ларька), они станут менее эффективными, затраты возрастут

Сергей
03.12.2018
14:48:58

Marperia
03.12.2018
14:49:18

Tishka17
03.12.2018
14:49:19

Tigran
03.12.2018
14:49:27
Не понимаю, почему я должен объяснять, почему воровство — это плохо

Tishka17
03.12.2018
14:49:32
как фласк делает

Alex
03.12.2018
14:49:45
Это личный выбор каждого.

Tishka17
03.12.2018
14:49:59
app = MyApp()
submodule.setup_app(app)

Alex
03.12.2018
14:50:12

Veterkov
03.12.2018
14:50:22
почему не работают callback кнопки? URL работает.

Tishka17
03.12.2018
14:50:29

Alex
03.12.2018
14:50:54

Jentry
03.12.2018
14:51:06
@Saluev А если само поддержание института УК для экономики обходится дороже? На самом деле в будущем, я уверен это будет решено через блокчейн и кредиты доверия к личности)

Сергей
03.12.2018
14:51:07

Google

Tishka17
03.12.2018
14:51:17

Marperia
03.12.2018
14:51:17
Ладно, всем большое спасибо, и помните — публицист хуже пирата!

Tishka17
03.12.2018
14:51:35
уже модуль становится изолированным

Boss
03.12.2018
14:52:46
import re
pattern = r"([\w\.-]+)@([\w\.-]+)(\.[\w\.]+)"
str = "Please contact info@sololearn.com for assistance jdhdhdh@bfhfj.by ndndjdh@hdhehej.ru"
match = re.findall(pattern, str)
if match:
print(match.group())
Traceback (most recent call last):
File "..\Playground\", line 8, in <module>
print(match.group())
AttributeError: 'list' object has no attribute 'group'
Приветы

Сергей
03.12.2018
14:52:53
когда у тебя что-то тихо неочевидно сетапится это стремно
другое дело когда можно импортнуит - вот она зависимость, на блюдечке. никаких секретных знаний не нужно, бери и пользуйся

Boss
03.12.2018
14:53:08
Кто подскажет почему ошибка

Alex
03.12.2018
14:53:32

Jentry
03.12.2018
14:53:40

Казимир
03.12.2018
14:54:01
Всем привет! Я пишу бота который кидает нотификации на почту. smtp.gmail.com разрешает отправлять примерно 1 сообщение в секунду, а мне нужно расслывать намного больше. Кто-нибудь сталкивался с такой задачей? Как это обойти?

Alex
03.12.2018
14:54:34

Олег
03.12.2018
14:55:00

True
03.12.2018
14:55:06
Привет! Коллеги, в этом паблике допускается поиск иполнителя на проект?

Олег
03.12.2018
14:55:13
Можно свой smtp сервер поднять:)

Alex
03.12.2018
14:55:35

Jentry
03.12.2018
14:55:38

Олег
03.12.2018
14:55:39

Сергей
03.12.2018
14:55:44
как фласк делает
фласк кстати делает покруче, я идею из него утащил
https://github.com/pallets/flask/blob/master/flask/globals.py

Олег
03.12.2018
14:55:53

Jentry
03.12.2018
14:56:10

Google

True
03.12.2018
14:56:30

Казимир
03.12.2018
14:56:36

Boss
03.12.2018
14:56:37

Tishka17
03.12.2018
14:56:47

Олег
03.12.2018
14:57:03

Alex
03.12.2018
14:57:14

Jentry
03.12.2018
14:58:21
Это бесплатные штуки?
250 quota units per user per second
https://developers.google.com/gmail/api/v1/reference/quota

Admin
ERROR: S client not available

Tishka17
03.12.2018
14:59:10

Сергей
03.12.2018
14:59:39
нене, посмотри фласк плагины
да я видел как они устроены
прост проблема в том, что если тебе где-то нужен коннект к редису, где нет возможности взять app... то придется его по всем-всем функциям гонять
иногда бесит такое

Tishka17
03.12.2018
15:00:11
вообще, я стараюсь ограничить использование app только вьюхой
а дальшне гонять
ибо коннект надо брать на каждый запрос из пула

//C\\
03.12.2018
15:01:32

serbernar
03.12.2018
15:02:40
...

Andrew
03.12.2018
15:02:45
Вот бы сейчас все сорцы в чат хуярить и просить о помощи

Сергей
03.12.2018
15:02:47
нуууу... нет

//C\\
03.12.2018
15:03:14
а что не так
?

Google

Alex
03.12.2018
15:03:27
вот что не так

Tishka17
03.12.2018
15:03:35
pastebin.com

//C\\
03.12.2018
15:04:16
а почему вы тут желочю брызгаете

Alex
03.12.2018
15:04:34
у нас тут не кружок кулинарии, знаете ли

?
03.12.2018
15:06:27
все черное, как-то неприятно

//C\\
03.12.2018
15:07:44

Veterkov
03.12.2018
15:08:34

Alex
03.12.2018
15:09:04
python 3
наша штатная команда телепатов быстрого реагирования на вызове. попробуйте обратиться позже.

Veterkov
03.12.2018
15:09:18
)))

Nikolay
03.12.2018
15:15:47
pascal .net
???

//C\\
03.12.2018
15:16:45
ну если чесно учить почти мертвый язык ради таблицы так себе идейка

Nikolay
03.12.2018
15:17:46

//C\\
03.12.2018
15:17:57
go
это то такое
?

Rustem
03.12.2018
15:18:31
Язык

Nikolay
03.12.2018
15:19:44
Go старый, уже вот вот 10 лет будет.