Как уникальный идентификатор добавляется в мои (python) имена скриншотов Splinter? - PullRequest
2 голосов
/ 06 мая 2019

Я использую Splinter (в браузере Chrome), чтобы делать скриншоты страниц сайта.Я называю файлы точно так, как я хочу, но в конце моих имен файлов добавляются уникальные строки (например, «filename2k3j39.png»).Я не нашел ничего в документации Splinter или Selenium, которая бы указала, что они добавлены.Какая часть программы добавляет уникальные идентификаторы?Windows 10, Chromedriver, Selenium, Splinter?

Я проверил свои настройки Chrome и ничего не вижу.Файлы сохраняются в формате PNG, поэтому это не настройка PDF.

from splinter import Browser
executable_path = {'executable_path':r'C:\Users\me\chromedriver.exe'}
browser = Browser('chrome', **executable_path)

screenshot_path = browser.screenshot('C:/Home/Progress/me/screen shots/' + my_var + '/web/www_' + name + ' (' + now.strftime("%Y-%m-%d") + ')', full=True)

Результат www_Name (1-1-2000)2k3j39.png вместо www_Name (1-1-2000).png

1 Ответ

0 голосов
/ 12 июня 2019

Итак, я выяснил, что здесь происходит ... отладив библиотеку осколков, я увидел, что она не соответствует документу.Библиотека берет имя файла, использует его в качестве префикса для функции python для создания временного файла и добавляет недокументированный суффикс параметра (по умолчанию png).Затем он возвращает имя файла из функции.

Итак, я изменил свой код так: filename = tdir + datetime.date.today().strftime('%Y-%b-%d-image.png') actualName = element.screenshot(filename, suffix='.png', full=False) move(actualName, filename)

У меня также были проблемы с библиотеками python os для rename и remove в Windows, поэтому я использую shutil.move

...