
Владимир
13.08.2016
13:13:42

here1am
13.08.2016
13:18:46

Costel Salanders
13.08.2016
13:18:46
Опасные ребята

Google

Владимир
13.08.2016
13:19:07
в смысле почему избегать

here1am
13.08.2016
13:20:40
в смысле почему избегать
"если у тебя проблемы с регулярками, то у тебя две проблемы". алсо как я понимаю, параметр без аргумента у тебя сжуёт как нечего делать

arisu
13.08.2016
13:20:45

Владимир
13.08.2016
13:22:29

here1am
13.08.2016
13:22:30
да не суть, какая там строка. хоть вида "arg1:val1;arg2:val2". меня интересует не парсер гет-параметров

arisu
13.08.2016
13:44:21
регексп в таком случае избыточен
так как формат строки определен строго
регексп для нестрогого формата подошел бы
а если так - ну делишь по разделителю параметров, потом по разделителю значений
[kv.split(':') for kv in string.split(';')]
»> [kv.split(':') for kv in 'param1:val1;param2:val2'.split(';')]
[['param1', 'val1'], ['param2', 'val2']]
можно еще вот так
dict([kv.split(':') for kv in 'param1:val1;param2:val2'.split(';')])

Google

Владимир
13.08.2016
13:53:03

arisu
13.08.2016
13:54:41
хотя я тут тоже недавно монстра породил
регулярка, которая парсит строку вида [tag|$placeholder1|$placeholder2|$placeholderN], генерирует другую регулярку, которая в строке вида "some text $placeholder1 some text $placeholder2 some text $placeholderN" заменяет все эти плейсхолдеры
это не бб-коды были, не
просто набор плейсходеров
и их замен
с аргументами
вот кстати
для такой фигни
какой бы вы подход заюзали.

Sergey
13.08.2016
13:59:07
Привет, парни!
Я тут заморочился созданием скрипта для бекапа аудио из vk, в общем их API отдает далеко не все записи (только те, которые разрешают правообладатели) и я создал версию, которая парсит данные из интерфейса в json с помощью javascript, а затем этот json передается python скрипту и он уже качает файлы. Как думаете это может быть кому то интересно, стоит ли выкладывать на github?

here1am
13.08.2016
14:05:54

Aion
13.08.2016
14:06:59

Владимир
13.08.2016
14:09:53

here1am
13.08.2016
14:10:35
ещё одна качалка из вконтача никогда не лишняя

Sergey
13.08.2016
14:19:50

Andrey
13.08.2016
14:22:03
какой бы вы подход заюзали.
Я бы сделал регулярку, которая перегоняет строку с плейсхолдерами в форматную. Что-то типа '\$([a-z0-9]+)' заменять на '{\1}', и потом делать .format с нужными значениями

Владимир
13.08.2016
14:25:29
Сами данные прямо из DOM с помощью js
Я сейчас глянул: когда заходишь на страницу с записями, js post запрос посылает на al_audio.php, передает x-www-form-urlencoded вот такие данные:
act:load_silent
al:1
album_id:-2
band:false
owner_id:тут_user_id
В ответ приходит text/plain; charset=windows-1251 внутри которого помимо всего прочего есть json, в поле "list" - список записей с id'шниками:)

Sergey
13.08.2016
14:26:15

Владимир
13.08.2016
14:29:05
omg, он сразу грузит весть список записей?
у меня 65 записей на странице, он их все выдал, но там ещё есть поле nextOffset, у меня оно 0 и hasMore, у меня false, так что, видимо, не все сразу грузит, штук по 100 наверно :)

Google

Sergey
13.08.2016
14:31:09

Владимир
13.08.2016
14:34:16

Sergey
13.08.2016
14:36:26

arisu
13.08.2016
14:37:05
Т.е конструкции вида {{ var }}
Так что форматная строка еще хз в таком случае

Andrey
13.08.2016
14:51:18

Aleksey
13.08.2016
15:06:13
class Company(models.Model):
name = models.CharField(max_length=200, verbose_name=u"Name")
class Users(models.Model):
name = models.CharField(max_length=200, verbose_name=u"Username")
class Likes(models.Model):
user = models.ForeignKey(Users, on_delete=models.CASCADE, verbose_name=u'Users')
companies = models.ForeignKey(Company, on_delete=models.CASCADE, verbose_name=u'Some name')
Нужно получить все компании, которые пользователи лайкнули. Как сделать с помощью QuerySet?

Belegnar
13.08.2016
15:13:09

Ilya
13.08.2016
16:20:00
Здравствуйте, может кто-нибудь подскажет в чём проблема, когда подключаюсь в торнадовскому сокету, на сервере вылетает вот такая ошибка:
context.load_cert_chain(ssl_options['certfile'], ssl_options.get('keyfile', None))
ssl.SSLError: [SSL] PEM lib (_ssl.c:2515)

Belegnar
13.08.2016
16:30:58

eugeny
13.08.2016
16:39:36
Мужчины, подскажите, почему phantomJS на Ubuntu не открывает ссылки? как это исправить? пишут, что какой-то прокси надо где-то прописать/убрать

Nick
13.08.2016
16:42:50

Марк
13.08.2016
17:29:34
Посоны, кто-то под линухами прогал на сяпп?
Ч0т посложнее хеллоуворлда
В общем, когда вчера я собрал астериск с флагами для отладки, он в логах создал файл refs, в который льет, как я понимаю, все данные по ссылкам, чтобы впоследствии можно было проанализировать утечку памяти, если она есть. Жрет эта хуйня место адищенскими темпами. Прикол в том, что я не могу очистить его. Сначала грешил, что там выставлен sattr +i, но нифига. Не именованный канал тоже. Хз че за дела. А место не резиновое
#> refs
не выдает никаких ошибок, но и ничего не происходит. Хз, впервые такое вижу

here1am
13.08.2016
17:32:14
чо за сяпп?

Google

Марк
13.08.2016
17:33:10
cpp

here1am
13.08.2016
17:33:52
дай ls -l на файл и скажи, как пытаешься очистить
подозреваю, что язык тут ни при чём

Марк
13.08.2016
17:34:39
Я ж выше написал. Посмотри

here1am
13.08.2016
17:38:25
а, вижу. размер не меняется?
начало файла тоже не меняется?
решётка в команде - это же типа баш под рутом?

Марк
13.08.2016
17:39:53
Конечно
Хотя тут расковыряли, что это может быть связанно с открытым файлом в режиме append.

Admin
ERROR: S client not available

here1am
13.08.2016
17:42:57
вроде перенаправление должно обнулять всё равно

Марк
13.08.2016
17:43:22
это не работает нормально если логи открыты постоянно в аппенд режиме
указатель файла будет указывать на то же смещение
в этом случае файл коцается в ноль, потом на первом же аппенде создается спарсом до текущей позиции

here1am
13.08.2016
17:44:34
удобно

Марк
13.08.2016
18:06:54
Не факт, что она верна

Υπερβορεία
13.08.2016
18:10:21

Марк
13.08.2016
18:11:13
Лучше б ты чет по делу спизданул
Лан, подскажите чатик линухоебов

here1am
13.08.2016
18:12:07
попробуй перенести файл в тмпфс и очищать его там. подозреваю, что вся эта лабуда тама работать не будет, если так, то теория похожа на правду
можно в @devops_ru попробовать спросить

Марк
13.08.2016
18:13:07
Ща попробую. Спасибо

Google

here1am
13.08.2016
18:14:07
в чисто линуксовых как будто совсем школяры собралиь

Dmitry
13.08.2016
18:14:45
Там адъ

Марк
13.08.2016
18:18:17
Поэтому в линуховых я не сижу.

here1am
13.08.2016
19:07:20
лол, внезапно узнал, что у разных объектов одного и того же класса синхронно меняются аттрибуты
зачем так сделано?

Nobue
13.08.2016
19:13:40
есть атрибуты класса и атрибуты объекта

Andrey
13.08.2016
19:13:57

/dev
13.08.2016
19:15:50

here1am
13.08.2016
19:16:11

Andrey
13.08.2016
19:17:21

here1am
13.08.2016
19:17:23
и ещё, я не очень понимаю, чем отличаются t = Test() от t = Test

H
13.08.2016
19:17:52
во втором случае скобочек нет, очевидно же

/dev
13.08.2016
19:18:07

here1am
13.08.2016
19:18:27

Andrey
13.08.2016
19:18:59
Они общие для всех объектов класса

here1am
13.08.2016
19:19:17
да, проморгал это

Nobue
13.08.2016
19:19:27
это как ссылка на функцию только на класс
я кстати на практике кажется почти никогда не пользовался атрибутами классов

/dev
13.08.2016
19:21:04
Тут ещё забава в том, что классы в питоне — это callable-объекты

here1am
13.08.2016
19:21:39
да, по-моему это странно