FMZ에 파이썬 크롤러를 적용하기 위한 초기 탐구 크롤링 바이낸스 발표 내용

저자:니나바다스, 창작: 2022-04-08 15:47:43, 업데이트: 2022-04-13 10:07:13

FMZ에 파이썬 크롤러를 적용하기 위한 초기 탐구 크롤링 바이낸스 발표 내용

최근에, 나는 우리의 포럼과 다이제스트를 통해 보았고, 파이썬 크롤러에 대한 관련 정보가 없습니다. 포괄적인 개발의 FMZ 정신에 기초하여, 나는 단순히 크롤러의 개념과 지식을 배우기 위해 갔다. 그것에 대해 알게 된 후, 나는 아직 더 많은 것을 배울 수 있다는 것을 발견했습니다. 이 기사는 단지 크롤러 기술에 대한 예비 탐구이며 FMZ 퀀트 거래 플랫폼에서 크롤러 기술의 가장 간단한 연습입니다.

수요

IPO 거래를 좋아하는 거래자는 항상 가능한 한 빨리 플랫폼 목록 정보를 얻고 싶어합니다. 플랫폼 웹 사이트를 항상 수동으로 쳐다보는 것은 분명히 비현실적입니다. 그런 다음 플랫폼의 발표 페이지를 모니터링하고 첫 번째 알림과 상기시키기 위해 새로운 발표를 감지하기 위해 크롤러 스크립트를 사용해야합니다.

초기 탐사

매우 간단한 프로그램을 시작으로 사용하십시오 (실제로 강력한 크롤러 스크립트는 훨씬 더 복잡합니다. 따라서 시간을 내십시오). 프로그램 논리는 매우 간단합니다. 즉, 프로그램이 플랫폼의 발표 페이지를 지속적으로 방문하고, 획득 된 HTML 콘텐츠를 분석하고, 지정된 레이블의 내용이 업데이트되는지 감지하십시오.

코드 구현

몇 가지 유용한 크롤러 구조를 사용할 수 있습니다. 요구 사항이 매우 간단하기 때문에 직접 작성할 수도 있습니다.

사용할 파이썬 라이브러리:requests, 단순히 웹 페이지에 액세스하는 데 사용되는 라이브러리로 간주 될 수 있습니다.bs4, 단순히 웹 페이지의 HTML 코드를 분석하는 데 사용되는 라이브러리로 간주 될 수 있습니다.

코드:

from bs4 import BeautifulSoup
import requests

urlBinanceAnnouncement = "https://www.binancezh.io/en/support/announcement/c-48?navId=48"  # Binance announcement web 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 "requests" library to access url, namely the Binance announcement web page address 

    if r.status_code == 200:
        r.encoding = 'utf-8'
        # Log("success! {}".format(url))
        return r.text                          # if the access succeeds, return the text of the page content  
    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 the page text into objects 
            lastNews_href = soup.find('a', class_='css-1ej4hfo')["href"]   # find specified lables, to obtain href
            lastNews = soup.find('a', class_='css-1ej4hfo').get_text()     # obtain the content in the label 
            if preNews_href == "":
                preNews_href = lastNews_href
            if preNews_href != lastNews_href:                              # the label change detected, namely the new announcement generated
                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)

운영

img

img

새로운 발표를 감지하고, 새로 상장된 통화 기호를 분석하고, IPO 거래를 자동으로 주문하는 등 확장할 수도 있습니다.


더 많은