中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何在thinkphp中使用實現一個跨域抓取數據功能

發布時間:2021-01-28 08:18:52 來源:億速云 閱讀:427 作者:Leah 欄目:開發技術

本篇文章為大家展示了如何在thinkphp中使用實現一個跨域抓取數據功能,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

實現方式:jquery的$.post發送數據到服務器后臺,在由后臺的PHP代碼執行遠程抓取,存到數據庫ajax返回數據到前臺,前臺用JS接受數據并顯示。

//遠程抓取獲取數據
 $("#update_ac").click(function() {
      $username = $("#username").text();
      $("#AC,#rank,#Submit,#solved,#solved2,#solved3").ajaxStart(function(){
        $(this).html("<span class='loading2'>&nbsp;&nbsp;&nbsp;</span>");
      });
      $.post("update_ac/username/"+$username,{},function($data){
        json = eval("(" + $data + ")");
        $("#Submit").html(json.data.Submit);
        $("#AC").html(json.data.AC);
        $("#solved,#solved2,#solved3").html(json.data.solved);
        $("#rank").html(json.data.rank);
       }
      ),"json";
});

上面的jquery代碼還算四樓比較清楚的,糾結我的就是那個json數據的接收

json = eval("(" + $data + ")");
//eval() 函數可計算某個字符串,并執行其中的的 JavaScript 代碼。

其實這個都還是前臺,跨域抓取是用php的擴展simple_html_dom完成的(不清楚的可以到網上去搜一搜,基于PHP5開發的)

把遠程的頁面抓取到本地。

import("@.ORG.simple_html_dom");
//thinkphp內導入擴展,你要把網上下載的代碼改名為simple_html_dom.class.php放到APPNAME\Lib\ORG的目錄下面
$html = file_get_html('http://openoj.awaysoft.com/JudgeOnline/userinfo.php?user='.$username); //遠程抓取了
$ret = $html->find('center',0)->plaintext; //返回數據了。

上面的代碼只是核心代碼,simple_html_dom擴展的還有很多功能。自己去了解吧。

返回的數據是一個字符串,再用正則表達式去篩選需要的數據就了 下面是效果圖

如何在thinkphp中使用實現一個跨域抓取數據功能

上述內容就是如何在thinkphp中使用實現一個跨域抓取數據功能,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

龙江县| 祁连县| 凤山市| 洪泽县| 鄂托克旗| 定西市| 咸阳市| 昌邑市| 富裕县| 潼关县| 建平县| 金沙县| 和田县| 伊春市| 泗洪县| 新昌县| 营山县| 陇南市| 乐山市| 东安县| 通城县| 浦城县| 周宁县| 顺平县| 鹿泉市| 织金县| 永新县| 鸡泽县| 巴南区| 即墨市| 湟源县| 喜德县| 宜黄县| 海安县| 西昌市| 巴塘县| 苏尼特左旗| 红安县| 壶关县| 东乡县| 岗巴县|