最近,PythonのCrawlerに関する関連情報がないフォーラムやダイジェストを調べてみました.FMZの総合的な開発精神に基づいて,Crawlerの概念と知識について簡単に学びました.それについて学んだ後,Crawler技術について学ぶことがまだたくさんあることを発見しました.この記事は,Crawler技術に関する予備的な探求のみであり,FMZ Quant取引プラットフォーム上のCrawler技術の最も簡単な実践です.
IPO取引を好むトレーダーは,常にできるだけ早くプラットフォームリストの情報を入手したい.プラットフォームのウェブサイトを常に手動でじっと見つめるのは明らかに非現実的です.その後,プラットフォームの発表ページを監視し,最初の時点で通知され,思い出させるために新しい発表を検出するためにクローラースクリプトを使用する必要があります.
プログラミングの論理は非常にシンプルである.つまり,プログラムがプラットフォームの発表ページを継続的に訪問し,取得したHTMLコンテンツを解析し,指定されたラベルのコンテンツが更新されているかどうかを検出する.
簡単に書き込むこともできます. 簡単に書き込むこともできます.
使用する python ライブラリ: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取引の自動注文などもできます