AST入門實戰(zhàn)+零基礎(chǔ)JavaScript補環(huán)境課程
2023-03-18 19:59 作者:碼農(nóng)UP主 | 我要投稿
什么是AST?
答:在計算機科學中,抽象語法樹(Abstract Syntax Tree,AST),或簡稱語法樹(Syntax tree),是源代碼語法結(jié)構(gòu)的一種抽象表示。已學完,有需要看文章最后
它以樹狀的形式表現(xiàn)編程語言的語法結(jié)構(gòu),樹上的每個節(jié)點都表示源代碼中的一種結(jié)構(gòu)。
之所以說語法是“抽象”的,是因為這里的語法并不會表示出真實語法中出現(xiàn)的每個細節(jié)。(摘自百度百科)
關(guān)鍵詞:源代碼,樹,語法,抽象。
既然是一棵樹,那肯定有節(jié)點,或者遍歷相關(guān)的概念。
?
AST對爬蟲工程師有什么意義或者用途?
答:隨著技術(shù)的革新,越來越多的前端為了保護其網(wǎng)站不被第三方爬取,使用了大量的混淆代碼,讓爬蟲工程師越來越難找到其核心參數(shù)加密代碼。
有時候定位到加密的地方,面對一大坨亂如麻的代碼,內(nèi)心也是拒絕的。 ?
這個時候,希望有一種工具,盡可能的將被混淆的代碼進行處理,使其可讀性大大增加,使爬蟲工程師能夠輕而易舉的進行定位,摳出其核心的加密代碼。
AST用在這里,只是一種輔助工具,并不能直接幫你找到核心的代碼,還是得自己去分析,靜態(tài)分析也好,動態(tài)調(diào)試也好,目的只有一個。??
標簽: