테스트 사이트 - 개발 중인 베타 버전입니다

파싱에 관련한 질문 한가지 더 있습니다 채택완료

훈련소장 6년 전 조회 3,400

</p>

<p><?php

include_once(dirname(__FILE__) . "/../common.php");

include_once(dirname(__FILE__) . "/Snoopy/Snoopy.class.php");

include_once(dirname(__FILE__) . '/http.php');</p>

<p>$LIMIT_TIME = 60 * 60 * 12; //12시간이 지난 글은 파싱하지 않는다.</p>

<p>

$res = sql_query("select * from `bj_list` where `bj_af_id` != ''");

while($row = sql_fetch_array($res)) {

    if($row['bj_af_station_no'] != '') {

        $snoopy = new Snoopy;

        // $snoopy->fetch("<a href="http://stbbs.afreecatv.com/app/list_bbs.cgi?nStationNo={$row['bj_af_station_no']}&szBjId={$row['bj_af_id']}");" target="_blank" rel="noopener noreferrer">http://stbbs.afreecatv.com/app/list_bbs.cgi?nStationNo={$row['bj_af_station_no']}&szBjId={$row['bj_af_id']}");</a>

        <strong>$snoopy->fetch("<a href="http://bj.afreecatv.com/{$row['bj_af_id']}/posts"); " target="_blank" rel="noopener noreferrer">http://bj.afreecatv.com/{$row['bj_af_id']}/posts"); </a>  //-->바꾸어 넣은 부분</strong>

        $result = $snoopy->results;

        /<strong>/ echo $result;  --> 여기서 echo를 해보니 자라스크립트 내용만 나옵니다.</strong>

        preg_match_all('`<div class=.v_article.>.+<span class=.time.>(.+)</span>.+<span class=.noti.>공지</span>.+nTitleNo=(.+).nRowNum.+target=._top.>.+szTitle..(.+)..boardType`Us', $result, $m2);

      </p>

<p>생략

        }</p>

<p>        sleep(2);

    }</p>

<p>}

//파싱 게시물 링크주소 >>  <a href="http://live.afreecatv.com:8079/app/index.cgi?szBoard=read_bbs&szBjId=rlatjdgus228&nStationNo=2898751&nBbsNo=&nTitleNo=6748001" target="_blank" rel="noopener noreferrer">http://live.afreecatv.com:8079/app/index.cgi?szBoard=read_bbs&szBjId=rlatjdgus228&nStationNo=2898751&nBbsNo=&nTitleNo=6748001</a> (기존)

//파싱 게시물 링크주소 >>  <a href="http://bj.afreecatv.com/rlatjdgus228/posts" target="_blank" rel="noopener noreferrer">http://bj.afreecatv.com/rlatjdgus228/posts</a> (신규 2019-11-03)

?></p>

<p>

원래는 공지사항의 제목만 가져와서 DB에 집어 넣는건데, 아프리카 게시물 주소가 바뀌어서

파싱이 제대로 동작을 안하고 있습니다. 

위에 바꾸어 넣은 부분 주소로 변경했는데.. 잘 안됩니다..

제가 만든 소스가 아니라서 완벽히 이해는 못했는데, 일단 가져오는 주소가 잘 못되지 않았나 싶습니다.

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트
6년 전

소스 추적을 해보시면

 

http://bjapi.afreecatv.com/api/rlatjdgus228/board?page=1 에서 json으로 값을 받아옵니다

 

json decode하면 콘텐츠 내용을 가져올 수 있습니다

 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

훈련소장
6년 전
감사합니다.. 쪽지 보내드렸어요..
훈련소장
4년 전
예전에 감사했습니다. 그런데, 그사이에 http://bjapi.afreecatv.com/api/rlatjdgus228/board?page=1 이 주소가 변경이 되었나봐요.. 지금 저 주소로 하면 잘못된 접근입니다. 라고 나옵니다. 작년 11월부터 변경된것 같은데,
혹시 바뀐주소를 알수 있을까요?

http://bjapi.afreecatv.com/api/rlatjdgus228/station
이 주소를 사용하는 것 보니, 저 api도 있을것 같습니다.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인