En este artículo veremos cómo podemos hacer una aplicación PyQt5 que indique el precio en tiempo real del bitcoin.
Módulos requeridos e Instalación:
PyQt5: PyQt es un enlace de Python del kit de herramientas GUI multiplataforma Qt, implementado como un complemento de Python. PyQt es un software libre desarrollado por la firma británica Riverbank Computing.
pip install PyQt5
Requests: Requests le permite enviar requests HTTP/1.1 de forma extremadamente sencilla. No es necesario agregar manualmente strings de consulta a sus URL.
pip install requests
Beautiful Soup: Beautiful Soup es una biblioteca que facilita extraer información de las páginas web. Se asienta sobre un analizador HTML o XML, proporcionando modismos Pythonic para iterar, buscar y modificar el árbol de análisis.
pip install beautifulsoup4
Pasos para realizar la solicitud para obtener el precio de bitcoin en tiempo real:
1. Cree una ventana y establezca su dimensión y título
2. Cree una etiqueta para mostrar el precio
3. Cree un botón
4. Agregue una acción al botón
5. Dentro de la acción, con la ayuda de las requests, obtenga los datos del precio de bit coin
6. Usando sopa hermosa, convierta los datos en código html y encuentre el precio y guárdelo en la variable
7. Cambie el texto de la etiqueta, establezca el precio como texto
A continuación se muestra la implementación:
# importing libraries from bs4 import BeautifulSoup as BS import requests from PyQt5.QtWidgets import * from PyQt5 import QtCore, QtGui from PyQt5.QtGui import * from PyQt5.QtCore import * import sys class Window(QMainWindow): def __init__(self): super().__init__() # setting title self.setWindowTitle("PyQt5 Bit Coin ") # setting geometry self.setGeometry(100, 100, 400, 600) # calling method self.UiComponents() # showing all the widgets self.show() # method for widgets def UiComponents(self): # creating label to show bit coin price self.label = QLabel("//BIT-COIN//", self) # setting geometry of label self.label.setGeometry(50, 150, 300, 50) # setting its alignment self.label.setAlignment(Qt.AlignCenter) # setting font to the label self.label.setFont(QFont('Times', 15)) # setting border to the push button self.label.setStyleSheet("border : 3px solid black;") # creating push button to show current price button = QPushButton("Show price", self) # setting geometry to push button button.setGeometry(150, 300, 100, 40) # adding method to the push button button.clicked.connect(self.show_price) # setting tool tip to button button.setToolTip("Press to get Bit Coin Price") def show_price(self): # url of the bit coin price url = "https://www.google.com/search?q = bitcoin + price" # getting the request from url data = requests.get(url) # converting the text soup = BS(data.text, 'html.parser') # finding metha info for the current price ans = soup.find("div", class_="BNeawe iBp4i AP7Wnd").text # setting this price to the label self.label.setText(ans) # create pyqt5 app App = QApplication(sys.argv) # create the instance of our Window window = Window() # start the app sys.exit(App.exec())
Producción :
Publicación traducida automáticamente
Artículo escrito por rakshitarora y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA