Я создаю браузер с использованием PyQt5. Это довольно большой код, но это основная проблема, с которой я сталкиваюсь. Код такой:
import sys
from PyQt5.QtCore import QUrl
from PyQt5.QtWebEngineWidgets import QWebEngineView
from PyQt5.QtWidgets import QApplication, QMainWindow
app = QApplication(sys.argv)
web = QWebEngineView()
file = open("example.html", "r")
html = file.read()
web.setHtml(html)
file.close()
web.show()
sys.exit(app.exec_())
Проблема в том, что рендеринг довольно странный.Изображение рендеринга здесь. содержимое файла example.html:
<!DOCTYPE html>
<head><title>JS Example</title></head>
<h1>JS example</h1>
<p><button type = 'button' onclick = "document.getElementById('tobeshown').style.display='block'">Show hidden parts of this page</button></p>
<p id = 'tobeshown' style = "display:none">
Peekaboo!
</p>
<p>
<button type = 'button' onclick="document.getElementById('tobeshown').style.display='none'">Hide it!</button>
</p>
</body>
</html>
Ожидаемый результат (в браузере Mozilla Firefox): здесь
Может ли кто-нибудь сказать мне, почему механизм рендеринга PyQt5 создает эти символы вверху? И что я могу сделать, чтобы решить это? Большое спасибо.
</button><p>
должно быть</button></p>
?! - person Maurice Meyer   schedule 25.10.2019print(html)
, она выводит<!Doctype html>
и так далее. - person Nobody   schedule 25.10.2019