Колба, возвращающая html-страницу при обработке другого fx, который долго загружается - PullRequest
0 голосов
/ 19 ноября 2018

Я работаю над веб-приложением Flask с селеном.Он принимает URL-адрес в качестве входных данных, выполняет некоторые вычисления для различных элементов, а затем делает снимок экрана с этой страницей, однако часть снимка экрана занимает не менее 5-7 секунд и действительно зависит от того, когда их веб-сайт полностью загружается.

Iне могу обернуться, как загрузить страницу с вычислениями, но выложить часть скриншота до тех пор, пока не загрузится новая страница с вычислениями;Потенциально просто показывает загрузочный GIF в области, где будет отображаться изображение.Я думал о рендеринге шаблона только с вычислениями, а затем при загрузке страницы через ajax, передал fx для изображения, через jquery запустил gif загрузки вместо изображения и затем обновлял страницу каждые x секунд через jquery, пока это не было сделано, нокажется плохой практикой любые комментарии / комментарии очень ценятся.

@app.route('/', methods=['GET', 'POST'])
def index():
    # bunch of calcs happen first
    imgofsite = ''
    driver.set_window_size(width=800, height=600)
    driver.get(site)  # whatever reachable url
    timeout = time.sleep(5)
    if not error:
        name_it = str(site)
        apng, seppng, namepng = name_it.partition('//www.')
        time.sleep(2)
        if os.path.isfile(namepng.lower().replace('/', '-') + '.png'):
            pass
        else:
            driver.save_screenshot('./static/' + name.lower().replace('/', '-') + '.png')

            imgofsite = namepng.lower().replace('/', '-') + '.png'
...