Una guía paso a paso para implementar la aplicación a simpláctica utilizando CloudFlared, Beautifulsoup, Pandas, Plotly para el raspado y visualización web de criptomonedas en tiempo real en tiempo real

En este tutorial, atravesaremos un enfoque confiable y sin problemas utilizando CloudFlared, una herramienta de CloudFlare que proporciona un enlace seguro y de acceso público a su aplicación a simpatículo. Al final de esta guía, lograremos un tablero de criptomonedas completamente funcional que raspa y visualiza dinámicamente los datos de precios en tiempo real de CoinMarketCap. Puede rastrear las 10 criptomonedas principales, comparar sus precios y capitalizaciones de mercado, y ver los gráficos interactivos para obtener mejores ideas.

!pip install streamlit requests beautifulsoup4 pandas matplotlib plotly
!npm install -g localtunnel

Primero, el comando anterior instala las dependencias necesarias para construir e implementar un tablero de criptomonedas basado en optimismo. El primer comando instala bibliotecas esenciales de Python como Streamlit para la aplicación web, BeautifulSoup4 para raspado web, pandas para manipulación de datos y trama para visualizaciones interactivas. El segundo comando instala LocalTunnel, que crea una URL pública para acceder a la aplicación de transmisión desde Colab.

%%writefile app.py
import streamlit as st
import requests
from bs4 import BeautifulSoup
import pandas as pd
import plotly.express as px


# Function to scrape cryptocurrency prices
def scrape_crypto_prices():
    url = "https://coinmarketcap.com/"
    headers = {"User-Agent": "Mozilla/5.0"}
    response = requests.get(url, headers=headers)
   
    if response.status_code != 200:
        return pd.DataFrame(), "Error fetching data."
   
    soup = BeautifulSoup(response.text, "html.parser")
    rows = soup.select("tbody tr")[:10]  # Get top 10 cryptocurrencies
   
    data = []
    for row in rows:
        columns = row.find_all("td")
        name = columns[2].find("p").text  # Crypto name
        symbol = columns[2].find("p", class_="coin-item-symbol").text  # Symbol
        price = columns[3].text  # Price
        change = columns[4].text  # % Change
        market_cap = columns[6].text  # Market Cap
        data.append([name, symbol, price, change, market_cap])
   
    return pd.DataFrame(data, columns=["Name", "Symbol", "Price", "% Change", "Market Cap"]), None


# Streamlit UI
st.title("📈 Live Cryptocurrency Prices")


data, error = scrape_crypto_prices()
if error:
    st.error(error)
else:
    st.dataframe(data)


    data["Price"] = data["Price"].replace({"$": "", ",": ""}, regex=True).astype(float)


    fig = px.bar(data, x="Symbol", y="Price", color="Name", title="Top 10 Cryptos by Price")
    st.plotly_chart(fig)
   
    fig_market_cap = px.pie(data, names="Name", values="Market Cap", title="Market Cap Distribution")
    st.plotly_chart(fig_market_cap)


# Footer
st.markdown("🔄 Data scraped from CoinMarketCap. Updated in real-time.")

Aquí, definimos una aplicación web aerodinámica que raspa los precios de las criptomonedas en tiempo real de CoinMarketCap y los muestra en un tablero interactivo. Utiliza BeautifulSoup4 para extraer las 10 criptomonedas principales, incluido su nombre, símbolo, precio, cambio porcentual y capitalización de mercado. Los datos raspados se procesan utilizando pandas y se visualizan con Plotly. La aplicación presenta un gráfico de barras para la comparación de precios y un gráfico circular para la distribución de capitalización de mercado. La aplicación muestra un mensaje de error si se produce un error al obtener datos. Finalmente, una nota de pie de página indica que los datos se actualizan dinámicamente desde CoinMarketCap.

import subprocess
import time


# Start Streamlit in the background
subprocess.Popen(["streamlit", "run", "app.py", "--server.port=8501"])


# Wait for Streamlit to start
time.sleep(5)


# Start Cloudflare tunnel and expose the app
!./cloudflared tunnel --url http://localhost:8501 --no-autoupdate

Finalmente, el código anterior inicia la aplicación Streamlit en segundo plano usando subprocess.popen y le permite ejecutarse en el puerto 8501. Un breve retraso (Time.sleep (5)) asegura que la aplicación se inicialice correctamente antes de iniciar el túnelfleado en la nube, lo que crea una URL pública para acceder a la aplicación desde Google Colab sin autenticación o configuración adicional.

Vista de aplicaciones
Descargue un archivo CSV de los datos

En conclusión, este tutorial proporcionó una guía paso a paso para construir e implementar una aplicación de seguimiento de criptomonedas en tiempo real utilizando Streamlit, Beautifulsoup, Pandas y Plotly. Reprimimos con éxito los datos de criptográfico en vivo de CoinMarketCap, los mostramos en un tablero interactivo y lo alojamos sin problemas utilizando CloudFlared. A diferencia de los métodos de alojamiento tradicionales, este enfoque garantiza una implementación fácil sin problemas de autenticación. Ya sea que sea un principiante que explore el raspado web y la visualización de datos o un desarrollador que busque un método de implementación ligero y accesible, este tutorial lo equipa con las herramientas para construir y compartir aplicaciones web interactivas de manera eficiente.


Aquí está el Cuaderno de colab y Archivo CSV para el proyecto anterior. Además, no olvides seguirnos Gorjeo y únete a nuestro Canal de telegrama y LinkedIn GRsalpicar. No olvides unirte a nuestro Subreddit de 80k+ ml.

🚨 Lectura de lectura recomendada Liberaciones de investigación de IA: un sistema avanzado que integra el sistema de IA del agente y los estándares de cumplimiento de datos para abordar las preocupaciones legales en los conjuntos de datos de IA


Asif Razzaq es el CEO de MarktechPost Media Inc .. Como empresario e ingeniero visionario, ASIF se compromete a aprovechar el potencial de la inteligencia artificial para el bien social. Su esfuerzo más reciente es el lanzamiento de una plataforma de medios de inteligencia artificial, MarktechPost, que se destaca por su cobertura profunda de noticias de aprendizaje automático y de aprendizaje profundo que es técnicamente sólido y fácilmente comprensible por una audiencia amplia. La plataforma cuenta con más de 2 millones de vistas mensuales, ilustrando su popularidad entre el público.