import sys from PyQt5.QtCore import * from PyQt5.QtWidgets import * from PyQt5.QtWebEngineWidgets import * class Browser(QMainWindow): def __init__(self): super().__init__() self.browser = QWebEngineView() self.browser.setUrl(QUrl("https://www.google.com")) self.setCentralWidget(self.browser) self.showMaximized() # Barra de navegação navbar = QToolBar() self.addToolBar(navbar) # Botão Voltar back_btn = QAction("Voltar", self) back_btn.setStatusTip("Voltar para a página anterior") back_btn.triggered.connect(self.browser.back) navbar.addAction(back_btn) # Botão Avançar forward_btn = QAction("Avançar", self) forward_btn.setStatusTip("Avançar para a próxima página") forward_btn.triggered.connect(self.browser.forward) navbar.addAction(forward_btn) # Botão Recarregar reload_btn = QAction("Recarregar", self) reload_btn.setStatusTip("Recarregar a página atual") reload_btn.triggered.connect(self.browser.reload) navbar.addAction(reload_btn) # Barra de pesquisa self.url_bar = QLineEdit() self.url_bar.returnPressed.connect(self.navigate_to_url) navbar.addWidget(self.url_bar) # Botão Ir go_btn = QAction("Ir", self) go_btn.setStatusTip("Ir para a URL digitada") go_btn.triggered.connect(self.navigate_to_url) navbar.addAction(go_btn) # Atualizar a barra de endereço quando a página for carregada self.browser.urlChanged.connect(self.update_urlbar) def navigate_to_url(self): q = QUrl(self.url_bar.text()) if q.scheme() == "": q.setScheme("http") self.browser.setUrl(q) def update_urlbar(self, q): self.url_bar.setText(q.toString()) self.url_bar.setCursorPosition(0) app = QApplication(sys.argv) QApplication.setApplicationName("Meu Navegador") window = Browser() app.exec_()