Exploração preliminar da aplicação Python Crawler na plataforma FMZ -- rastreando o conteúdo do anúncio da Binance

Autora:Lydia., Criado: 2022-12-16 14:32:19, Atualizado: 2023-09-20 11:06:05

img

Exploração preliminar da aplicação Python Crawler na plataforma FMZ Exploração do conteúdo do Anúncio da Binance

Recentemente, vi que não há informações relevantes sobre os rastreadores Python na comunidade e biblioteca, com base no espírito de desenvolvimento integral do QUANT, aprendi alguns conceitos e conhecimentos relacionados aos rastreadores simplesmente. Após algum entendimento, descobri que o pit da tecnologia crawler é bastante grande. Este artigo é apenas para o estudo preliminar da tecnologia crawler. Faça a prática mais simples na plataforma FMZ Quant Trading sobre a tecnologia do rastreador.

Demandas

Para aqueles que gostam de subscrever novas ações, eles sempre esperam obter as informações de moeda na casa de câmbio na primeira vez. É obviamente irrealista para as pessoas monitorarem o site da casa de câmbio o tempo todo.

Exploração preliminar

Um programa muito simples é usado para começar (um script de rastreador realmente poderoso é muito mais complexo, então leve seu tempo primeiro). A lógica do programa é muito simples. Ele permite que o programa acesse a página de anúncios da troca constantemente, analise o conteúdo HTML obtido e detecte se o conteúdo do rótulo específico é atualizado.

Código de execução

No entanto, considerando que os requisitos são muito simples, você pode escrever diretamente.

As seguintes bibliotecas Python devem ser utilizadas:Requests, que pode ser simplesmente entendida como uma biblioteca utilizada para aceder a páginas web.Bs4, que pode ser simplesmente entendida como uma biblioteca usada para analisar código HTML em páginas da web.

Código:

from bs4 import BeautifulSoup
import requests

urlBinanceAnnouncement = "https://www.binancezh.io/en/support/announcement/c-48?navId=48"  # Binance announcement page address

def openUrl(url):
    headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.108 Safari/537.36'}
    r = requests.get(url, headers=headers)     # Use the requests library to access the url, i.e. the address of the Binance announcement page
    if r.status_code == 200:
        r.encoding = 'utf-8'
        # Log("success! {}".format(url))
        return r.text                          # Return page content text if access is successful
    else:
        Log("failed {}".format(url))


def main():
    preNews_href = ""
    lastNews = ""
    Log("watching...", urlBinanceAnnouncement, "#FF0000")
    while True:
        ret = openUrl(urlBinanceAnnouncement)
        if ret:
            soup = BeautifulSoup(ret, 'html.parser')                       # Parse web text into objects
            lastNews_href = soup.find('a', class_='css-1ej4hfo')["href"]   # Find a specific tag, get href
            lastNews = soup.find('a', class_='css-1ej4hfo').get_text()     # Get the content in this tag
            if preNews_href == "":
                preNews_href = lastNews_href
            if preNews_href != lastNews_href:                              # A new announcement is generated when a label change is detected
                Log("New Cryptocurrency Listing update!")                  # Print the prompt message
                preNews_href = lastNews_href
        LogStatus(_D(), "\n", "preNews_href:", preNews_href, "\n", "news:", lastNews)
        Sleep(1000 * 10)

Operação

img img img

Pode ser estendido, por exemplo, quando um novo anúncio é detectado. Analisar a nova moeda no anúncio e colocar uma ordem automaticamente para subscrever novas ações.


Relacionados

Mais.