@ru_python

Страница 7937 из 9768
kernel
31.01.2019
06:23:59
sqlite можно

Ievgen
31.01.2019
06:24:23
и что там?

kernel
31.01.2019
06:24:33
селекторы

Ievgen
31.01.2019
06:24:45
тире действия

Google
Ievgen
31.01.2019
06:24:48
и по шагам

не очень для базы...

kernel
31.01.2019
06:25:01
name | selector

login | li > div

Ievgen
31.01.2019
06:25:24
у меня уже нарисовалось в голове, вопрос что будет проще

более прямых методов?

не?

может фреймворк какой?

kernel
31.01.2019
06:26:40
Как сказал один мудрый человек: "Не всегда надо использовать фреймворки"

Ievgen
31.01.2019
06:26:54
та вот не хотелось бы усложнять

с другой хочется другим людям дать возможность подправить шаблон не вникая

ладно я подумаю еще стоит ли игра свеч

все кто это будут использовать так или иначе умеют в питон

Google
Ievgen
31.01.2019
06:28:07
может проще оставить все как есть

Terminator
31.01.2019
06:53:20
Rahmatullo Kholov будет жить. Поприветствуем!

Ivan
31.01.2019
06:54:18
Написал либу для ограничения количества запросов через токен / к хосту при использовании asyncio, возможно, кому то пригодится: https://github.com/blohinn/asyncio-request-limiter

Александр
31.01.2019
06:59:49
У нас была такая задача, нашли какой-то плагин для nginx на Lua

Ограничить число запросов в сутки

Ivan
31.01.2019
07:01:17
Для сервера было бы интереснее)
у меня стояла задача очень быстро сделать около ляма запросов к апи вк, при этом не быть забаненым)

+ херачить с разных токенов

для сервера? ограничить количество запросов с клиента?

Ivan
31.01.2019
07:02:52
Да, я не эксперт в asyncio, но нужно было захерачить как-то

Александр
31.01.2019
07:02:54
Ну типичный платный апи

Ivan
31.01.2019
07:02:58
Если укажешь на ошибки - буду очень рад

Александр
31.01.2019
07:05:11
Хотя в твоём случае будет правильнее с делением

Terminator
31.01.2019
07:11:13
@sashastg будет жить. Поприветствуем!

Oleksandr
31.01.2019
07:11:27
def set_size(self, size): """Set figure size""" w, h = size self.root.set('width', w) self.root.set('height', h) что значит w, h = size ? я вызываю эту функцию: svg = fromfile(filename) svg.set_size(80) svg.save(filename) получаю вот такую ошибку: File "parse.py", line 13, in <module> svg.set_size(80) File "/Users/sava/Library/Python/2.7/lib/python/site-packages/svgutils/transform.py", line 290, in set_size w, h = size TypeError: 'int' object is not iterable

Google
Oleksandr
31.01.2019
07:15:26
распаковка. Тебе в сайз надо передать что-то вроде [100,100]
Traceback (most recent call last): File "parse.py", line 13, in <module> svg.set_size([80,80]) File "/Users/sava/Library/Python/2.7/lib/python/site-packages/svgutils/transform.py", line 291, in set_size self.root.set('width', w) File "src/lxml/etree.pyx", line 811, in lxml.etree._Element.set File "src/lxml/apihelpers.pxi", line 569, in lxml.etree._setAttributeValue File "src/lxml/apihelpers.pxi", line 1472, in lxml.etree._utf8 TypeError: Argument must be bytes or unicode, got 'int'

svg = fromfile(filename) svg.set_size([80,80]) svg.save(filename)

Terminator
31.01.2019
07:19:16
@Konstantin4K будет жить. Поприветствуем!

Oleksandr
31.01.2019
07:21:45
svg.set_size([80,80]) так?

Tishka17
31.01.2019
07:21:52
Да

Oleksandr
31.01.2019
07:21:57
File "parse.py", line 13, in <module> svg.set_size([80,80]) File "/Users/sava/Library/Python/2.7/lib/python/site-packages/svgutils/transform.py", line 291, in set_size self.root.set('width', w) File "src/lxml/etree.pyx", line 811, in lxml.etree._Element.set File "src/lxml/apihelpers.pxi", line 569, in lxml.etree._setAttributeValue File "src/lxml/apihelpers.pxi", line 1472, in lxml.etree._utf8 TypeError: Argument must be bytes or unicode, got 'int'

Tishka17
31.01.2019
07:22:22
Значит нет

Что это за код?

А. Svgutils

Документацию читал?

Oleksandr
31.01.2019
07:23:29
Документацию читал?
нашел нужный метод, пытаюсь им воспользоваться

Сергей
31.01.2019
07:25:49
Можно просто числа в виде строки, по умолчанию это пиксели

Terminator
31.01.2019
07:27:19
@SirZoo будет жить. Поприветствуем!

Сергей
31.01.2019
07:32:20
Если это как в css, то вообще там валидаторы на такое ругаются обычно
по идее svg должен сам конвертировать для работы с css и html, тем, кто с питоном работает не обязательно о таких вещах знать.

Google
Владимир
31.01.2019
07:32:28
Попалось на глаза ``` PostSidecarNode = namedtuple('PostSidecarNode', ['is_video', 'display_url', 'video_url']) PostSidecarNode.__doc__ = "Item of a Sidecar Post." PostSidecarNode.is_video.__doc__ = "Whether this node is a video." PostSidecarNode.display_url.__doc__ = "URL of image or video thumbnail." PostSidecarNode.video_url.__doc__ = "URL of video or None." ``` Хороший пример как можно написать кучу лишнего текста в doc

Tishka17
31.01.2019
07:32:56
Хороший пример как неудобны namedtuple

Владимир
31.01.2019
07:33:19
Да все с ними хорошо. Любая структура должна быть к месту Чую сейчас будешь продвигать датакласс)

Сергей
31.01.2019
07:36:01
Tishka17
31.01.2019
07:36:18
Да пофиг. Просто присвоение __doc__ выглядит странно.

Но сути не меняет

Владимир
31.01.2019
07:37:10
Можно.
Веский аргумент) Да, нет, можно, надо))

Tishka17
31.01.2019
07:37:32
Единственный профит namedtuple - то, что он tuple. Когда это нужно - хз

Maxim robox
31.01.2019
07:37:49
Жалко, в питоне нельзя распаковывать словари (как tuple)

Tishka17
31.01.2019
07:38:13
Итерироваться по разнородным данным, ну такое

Владимир
31.01.2019
07:38:21
Да пофиг. Просто присвоение __doc__ выглядит странно.
Это страмный пример как не надо. Файл, где я это увидел весь напичкан best practices, но почему-то глаза сразу болят)

В итерациях. =)
Да и распокавать можно. В параллельном присваивании. Но это так себе >>> a = {1:2, 3:4} >>> x, y = a.items() >>> x (1, 2) >>> y (3, 4)

Tishka17
31.01.2019
07:41:26
вообще не представляю синтаксис распаковки словаря. Надо же ключи передавать

Владимир
31.01.2019
07:42:49
Tishka17
31.01.2019
07:42:51
>>> x={"q": "qqq", "w": "wwww"} >>> locals().update(x) >>> q 'qqq' >>> w 'wwww'

Владимир
31.01.2019
07:45:21
Единственный профит namedtuple - то, что он tuple. Когда это нужно - хз
Эту штуку предложил Хетингер. Потом её протолкнули в стандартные батарейки. На активстейте можно найти наброски реализации

Tishka17
31.01.2019
07:46:48
>>> locals().update({("first", "second"): "value"}) >>> locals() {'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <class '_frozen_importlib.BuiltinImporter'>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' (built-in)>, ('first', 'second'): 'value'}

Google
Tishka17
31.01.2019
07:46:50
гг

что делать с ('first', 'second') в локалах?

естественно оно не опознается как идентификатор переменной

Vasia
31.01.2019
07:49:32
как можно упаковать питон скрипт вместе с venv?

Tishka17
31.01.2019
07:49:45
куда упаковать?

Vasia
31.01.2019
07:49:59
не обязательно в одно тело, главное чтобы можно было запускать из одного места

Tishka17
31.01.2019
07:50:00
tar -zcf ../file.tar.gz .

Александр
31.01.2019
07:50:20
Vasia
31.01.2019
07:50:43
не, чтобы можно было исполнять на машине опционально без питона, ну или с ним

Tishka17
31.01.2019
07:50:52
use docker

Vasia
31.01.2019
07:51:04
просто пока в голову приходит решение в лоб - батник

ну мне скрипт запускать все же, а не сервис

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