@python_beginnersЭта группа больше не существует

Страница 1085 из 1885
Romka
08.01.2017
23:33:14
На тогда только циклом

tufedtm
08.01.2017
23:33:15
зачем регулярки, если можно использовать beautifulsoup у меня проблема именно в разном уровне вложенности (3, 4 ...)

Romka
08.01.2017
23:37:10
Циклом щитать количество открывающих и закрывающих тегов и на этой основе строить вложенности

Долго, но как вариант

Google
tufedtm
08.01.2017
23:44:41
код давай
https://paste.ubuntu.com/23767592/

это нужно с сохранением порядка вложенности что-то вроде многоуровнего меню

Johnnie
08.01.2017
23:49:15
'items': [str(x) for x in item]

страшные вещи тут происходят я смотрю

tufedtm
08.01.2017
23:49:52
страшные вещи тут происходят я смотрю
это да, экспериментировал, осталось

думал их сделать экземплярами bs

b0g3r
08.01.2017
23:51:15
а в чем в общем-то проблема?

входные данные я вижу, а какие хочется видеть на выходе?

не очень понимаю фразу "перенести в базу с сохранением вложенности"

tufedtm
08.01.2017
23:53:11
нужно заполнить инфой из файла базу чтобы выводить её на сайте не потеряв структуру родители-дети

Johnnie
08.01.2017
23:53:32
а база какой структуры?

b0g3r
08.01.2017
23:54:02
ну логично, что либо какой-нибудь nosql использовать, либо ээ, ну сделать базу с такой же структурой и её заполнять)

Google
b0g3r
08.01.2017
23:55:16
тебе по-моему нужно базу спроектировать, а не переносить в нее)

tufedtm
09.01.2017
00:03:59
я это вижу примерно так сначала сделать json в котором только нужные данные потом заносить его в бд parent title parent_id item title head text parent_id image item_id image file item_id file

b0g3r
09.01.2017
00:07:00
item item_id title head text parent_item_id image parent_item_id image file parent_item_id file

item является предком item

image и file - тоже предки item

tufedtm
09.01.2017
00:12:08
действительно parent был лишним

b0g3r
09.01.2017
00:13:27
просто будет несколько root-item на страничке

глазомер мне подсказывает, что в примере их два

парсить - рекурсивно

берешь item, а потом пытаешься взять у него head text files images items - вот тут рекурсия

53r63rn4r
09.01.2017
00:17:58
Уахахахахахаха

:DD

Буду клепать с собой мемасики

b0g3r
09.01.2017
00:19:28
;)

53r63rn4r
09.01.2017
00:21:04
На 404 повешу

Aleksandr
09.01.2017
00:25:41
а почему вы эти итемы с родителем просто строкой не возьмете?

зачем хранить разборные?

b0g3r
09.01.2017
00:27:05
так там не очень простая иерархичная структура же

Aleksandr
09.01.2017
00:27:49
на сколько не простая?

Google
b0g3r
09.01.2017
00:28:20
ну так есть же ссылочка

как все <item>...</item>, а именно содержимое атрибутов, вложенных элементов перенести в базу? с сохранением уровней вложенности (которая там разная) https://paste.ubuntu.com/23767479/ к каком направлении смотреть?

Aleksandr
09.01.2017
00:30:22
а что за структура такая?

на хмл не похоже

b0g3r
09.01.2017
00:33:40
оно и есть

Aleksandr
09.01.2017
00:46:51
похоже я его дано не видел((

tufedtm
09.01.2017
00:50:34
берешь item, а потом пытаешься взять у него head text files images items - вот тут рекурсия
спасибо, попробую хотя мне непонятно как я буду заполнять parent_id

b0g3r
09.01.2017
00:51:36
У каждого итема будет уникальный id (pk)

Внутри рекурсивной функции всегда имеем parent item в области видимости

Жсон - иерархическая структура, боюсь перевод в нее только запутает и потратит время

В первом вызове просто не записываем parent_id

tufedtm
09.01.2017
00:57:22
b0g3r
09.01.2017
00:57:32
А какой орм?

Тогда не parent id, а просто parent (fk)

tufedtm
09.01.2017
00:57:54
скорее всего возьму peewee

b0g3r
09.01.2017
00:58:08
Подойдёт вполне

А может в сторону монго посмотреть?

tufedtm
09.01.2017
01:01:15
Google
b0g3r
09.01.2017
01:02:21
Не знаю, соуп, не соуп) должна принимать итем для парсинга + парент итем (наверное уже orm объектом)

tufedtm
09.01.2017
01:03:19
А может в сторону монго посмотреть?
с ней дела не имел jsonfield есть и в pg ведь зачем тогда монго

b0g3r
09.01.2017
01:05:12
Не знаю, соуп, не соуп) должна принимать итем для парсинга + парент итем (наверное уже orm объектом)
Внутри первым делом создавать орм-итем для переданного итема, потом создавать файлы и изображения, потом для каждого вложенного итема вызывать функцию

При запуске из рута пусть parent-item=None

А теперь я спать ;)

Baal
09.01.2017
05:52:12
Есть ли способ как нибудь объявлять переменные не так: a, b, c = 0, 0, 0 А как нибудь так a, b, c = 0?

Бесит сука не могу

Когда переменных штук 20 заколебешься нули писать

Igor
09.01.2017
05:53:01
a = b = c = 0

Baal
09.01.2017
05:53:17
Ух ты!!

Обязательно попробую, спасибо

Igor
09.01.2017
05:53:50
но я бы постарался этого избегать. к тому же, есть интересный нюанс со списками и словарями

In [14]: a = b = [] In [15]: a.append(1) In [16]: a Out[16]: [1] In [17]: b Out[17]: [1]

Baal
09.01.2017
05:54:50
Это про то, что а и b ссылаются на один и ттот же объект? Я так понимаю, что это касается только строк

Igor
09.01.2017
05:55:02
как раз строки иммутабельны

а вот словари и списки - не очень

Baal
09.01.2017
05:55:23
Т.е. если я объявлю a = b = 0

Igor
09.01.2017
05:55:37
то все ок

Baal
09.01.2017
05:55:44
А потом a = 1, то b = 0

Igor
09.01.2017
05:56:00
In [25]: a = b = 0 In [26]: a += 1 In [27]: a, b Out[27]: (1, 0)

Google
Igor
09.01.2017
05:56:01
да

и строки тоже ок. и float.

и кортежи (tuple)

а вот листы и дикты - ахтунг

насчет сетов не уверен

b0g3r
09.01.2017
05:57:16
Baal
09.01.2017
05:57:20
Мне только для числовых переменных. Спасибо огромное.

Igor
09.01.2017
05:57:34
Изменяемые же
да, спасибо )

b0g3r
09.01.2017
05:57:52
Есть фрозенсет)

Igor
09.01.2017
05:57:55
Мне только для числовых переменных. Спасибо огромное.
не за что, но я б еще задумался, действительно ли нужны 20 числовых переменных, для чего, всё такое..

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

Baal
09.01.2017
05:59:25
Да понятно, что 20 это я преувеличил, но иногда за 10 заходит. А пока учишься бывает, что лишние использую. Потом, когда уве написал программу, обычно вижу, что 2-3 переменные лишние

Igor
09.01.2017
05:59:40
ну ладно :)

Igor
09.01.2017
06:00:33
паскаль с тобой не согласен. ?
так мi и не паскаль вроде здесь изучаем!

Baal
09.01.2017
06:00:47
Вообще наверное оба подхода имеют смысл. С одной стороны когда все переменные объявлены в одном блоке, то это проще отследить

Страница 1085 из 1885

Эта группа больше не существует Эта группа больше не существует