Есть простая html страница с popup'ом.
Нужно запускать python скрипт при открытии попапа (попап открывается при нажатии на кнопку).
В скрипте есть цикл и он выполняется пока не получает данные из вне и когда цикл завершается - выводится информация, эту информацию нужно выводить в попап.
Как это можно реализовать?
Максим Тимофеев, не я, меня смущает постановка вопроса топикстартером (учитывая его остальные вопросы), поэтому решил уточнить что именно он имеет ввиду.
Пробовал cgi, страница грузится пока питон скрипт не отработает и потом выводит информацию, а нужно чтобы сначала выводил что-то и после завершение тоже.
пока питон скрипт не отработает
ЧЕГО не отрабатывает? нужно, чтобы "запустилась" команда какая-то? А потом уже "вывело" страницу??? и потом выводит информацию
а нужно чтобы сначала выводил что-то и после завершение тоже.
ЗАВЕРШЕНИЯ ЧЕГО????
На чемзапускается скрипт питон, на локальном компе, виндовс,убунту? На СМS : django, bitrix,joomla,wp? Может, на телефоне с android запускаете скрипт? Или уже скрипт в apk упаковали и запускаете этот хлам попапов со скриптами на телефоне?? Гулять, так гулять... А может из 1С ки скрипт Python с Popup запускается? Или, быть может, из Экзель? Может Popen а не Popup ??
Почему спрашиваю? Чтобы ЗАРАНЕЕ ПРАВИЛЬНО ОТВЕТИТЬ , что подправить, чтобы работал скрипт более 20сек без ошибки.
В целом, пожалуста, скажите, какова задача? Не стесняйтесь, что-ли)) Неважно, для чего, хоть лотерею парси)), просто есть какая-то цель или задача, код исходный какой-то?
# что то "вроде этого" надо? "Секретный запуск секретного скрипта"?)) Синхронно-асинхронного?
runfunc=(['ffmpeg', '-i', 'video1234.mp4'])
runcmd=' '.join(runfunc)
import subprocess
p = subprocess.Popen(runcmd, bufsize=2048, shell=True,
stdin=subprocess.PIPE, stdout=subprocess.PIPE)
p.wait() # allow external program to work
result_str = p.stdout.read() # read the result to a string
blayloock012018, Скрипт на убунту, хтмл на апаче. Сам по себе скрипт питона при выполнении сначала выводит какую-то инфу, потом идет цикл (от 5 до 15 минут) и выводится другая инфа.