今天,小編給你們帶來的教程爲:前嗅ForeSpider腳本教程-連接抽取中,連接在源碼的js變量裏寫腳本的實戰教程。具體內容以下:
連接地址可在源碼中查找到。在目標網頁右鍵,選擇「查看源代碼」,鍵盤點擊「ctrl+F」,查找目標連接所在位置。目標連接存在於js變量中。
1.連接須要循環
場景:要抽取的一組連接都在源碼中出現,集中分佈。
示例:獲取今日頭條熱點新聞列表頁連接json
查看列表頁第一條連接,連接地址爲「https://www.toutiao.com/group/
6637244114360336900/」,在該網頁,鼠標右鍵,選擇查看源代碼,「Ctrl+F」
查找字符串「6637244114360336900」,定位其位置。數組
觀察可知,中文字符都以」u」開頭的字符串表示,顯示爲unicode編碼格式,由「站長工具」在線轉編碼以後便可展現中文。此外連接地址分割符「/」加了轉義符「」,不過軟件已經幫助咱們作了轉義處理,此處無需擔憂,直接賦值便可。ide
將轉義後的字符串放置於JSON查看器中(以notepad++的插件「JSON Viewer」爲例),則可觀察到數據形式爲json。工具
腳本實例:編碼
var str=DOM.GetSource().ToStr(); //獲取本連接地址網頁源碼 var jsonStr=DOM.UnEscape(str.Middle("data = ","]};")+"]}"); //截取數據所在字符串 jScript js;//定義JS變量 var obj=js.RunJson(jsonStr);//解析JSON串,並返回JSON對象 var ar=obj.real_time_news;//獲取目標數據所在數組 for(int i=0;i<ar.size;i++)//經過循環添加連接 { url u; u.title=ar[i].title; u.urlname="https://www.toutiao.com"+ar[i].open_url; u.entryid=CHANN.id; u.tmplid=2; RESULT.AddLink(u); }
2.連接不循環
場景:要抽取少數連接,位置分散,如天貓分類頁(三級分類)。
實例:暫無。url