Récemment, j'ai vu qu'il n'y avait pas d'informations pertinentes sur les robots d'exploration Python dans la communauté et la bibliothèque, basées sur l'esprit de développement complet de QUANT, j'ai appris quelques concepts et connaissances liés aux robots d'exploration simplement. Après une certaine compréhension, j'ai constaté que le "pit" de la technologie des robots d'exploration est assez grand. Cet article est juste pour l'étude préliminaire de la technologie des robots d'exploration. Faites la pratique la plus simple sur la plate-forme de trading FMZ Quant sur la technologie des robots d'exploration.
Pour ceux qui aiment souscrire de nouvelles actions, ils espèrent toujours obtenir les informations de la monnaie sur l'échange la première fois. Il est évidemment irréaliste pour les gens de surveiller le site Web de l'échange tout le temps.
Un programme très simple est utilisé pour démarrer (un script de robot d'exploration vraiment puissant est beaucoup plus complexe, alors prenez votre temps d'abord). La logique du programme est très simple. Elle permet au programme d'accéder à la page d'annonce de l'échange en permanence, d'analyser le contenu HTML obtenu et de détecter si le contenu de l'étiquette spécifique est mis à jour.
Vous pouvez utiliser des frameworks de robot d'exploration utiles. Cependant, étant donné que les exigences sont très simples, vous pouvez les écrire directement.
Les bibliothèques python suivantes doivent être utilisées:Requests
, qui peut être simplement comprise comme une bibliothèque utilisée pour accéder aux pages Web.Bs4
, qui peut être simplement comprise comme une bibliothèque utilisée pour analyser le code HTML sur les pages Web.
Le code:
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)
Il peut être prolongé, par exemple, lorsqu'une nouvelle annonce est détectée.