目錄
    采集東方財富網
    視頻教程:模板下載:
    l 采集場景


    【場景描述】采集東方財富網行情中心滬深京A股數據。


    【使用工具】前嗅ForeSpider數據采集系統,免費下載:ForeSpider免費版本下載地址

    l采集網站

    【入口網址】

    http://quote.eastmoney.com/center/gridlist.html#hs_a_board

    【采集內容】

    采集行情中心滬深京A股中的所有數據。

     

     

    【采集效果】如下圖所示:

     


    l采集思路

     

    l配置步驟

    1. 新建采集任務

    選擇【采集配置】,點擊任務列表右上方【+】號可新建采集任務,將采集入口地址填寫在【采集地址】框中,【任務名稱】自定義即可,點擊下一步。

     


     

    2.觀察翻頁請求鏈接

    ①在瀏覽器中打開該頁面,點擊不同的翻頁,觀察左上角頁面鏈接,發現沒有變化。說明翻頁中的數據在請求鏈接中。



    ②點擊F12,如下圖所示操作,先清空所有請求,點擊任意一個翻頁,右側出現對應請求鏈接。打開請求的Preview,看到有表格中的數據。說明該請求為該翻頁對應的請求鏈接。

     


    右擊該請求,可復制鏈接。

     


    ③將復制的鏈接粘貼到文檔中,并用同樣的方法,再獲取另外兩個翻頁鏈接,觀察翻頁請求鏈接規律如下所示:

     

     

    3.拼取翻頁請求鏈接

    ①選中鏈接抽取,打開腳本窗口。

     


    ②寫一個for循環,拼取翻頁請求鏈接。

     


    腳本文本如下所示:

    url u;//定義一個鏈接取值
    for(int i=1;i <=50;i++) //設定翻頁總數50
    {
    u.title = URL.title+"@_@"+i.ToStr();//返回鏈接標題為當前鏈接+@_@+第i頁
    u.urlname = "http://42.push2.eastmoney.com/api/qt/clist/get?cb=jQuery1124005285923334703457_1642750942461&pn="+i+"&pz=20&po=1&np=1&ut=bd1d9ddb04089700cf9c27f6f7426281&fltt=2&invt=2&fid=f3&fs=m:0+t:6,m:0+t:80,m:1+t:2,m:1+t:23,m:0+t:81+s:2048&fields=f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f12,f13,f14,f15,f16,f17,f18,f20,f21,f23,f24,f25,f22,f11,f62,f128,f136,f115,f152&_="+time(time.GetTime()).ToStr().Left(" ")+"%2017:27:240000";//根據請求鏈接規律,拼取鏈接
    u.entryid = CHANN.id;//返回鏈接id
    u.tmplid = 2;//關聯模板02
    RESULT.AddLink(u);//結束返回鏈接
    }

     

    ③采集預覽,查看鏈接是否正確,復制任意一條鏈接,并在瀏覽器中打開該鏈接。

     


    如下圖所示,源碼中包含該翻頁的數據內容,則表示請求鏈接配置正確,可繼續下一步操作。

     


    4.抽取數據

    ①新建模板02,在其下新建一個數據抽取,如下圖所示:

     


    ②新建數據表,具體如下圖所示:

     


    ④關聯數據表

     

     

    ⑤打開腳本窗口,新建數據抽取腳本。

     


    ⑥打開瀏覽器,觀察源碼,發現頁面表格中的數據,在頁面源碼的json串中,在data中的diff數組中,每個數值,對應一行數據。每行數據分別在f1——f152對應的數值中。



    根據數據所在位置規律,編寫腳本如下所示:

     


    腳本文本:

    var str=DOM.GetSource().ToStr();//獲取請求鏈接中所有的源碼
    var str_sec=str.Middle('"data":','})');//獲取data后的數組內容
    jScript js;//定義一個js
    var obj = js.RunJson(str_sec);//運行數組
    var data=obj.diff;//定義data為diff數組
    for(var i=0;i<20;i++){//有20個數值,所以寫一個for循環,來獲取這些數值的內容
    record re;//定義返回值,固定搭配
    re.id=URL.title.Right("@_@")+i;//id為當前鏈接標題中@_@后數值+i
    re.f1=data[i].f1;//返回f1為data數組中的第i個數值中的f1值
    re.f2=data[i].f2;//返回f1為data數組中的第i個數值中的f2值
    re.f3=data[i].f3;//返回f1為data數組中的第i個數值中的f3值
    re.f4=data[i].f4;
    re.f5=data[i].f5;
    re.f6=data[i].f6;
    re.f7=data[i].f7;
    re.f8=data[i].f8;
    re.f9=data[i].f9;
    re.f10=data[i].f10;
    re.f11=data[i].f11;
    re.f12=data[i].f12;
    re.f13=data[i].f13;
    re.f14=data[i].f14;
    re.f15=data[i].f15;
    re.f16=data[i].f16;
    re.f17=data[i].f17;
    re.f18=data[i].f18;
    re.f20=data[i].f20;
    re.f21=data[i].f21;
    re.f22=data[i].f22;
    re.f23=data[i].f23;
    re.f24=data[i].f24;
    re.f25=data[i].f25;
    re.f62=data[i].f62;
    re.f115=data[i].f115;
    re.f128=data[i].f128;
    re.f140=data[i].f140;
    re.f141=data[i].f141;
    re.f136=data[i].f136;
    re.f152=data[i].f152;
    RESULT.AddRec(re,this.schemaid);//結束返回一個數據,固定搭配
    }


    ⑥采集預覽

    發現數據都采集出來了,說明配置成功。


     

    l采集步驟

    模板配置完成,采集預覽沒有問題后,可以進行數據采集。

    1.建立數據表單

    選擇【數據建表】,點擊【表單列表】中該模板的表單,在【關聯數據表】中選擇【創建】,表名稱自定義,這里命名為【dong】(注意命名不能用數字和特殊符號),點擊【確定】。創建完成,勾選數據表,并點擊右上角保存按鈕。

     

     

    2.開始采集

    選擇【數據采集】,勾選任務名稱,點擊【開始采集】,則正式開始采集。


     

    3.導出數據

    采集結束后,可以在【數據瀏覽】中,選擇數據表查看采集數據,并可以導出數據。



    4.導出的文件打開如下圖所示:



    *本教程僅供教學使用,嚴禁用于商業用途!


    女人个人私人电话联系杭州的|热久久久久香蕉无品码|爱情岛亚洲永久自拍品质|国产丶欧美丶日本不卡