Доброе время суток! Хочу создать сайт с тестированием. У меня имеется перечень тестов(более 30000) следующего формата: //// Вопрос Вариант ответа 1 Вариант ответа 2 +Вариант ответа 3 Вариант ответа 4 или Вопрос +Вариант ответа 1 Вариант ответа 2 +Вариант ответа 3 Вариант ответа 4 +Вариант ответа 5 //// Разумеется, если я буду копировать и вставлять в формы на различных сайтах, то на это уйдет много месяцев. Возможно ли это как то оптимизировать?
Я думаю что лучше так: --- Сообщение объединено с предыдущим 12 янв 2021 Вопрос: +Ответ1 +Ответ2 Ответ3
Можно парсер написать, на питоне, например, который будет все это в жсон переводить. Если нужна помощь, пиши в тг, помогу) UPD: Автоматизировать можно через плагин самописный, загрузив туда базу в жсоне.
7lt, Как по мне, оптимальное решение - на лету парсить питоном. Например, на сайте есть динамическая подгрузка. Мы берем, читаем n-ое кол-во строк из файла, декодим их split'ами (explode'ами на php) и радуемся жизни, ибо у нас есть динамически подгружаемый массив из файла. Ну либо, как вариант, декоднуть все разом, пихнуть в какой-нибудь sqlite, и потом оттуда читать, но я SQL не люблю в принципе, имхо, он не удобен)
Код import json res = [] with open('input.txt', 'r') as f: questions = f.read().split('\n\n') for question in questions: quest = question.split('\n')[0] answers = question.split('\n')[1:] incorrect_answers = [] correct_answers = [] for answer in answers: if answer.startswith('+'): correct_answers.append(answer[1:]) else: incorrect_answers.append(answer) res.append({'question': quest, 'correct_answers': correct_answers, 'incorrect_answers': incorrect_answers}) with open('output.txt', 'w') as f: f.write(json.dumps(res)) print(json.dumps(res)) Python import json res = [] with open('input.txt', 'r') as f: questions = f.read().split('\n\n') for question in questions: quest = question.split('\n')[0] answers = question.split('\n')[1:] incorrect_answers = [] correct_answers = [] for answer in answers: if answer.startswith('+'): correct_answers.append(answer[1:]) else: incorrect_answers.append(answer) res.append({'question': quest, 'correct_answers': correct_answers, 'incorrect_answers': incorrect_answers}) with open('output.txt', 'w') as f: f.write(json.dumps(res)) print(json.dumps(res)) - Реализация на питоне (тестил на 3.6)