최근에, 나는 우리의 포럼과 다이제스트를 통해 보았고, 파이썬 크롤러에 대한 관련 정보가 없습니다. 포괄적인 개발의 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)
새로운 발표를 감지하고, 새로 상장된 통화 기호를 분석하고, IPO 거래를 자동으로 주문하는 등 확장할 수도 있습니다.