avatar of 发明者量化-小小梦 发明者量化-小小梦
Suivre Messages privés
4
Suivre
1271
Abonnés

Une étude préliminaire sur l'application du crawler Python sur la plateforme FMZ - crawling Binance annonce content

Créé le: 2021-11-12 17:08:26, Mis à jour le: 2024-12-04 21:18:45
comments   15
hits   3831

Une étude préliminaire sur l’application du crawler Python sur la plateforme FMZ - crawling Binance annonce content

Une étude préliminaire sur l’application du crawler Python sur la plateforme FMZ - crawling Binance annonce content

J’ai récemment examiné la communauté et la bibliothèque et je n’ai trouvé aucune information pertinente sur les robots Python, basée sur l’esprit de développement complet en tant que QUANT. J’ai appris les concepts et les connaissances liés aux crawlers très simplement. Après en avoir appris davantage sur le sujet, j’ai découvert que la « technologie des robots d’exploration » était un « gouffre » assez vaste. Cet article n’est qu’une exploration préliminaire de la « technologie des robots d’exploration ». Faisons la pratique la plus simple de la technologie du crawler sur la plateforme de trading quantitative FMZ.

besoin

Pour les traders qui aiment investir dans de nouvelles pièces, ils espèrent toujours obtenir des informations sur la cotation des pièces en bourse le plus rapidement possible. Il n’est évidemment pas réaliste de surveiller manuellement le site Web de l’échange. Vous devez ensuite utiliser un script d’exploration pour surveiller la page d’annonce d’échange et détecter les nouvelles annonces afin que vous puissiez être averti et rappelé dès que possible.

Exploration initiale

Commençons par un programme très simple (un script de crawler vraiment puissant est beaucoup plus compliqué, alors prenez votre temps). La logique du programme est très simple, elle consiste à permettre au programme d’accéder en continu à la page d’annonce de l’échange, d’analyser le contenu HTML obtenu et de détecter si le contenu d’une balise spécifique est mis à jour.

Code de mise en œuvre

Vous pouvez utiliser certains frameworks d’exploration utiles. Cependant, étant donné que l’exigence est très simple, il est également possible de l’écrire directement.

Des bibliothèques Python sont nécessaires : requests, qui peut être simplement compris comme une bibliothèque utilisée pour accéder aux pages Web. bs4, qui peut être simplement compris comme une bibliothèque utilisée pour analyser le code HTML d’une page Web.

Code:

from bs4 import BeautifulSoup
import requests

urlBinanceAnnouncement = "https://www.binancezh.io/en/support/announcement/c-48?navId=48"  # 币安公告页面地址

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)     # 使用requests库访问url,即币安的公告网页地址
    if r.status_code == 200:
        r.encoding = 'utf-8'
        # Log("success! {}".format(url))
        return r.text                          # 访问成功的话返回网页内容文本
    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')                       # 把网页文本解析为对象
            lastNews_href = soup.find('a', class_='css-1ej4hfo')["href"]   # 查找特定的标签,获取href
            lastNews = soup.find('a', class_='css-1ej4hfo').get_text()     # 获取这个标签中的内容
            if preNews_href == "":
                preNews_href = lastNews_href
            if preNews_href != lastNews_href:                              # 检测到标签发生变动,即有新的公告产生
                Log("New Cryptocurrency Listing update!")                  # 打印提示信息
                preNews_href = lastNews_href
        LogStatus(_D(), "\n", "preNews_href:", preNews_href, "\n", "news:", lastNews)
        Sleep(1000 * 10)

courir

Une étude préliminaire sur l’application du crawler Python sur la plateforme FMZ - crawling Binance annonce content

Une étude préliminaire sur l’application du crawler Python sur la plateforme FMZ - crawling Binance annonce content

Il peut même être étendu pour détecter quand une nouvelle annonce apparaît, par exemple. Analysez les nouvelles devises dans l’annonce et passez automatiquement des commandes pour de nouvelles transactions.