>  기사  >  백엔드 개발  >  도메인 간 데이터 캡처를 달성하기 위한 jquery+thinkphp에 대한 자세한 설명

도메인 간 데이터 캡처를 달성하기 위한 jquery+thinkphp에 대한 자세한 설명

墨辰丷
墨辰丷원래의
2018-06-01 09:06:301226검색

이 글에서는 주로 도메인 간 데이터 캡처를 달성하기 위한 jquery+thinkphp 방법을 소개하고, 도메인 간 데이터 캡처를 달성하기 위해 jQuery의 ajax와 결합된 thinkPHP의 관련 작업 기술을 예제 형식으로 분석합니다. to it

Do it today 데이터를 원격으로 크롤링하는 기능입니다. jquery는 Ajax를 사용하여 원격으로 크롤링할 수 있지만 도메인을 넘을 수는 없다는 점을 기억하세요. 온라인에서 많이 찾았어요. 하지만 포괄적인 것을 만드는 것이 더 낫다고 생각하기 때문에 지금은 간단한 문제가 복잡하다고 생각하지만 적어도 지금은 해결되었습니다.

도메인 전체의 데이터를 로컬 데이터베이스로 가져간 다음 update it asynchronous

제가 구현한 방식은 jquery의 $.post가 서버 백그라운드로 데이터를 보내고, 백그라운드의 PHP 코드가 원격 가져오기를 수행하여 데이터베이스에 저장하고, ajax가 데이터를 프런트 데스크에 반환하는 것입니다. 프런트 데스크는 JS를 사용하여 데이터를 수락하고 표시합니다.


//远程抓取获取数据
 $("#update_ac").click(function() {
      $username = $("#username").text();
      $("#AC,#rank,#Submit,#solved,#solved2,#solved3").ajaxStart(function(){
        $(this).html("<span class=&#39;loading2&#39;>   </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 코드는 4층에서 비교적 명확합니다. 저를 괴롭히는 것은 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(&#39;http://openoj.awaysoft.com/JudgeOnline/userinfo.php?user=&#39;.$username); //远程抓取了
$ret = $html->find(&#39;center&#39;,0)->plaintext; //返回数据了。


위 코드는 핵심 코드일 뿐이며, simple_html_dom은 많은 기능을 확장합니다. 스스로 알아보세요.

반환된 데이터는 문자열이며 정규식을 사용하여 필요한 데이터를 필터링합니다. 다음은 렌더링입니다.

요약: 위 내용은 이 기사의 전체 내용입니다. 모든 사람에게 유용할 수 있기를 바랍니다. 학습 도움.

관련 권장사항:

사용자 등록 및 로그인 기능 구현을 위한 PHP 방식

php클라이언트 유형 판단 구현

php엑셀 파일 생성 및 읽기_php예제



위 내용은 도메인 간 데이터 캡처를 달성하기 위한 jquery+thinkphp에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.