|
|
||||||
Как распарсить список словарей?28.09.2018, 11:37. Показов 5855. Ответов 66
Метки нет (Все метки)
Есть список словарей, объем любой, разграничиваются только по id
наборы данных тоже ...
нужно привести к удобочитаемому виду и подготовить данные к передаче в базу данных, для последующего анализа
0
|
||||||
| 28.09.2018, 11:37 | |
|
Ответы с готовыми решениями:
66
Массив: Создать БД как список словарей, получив информацию из файла
Список из словарей |
|
|
||||||||||||
| 01.10.2018, 12:50 [ТС] | ||||||||||||
|
vic5710, речь ведется вот про эту программу https://github.com/IRIP/postov
Добавлено через 7 минут это все делаю в файле https://github.com/IRIP/postov/blob/master/main.py но на третьем этапе, возникают сложности. 1. Нужно аттачи сохранять отдельно, а в базу вставлять ссылки на них (относительные) Добавлено через 26 минут вот в 'attachments' вопрос как его отдельно сохранять Добавлено через 42 минуты * * * в attachments нужно каждый новый объект - отдельной записью так можно сделатЬ? Почему-то не работает
понятно, что нужно расписать... но вот с attachments - проблема
https://vk.com/page-1_41248202
0
|
||||||||||||
|
431 / 302 / 90
Регистрация: 03.12.2015
Сообщений: 741
|
|
| 01.10.2018, 13:09 | |
|
Вложения лучше не хранить в базе напрямую. Лучше хранить их в папке на диске, а в базе хранить - ссылку на этот файл (путь к файлу).
Обработка вложений может осуществляться следующим образом: - определить тип вложения (photo, video, doc и т.п.) - по типу определить ссылку для скачивания вложения (src, src_big, image_src) - скачать вложение в определенную папку (создать файл) - сохранить путь к этому файлу в базе Судя по документации с вложениями есть куча нюансов, например: - видео - могут занимать очень много места - app - по-моему вообще скачать невозможно - link - скачивать страницу по ссылке? - poll - что здесь считать вложением? и т.п. Еще вариант - вообще не сохранять вложения. Можно просто в базе сохранить информацию о вложении (полученную от vk), а сами вложения выкачивать по-необходимости. В общем, может не стоит скачивать весь vk? А исходить из целей обработки всех этих данных?
1
|
|
|
964 / 719 / 276
Регистрация: 10.12.2016
Сообщений: 1,764
|
||||||
| 01.10.2018, 13:17 | ||||||
|
для анализа сделай
0
|
||||||
|
|
||||||||||||||||||||||
| 01.10.2018, 13:49 [ТС] | ||||||||||||||||||||||
|
а Если так? создаем две таблицы, в одной source (дата, тайтл и т.п.) а во второй - attachments в следующем формате: https://github.com/IRIP/postov... te_core.py
vic5710, вот я и подумал, что в attachments нужно вкладывать весь словарь, целиком... но как?! вот тут: https://github.com/IRIP/postov/blob/master/main.py
* * * вот так не работает
* * * и их еще как-то нужно синхронизировать, чтобы КАЖДОМУ ПОСТУ соответствовал свой attach...
0
|
||||||||||||||||||||||
|
964 / 719 / 276
Регистрация: 10.12.2016
Сообщений: 1,764
|
||||||||||||
| 01.10.2018, 16:31 | ||||||||||||
1
|
||||||||||||
|
|
||||||
| 01.10.2018, 16:44 [ТС] | ||||||
|
vic5710, следующая проблема, с которой столкнулся - это количество постов.
подскажите, как сделать, чтобы сначала определялся первый (самый первый) пост, а затем вставить проверку, какой последний id этого источника в базе и от последнего берем +n Например, первый пост имеет ?w=wall-108964054_18 последние _18 - это id поста в источнике
0
|
||||||
|
964 / 719 / 276
Регистрация: 10.12.2016
Сообщений: 1,764
|
|
| 01.10.2018, 17:05 | |
|
ВК мне не интересен, судя по докам там есть offset, то есть получаешь первые 100, потом вторые и пока не кончатся
https://vk.com/dev/wall.get
1
|
|
|
|
||
| 01.10.2018, 17:33 [ТС] | ||
|
vic5710, здесь vk - как легкая, тренировочная площадка, не более
Добавлено через 25 минут
0
|
||
|
1741 / 913 / 480
Регистрация: 05.12.2013
Сообщений: 3,074
|
|
| 01.10.2018, 20:46 | |
|
Нужно использовать функции где iter в названии, они итератор возвращают
0
|
|
|
|
|
| 01.10.2018, 21:59 [ТС] | |
|
ТабуретY, попробовал вынести переменные
https://github.com/IRIP/postov... vk_core.py почему не работает так? Добавлено через 13 минут как мне отловить ошибку?
0
|
|
|
1741 / 913 / 480
Регистрация: 05.12.2013
Сообщений: 3,074
|
|||||||||||
| 01.10.2018, 22:42 | |||||||||||
|
Перестарался с выносом переменных, id надо было оставить
Так
1
|
|||||||||||
|
|
|
| 02.10.2018, 12:00 [ТС] | |
|
ТабуретY, на сколько я понял, если получать весь json это одно
а если писать в базу - то можно 1 раз в секунду делать запрос писать его в базу и опять делать запрос значит нужно из нашего main.py переносить это все куда-то... ? Добавлено через 15 минут В принципе, алгоритм понятен: 1. Создаем объект для данных. Получаем get_all_slow_iter все объекты (их количество, без импорта, только цифра) 2. Подключаемся к БД 3. Готовим данные для вставки в виде пар: наименование столбца - значение. Где max_count = от 1 до 5 (также как и limit) 4. Вставляем запись и получаем ее ID 5. Получаем следующий через offset = True (правильно?) 6. Когда объектов больше нет 0. Закрываем подключение к БД В базу данных можно вставлять записи только по одной. Для простоты восприятия нужно сделать визуализацию (какой то класс для работы с БД, в нем методы, типа) Добавлено через 25 минут Кто-нибудь слышал про это: https://www.sqlite.org/json1.html В json1 расширение загружаемого расширения , что реализует пятнадцать определяется приложением SQL-функции и два возвращающих табличное значение функций , которые полезны для управление в JSON контента, хранящегося в базе данных SQLite. Есть тринадцать скалярных функций Расширение json1 (в настоящее время) сохраняет JSON как обычный текст. Ограничения обратной совместимости означают, что SQLite может только храните значения NULL, целые числа, числа с плавающей запятой, текст, и капли. Невозможно добавить шестой Тип "JSON". Расширение json1 (в настоящее время) не поддерживает двоичную кодировку из JSON. Эксперименты не удалось найти двоичную кодировку это значительно меньше или быстрее, чем простая текстовая Кодировка. (Текущая реализация анализирует текст JSON на более чем 300 Мб / с.) Все функции json1 в настоящее время выдают ошибку, если любой из их аргументы-это Blob-объекты, так как Blob-объекты зарезервированы для будущего улучшения, в котором Blob-объекты будут хранить двоичную кодировку для JSON.
0
|
|
|
1741 / 913 / 480
Регистрация: 05.12.2013
Сообщений: 3,074
|
||
| 02.10.2018, 13:20 | ||
|
0
|
||
|
|
||
| 02.10.2018, 14:20 [ТС] | ||
|
ТабуретY, по всем канонам - программист, это прежде всего, писатель, который описывает как должна работать та, или иная функция в программе (книге)
Я по своей натуре, много лет был именно писателем - составлял планы, описывал функции и т.п. И часто сталкивался с программистами, в итоге, пришел к тому, что мне нужно самому становиться программистом... иначе никак не побороть человеческий фактор. я очень, серьезно, очень хочу понять, о чем вы пишите Со стороны, это может показаться, так, что я жду, Пока за меня сделают всю работу, но заверяю, это не так. Я постоянно читаю, ищу варианты как решить эту, по сути, не сложную задачу- программу которая собирает в базу с указанного id все посты исключая дубли но пока, что-то не очень получается
0
|
||
|
1741 / 913 / 480
Регистрация: 05.12.2013
Сообщений: 3,074
|
|||
| 02.10.2018, 14:55 | |||
|
0
|
|||
|
964 / 719 / 276
Регистрация: 10.12.2016
Сообщений: 1,764
|
|
| 14.11.2018, 08:34 | |
|
давно уже решена
https://github.com/amirziai/flatten
0
|
|
|
|
|||||||||||
| 14.11.2018, 10:18 [ТС] | |||||||||||
|
vic5710, как-то оно странно
Кликните здесь для просмотра всего текста
разложило наверно, нужно КАЖДЫЙ пост раскладывать а не весь wall скопом? код: Кликните здесь для просмотра всего текста
0
|
|||||||||||
| 14.11.2018, 10:18 | |
|
Список, состоящий из словарей Список словарей. Групповая обработка
Удаление пустых словарей и список из структуры Не могу правильно отфильтровать список словарей Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
интеграция AnyLogic с самописным REST API и переход на Odoo
anaschu 03.07.2026
Успешная интеграция AnyLogic с самописным REST API и переход на промышленную Odoo WMS
Сегодня проделал огромный путь от простой симуляции физических процессов до построения полноценной. . .
|
Поиск всех путей на ориентированном графе. Linux
dcc0 02.07.2026
Переработка старого кода из моей статьи.
Через несколько переработок от PHP кода к C89 (надеюсь, 89).
Но довольно запутанно получилось. Код для Linux.
Но если убрать time и то, что с ним. . .
|
Сам себя обучал rest api
anaschu 02.07.2026
Педагогический лайфхак: Почему чистый REST API для ученика намного круче, чем готовые библиотеки
Когда мы отказались от капризного JAR-файла AnyLogic и переписали код на стандартный HttpClient,. . .
|
rest api anylogic - выполнение модели на своём русском сайте
anaschu 02.07.2026
Как подружиться с AnyLogic Cloud API, победить провайдеров и развернуться Java-бэкенд в Docker на бесплатном хостинге: Двухдневный лог борьбы
Всем привет! Хочу поделиться свежим (и довольно. . .
|
|
Где деньги лежат
kumehtar 02.07.2026
Это - японская подводная лодка I-52 (тип C2, кодовое имя Momi) вышла из Японии в марте 1944 года с миссией в оккупированную немцами Францию (Лорьян). Это была одна из «Янаги»-миссий по обмену. . .
|
Krabik для WoW 3.3.5a, многоязычный
AmbA 02.07.2026
Допилил бота, думаю что окончательно. Изменения:
- добавлена многоязычность
- добавлено снятие скриншотов
- добавлено поддержание бафов хождения по воде (для жреца, дк и шамана)
- и так, по. . .
|
Алиса нашла кучу ошибок компиляции и запуска в проекте, который без проблем компилировался и запускался)))
anaschu 30.06.2026
Я пока посмеюся, но завтра проверю. А вообще интерсно. Дал алисе файл, в котором точно нет ошибок компиляции и запуска, и попросил их найти. Нашла кучу)))
Критические ошибки, мешающие компиляции и. . .
|
сукцессия 16. Общий обзор, в основном что бы другие ии поняли
anaschu 29.06.2026
# Передаточный документ: модель микоризной сукцессии (для нового чата)
Этот документ предназначен для того, чтобы новый чат Claude мог продолжить
работу без необходимости заново разбираться в. . .
|