目錄
     l 采集場景

    【場景描述】通過采集百度翻譯后的數據實現批量翻譯。

    【源網站介紹】百度翻譯提供即時免費200+語言翻譯服務,擁有網頁和APP產品,百度翻譯APP還支持拍照翻譯、語音翻譯等特色功能,隨時隨地溝通全世界。

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

    ForeSpider免費版本下載地址

     

    采集網站

    【入口網址】https://fanyi.baidu.com/translate?aldtype=16047&query=&keyfrom=baidu&smartresult=dict&lang=auto2zh#auto/zh/

    【采集內容】

    將之前采集好的某新聞網站英文內容,使用百度翻譯成中文后,采集翻譯好的中文內容。

     

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

     


    l 采集思路

     


    配置步驟

    1. 新建采集任務

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

     

     

    2.觀察數據請求鏈接

    ①復制任意一條需要翻譯的英文文本內容,在瀏覽器中打開百度翻譯,點擊F12打開,如下圖所示:



    ②將英文文本復制在左側框中,觀察右側出現翻譯請求。

     

     

    打開每個請求,查看Preview內容,找到翻譯內容返回的請求鏈接,如下圖所示:



    ③查看請求header,發現該請求為post請求。

     


    找到post請求的Cookie、refer和FormData,如下圖所示:

      


    觀察發現,不同的翻譯請求鏈接,cookie和refer不變,FormData中的query內容變化,query參數即為需要翻譯的英文文本。


    所以可以用腳本拼出這個post請求從而獲取到翻譯后的數據。


    我們再打開這個請求的preview預覽界面,觀察翻譯后的數據位置,發現所需要的翻譯后的文本,就是js中data下的每個對象中的dst值合起來的內容。

     


    我們再打開response界面,查看返回請求的內容是否與瀏覽界面一致。

     


    觀察發現數據結構一致,但是返回的為unicode編碼,而非中文,所以后期配置腳本時,需要將unicode編碼轉中文一下。

     

    3. 創建數據表

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

     


    ②將原來模板中的鏈接抽取刪掉,添加一個數據抽取,如下圖所示:

     


    ③關聯數據表

     

     

    ④由于數據在請求的源碼中,數據抽取需要寫腳本來實現。打開腳本窗口,新建數據抽取腳本。

     


    ⑥先寫腳本調用數據表中的英文文本

     


    然后再拼寫post請求并打開請求,獲取其中翻譯好的中文數據:如下圖所示:

     


    腳本如下所示:

    var table = DATADB.Open("news"); //打開數據表news
    var recs = table.Query(""); //查詢條件為空
    for(k in recs each v)//調用每個數據
    {
    record re;//定義一個返回值,返回數據固定搭配
    var transid = v.id;//調用news中的id
    var trans = v.content;//調用news中的content
    var con=trans;//待翻譯的文字
    var link="https://fanyi.baidu.com/transapi";//link為請求鏈接
    var header;//定義一個請求頭
    header.cookie = "PSTM=1640935140; __yjs_duid=1_6be72458114c4fd1196316a46e9ce7451641260822171; REALTIME_TRANS_SWITCH=1; FANYI_WORD_SWITCH=1; HISTORY_SWITCH=1; SOUND_SPD_SWITCH=1; SOUND_PREFER_SWITCH=1; APPGUIDE_10_0_2=1; BIDUPSID=096B3D7C050B28965962CD01423B63E0; BDUSS_BFESS=0p0OGpBR2E5VlAtZm9tMVVXVWk1QzR2dUsza3gxSndpLVhqT1NOMWhNT2ZPSDVpRUFBQUFBJCQAAAAAAAAAAAEAAACB~KWqvtayv7K7x-fM7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ-rVmKfq1Zib; H_WISE_SIDS=110085_127969_174443_179350_184716_189755_190621_191243_194085_194519_194530_196425_197242_197471_197711_197947_198268_198502_199023_199177_199571_200965_201193_201539_201706_202651_203190_203309_203519_203525_204031_204535_204726_204779_204860_204910_205218_205406_205485_205569_206007_206728_206814_207235_207265_207473_207512_207729_207831_207863_207893_207990_208001_208049_208055_208115_208137_208182_208223_208225_208267_208270_208312_208343_208365_208686_208721_208770_209059_209116_209345_209394_209484_209487_209512_209520_209568_209674_209749_209847_210164_210357_8000097_8000122_8000142_8000143_8000153_8000164_8000174_8000177_8000182_8000189; MCITY=-332%3A; BAIDUID=1D82B7C477AD76BA7C657C4B21592D1D:SL=0:NR=10:FG=1; BDORZ=B490B5EBF6F3CD402E515D22BCDA1598; delPer=0; PSINO=2; BDRCVFR[feWj1Vr5u3D]=I67x6TjHwwYf0; H_PS_PSSID=34812_35912_36165_34584_36122_36193_36125_36226_26350_22157_36061; BA_HECTOR=80ag0l81ah0h0g806k1h5sjt50r; BCLID=11037166929813919530; BDSFRCVID=IeFOJexroG0xWiQDV4eCrph4ZSNbUdrTDYrEQ-mAp1wm6V8VJeC6EG0Pts1-dEu-EHtdogKK02OTHkFF_2uxOjjg8UtVJeC6EG0Ptf8g0M5; H_BDCLCKID_SF=tbuHVC8htID3qnjpKITaMJF0bMQJ5C62aKDs2qb7BhcqEIL4eJj8yjbBQbDq-TbH-I-JhJ5mMq4MSMbSj4D5X4A33lJwB4QlLaT9aKO4fp5nhMtGb67JDMPF-4bpb4Qy523ioIovQpnOslQ3DRoWXPIqbN7P-p5Z5mAqKl0MLPbtbb0xb6_0jTQyDN_ftjnMM4oKWJca2bK_Hn7zeUJbBU4pbt-qJJ-OLgvJ3qbCJtbFq4Jdjh613t4AqHjnBT5DtecIaJAh3bbk8Jb3qtR126DkQN3T2bkO5bRiL66S3j62Dn3oyT0KXp0nMPjly5jtMgOBBJ0yQ4b4OR5JjxonDh83bG7MJPKtfJC8VItKJDP2bP365ITa-PJH-UnLq5FOJgOZ04n-ah02VR53yxO4hDuhKl33tpT-W23M_bcm3UTKsqTdjbuhBPbBbMTiLtbvQHn4KKJxbInfOUJD0-5UyfCjhUJiB58HBan7BhQIXKohJh7FM4tW3J0ZyxomtfQxtNRJ0DnjtpChbCDxjjtbD6cWepJf-K6aK6Q3LRjXb6rjDnCr-RA2XUI8LNDH26O4yPjIKUQTbloKqbPmW4ov-qLIjJO7ttoy3mkJabjuK4-aEfjS567a-fL1Db39hTvMtg3tslrttDToepvoD55c3MkfQ4jdJJQOBKQB0KnGbUQkeq8CQft20b0EeMtjKjLEtR3j3Ru8KJjEe-Kk-PnVeUF8Q4nZKRvHa2kjXU3VLlb4Mb5JKR3sjhI9Xx5PKnjn3N5HKxDEalj2ht3zjlDW3xI8LNj405OTbTADsRbNb66pO-bghPJvyTOXXnO7aM5lXbrtXp7_2J0WStbKy4oTjxL1Db3JKjvMtgDtVJO-KKC5MKIRDfK; BCLID_BFESS=11037166929813919530; BDSFRCVID_BFESS=IeFOJexroG0xWiQDV4eCrph4ZSNbUdrTDYrEQ-mAp1wm6V8VJeC6EG0Pts1-dEu-EHtdogKK02OTHkFF_2uxOjjg8UtVJeC6EG0Ptf8g0M5; H_BDCLCKID_SF_BFESS=tbuHVC8htID3qnjpKITaMJF0bMQJ5C62aKDs2qb7BhcqEIL4eJj8yjbBQbDq-TbH-I-JhJ5mMq4MSMbSj4D5X4A33lJwB4QlLaT9aKO4fp5nhMtGb67JDMPF-4bpb4Qy523ioIovQpnOslQ3DRoWXPIqbN7P-p5Z5mAqKl0MLPbtbb0xb6_0jTQyDN_ftjnMM4oKWJca2bK_Hn7zeUJbBU4pbt-qJJ-OLgvJ3qbCJtbFq4Jdjh613t4AqHjnBT5DtecIaJAh3bbk8Jb3qtR126DkQN3T2bkO5bRiL66S3j62Dn3oyT0KXp0nMPjly5jtMgOBBJ0yQ4b4OR5JjxonDh83bG7MJPKtfJC8VItKJDP2bP365ITa-PJH-UnLq5FOJgOZ04n-ah02VR53yxO4hDuhKl33tpT-W23M_bcm3UTKsqTdjbuhBPbBbMTiLtbvQHn4KKJxbInfOUJD0-5UyfCjhUJiB58HBan7BhQIXKohJh7FM4tW3J0ZyxomtfQxtNRJ0DnjtpChbCDxjjtbD6cWepJf-K6aK6Q3LRjXb6rjDnCr-RA2XUI8LNDH26O4yPjIKUQTbloKqbPmW4ov-qLIjJO7ttoy3mkJabjuK4-aEfjS567a-fL1Db39hTvMtg3tslrttDToepvoD55c3MkfQ4jdJJQOBKQB0KnGbUQkeq8CQft20b0EeMtjKjLEtR3j3Ru8KJjEe-Kk-PnVeUF8Q4nZKRvHa2kjXU3VLlb4Mb5JKR3sjhI9Xx5PKnjn3N5HKxDEalj2ht3zjlDW3xI8LNj405OTbTADsRbNb66pO-bghPJvyTOXXnO7aM5lXbrtXp7_2J0WStbKy4oTjxL1Db3JKjvMtgDtVJO-KKC5MKIRDfK; Hm_lvt_64ecd82404c51e03dc91cb9e8c025574=1648182432,1650348546; Hm_lpvt_64ecd82404c51e03dc91cb9e8c025574=1650348546; ab_sr=1.0.1_NWQwZTNiNzQ5YjU4NmNjZjEzNjIyMjE4MWFmNzBjMDg0MTAwY2NkOGNkNDIyNzI3M2M3YWIwMmYyYzE4NjM0ZTE2ZjZlNzQ1ODliYzQ4M2M1ZGMzOWRhMWVjY2E1NmNiOWUyYWU4OTIwZTViNmFlMWM2MjJmYjlmOTQ5NDY3OWM0YjVlOGI2OGYzYzI0YTVjYzc3MTNhZTA1ZjUyMTI2MDNkODg1YWIxZjNjMWMzMDgyNGZhY2IxZTI2ODAwMzg0";////定義請求頭的cookie,與網頁上的cookie一致
    header.refer = "https://fanyi.baidu.com/translate?aldtype=16047&query=&keyfrom=baidu&smartresult=dict&lang=auto2zh";//定義請求頭的refer,與網頁上的refer一致
    var post="from=en&to=zh&query="+con+"&source=txt";//定義post,將FormData拼出來
    var doc = EXTRACT.OpenDoc(CHANN,link,post,header);//打開post請求
    if(doc){
    var str = doc.GetDom().GetSource().ToStr();//打開請求后,將獲取請求源碼并轉為字符串格式
    jScript js;//定義一個js
    var obj = js.RunJson(str);//跑一下js
    var a="";//定義一個變量a
    for(i=0;i<obj.data.length;i++){
    var search=obj.data[i].dst;//取obj中的data中的第i個對象的dst值
    var ttt=search.ReplaceAll("u","\\u");//將search文本中的u用\\u替換
    ttt=ttt.ToStr();//轉為字符串
    var trans_con=doc.GetDom().UnEscape(ttt);//unicode轉中文
    a+=trans_con;//a為a+trans_con
    }
    re.id=transid;//返回id
    re.trans_con=a;//返回翻譯后內容
    RESULT.AddRec(re,this.schemaid);//返回一個數據
    EXTRACT.CloseDoc(doc);//關閉請求,固定搭配
    }
    }


    ⑥采集預覽

    點擊采集預覽,加載片刻后,點擊停止測試。



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

     

     

    采集步驟

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

    1.建立數據表單

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

     

     

    2.開始采集

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

     

     

    3.導出數據

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

     

     


    4.數據展示

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

     

     

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



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