<!DOCTYPE html> отсутствует в Selenium Python page_source
Я использую Selenium для функционального тестирования приложения Django и решил попробовать html5lib
в качестве способа проверки html-вывода. Одна из валидаций заключается в том, что страница начинается с тега <!DOCTYPE ...>
.
Проверки модульных тестов с response.content.decode()
все работали нормально, правильно отмечая ошибки, но я обнаружил, что вывод Selenium driver.page_source
начинается с тега html
. Я дважды проверил, что использую правильный шаблон, изменив заголовок и убедившись, что изменение отражено в page_source
. Также отсутствует новая строка и отступ между тегом <html>
и тегом <title>
.
Вот как выглядят первые несколько строк в браузере Firefox.
<!DOCTYPE html>
<html>
<head>
<title>NetLog</title>
</head>
Вот код на языке Python.
self.driver.get(f"{self.live_server_url}/netlog/")
print(self.driver.page_source
А вот первые несколько строк печати при запуске под веб-драйвером Firefox.
<html><head>
<title>NetLog</title>
</head>
Тело страницы выглядит нормально, но отсутствующая новая строка также присутствует между </body>
и </html>
. Это ожидаемое поведение? Я полагаю, что в качестве обходного пути я мог бы просто вставить тег DOCTYPE перед строкой, но я бы предпочел, чтобы он вел себя как положено.
Chris