네이버 키워드 api 크롤링하여 가져온 데이터 DB로 저장
본문
안녕하세요?
그누위즈님이 올려주신 스킨으로 https://sir.kr/g5_skin/15410
키워드 크롤링하여 보여주는 게시판을 구현하였는데요.
그게 그냥 크롤링을 해온것이라 디비로 저장이 안되더라구요~
혹시 디비로 저장하려면 어떻게 해야할지 문의드려도 될까요?
제가 초보라 잘 몰라서
<input type="hidden" name="bo_table" value="naver_blog">
<input type="hidden" name="wr_name" value="<?php echo $item->bloggername ?>">
<input type="hidden" name="wr_datetime" value="<?php echo $date_time ?>">
이런식으로 하였더니 저장이 안되더라구요.
<tbody>
<?php
$i = 0;
foreach($items as $item){
$wr_datetime = date("Y-m-d", strtotime($item->postdate));
$wr_subject = conv_subject($item->bloggername, 20, '…'); // 블로그 이름 글자수
$mb_id = substr($item->bloggerlink, 23, 20); // 블로그 이름 글자수
//print_r2($item);
?>
<tr>
<td class="td_num"><?=$target_title?></td>
<td class="td_subject">
<a href="<?=$item->link?>" target="_blank">
<?=$item->title?>
</a>
</td>
<?php if($target == "blog") { ?>
<td class="td_name sv_use"><a href="<?=$item->bloggerlink?>" target="_blank"><?=$wr_subject?></a></td>
<td class="td_name2 sv_use"><?=$mb_id?></td>
<?php } ?>
<td class="td_date"><?=$wr_datetime?></td>
</tr>
<!-- <tr>
<td class="td_num"><?=$target_title?></td>
<td class="td_name sv_use"><?php echo $list[$i]['wr_subject'] ?></td>
<td class="td_name sv_use"><?php echo $list[$i]['wr_name'] ?></td>
<td class="td_name2 sv_use"><?php echo $list[$i]['mb_id'] ?></td>
<td class="td_date"><?php echo $list[$i]['wr_datetime'] ?></td>
</tr>--> 이부분이 안되어서 주석처리해두었는데..어떻게 변경해야할까요?
<?php
$i++;
}
?>
<?php if ($total_count == 0) { echo '<tr><td colspan="'.$colspan.'" class="empty_table">'.$target_title.' 검색 결과가 없습니다.</td></tr>'; } ?>
</tbody>
답변 3
스킨형태로 만드시는것이라면
write.skin.php파일을 참고하셔서
크롤링한 값들이
각 위치에 맞게 적용되서 , 선택하여 저장하도록 하는 방법이 가능할것이구요
크롤링한값을 무조건저장하려면
eyekiss 님이 적어두신 방법으로 해야하는데
$num 부분은 /bbs/write_update.php 파일에서 참고하셔서 추출해야 합니다.
아래 소스를 참조해서 넣어줘야하는데요..
문제는 새로 고침할때마다 저장될 수 있겠네요.
소스에 변수들을 설정해주고,
중복 저장 안되도록 처리하는 부분도 개발해줘야 합니다.
$sql = " insert into $write_table
set wr_num = '$wr_num',
wr_reply = '$wr_reply',
wr_comment = 0,
ca_name = '$ca_name',
wr_option = '$html,$secret,$mail',
wr_subject = '$wr_subject',
wr_content = '$wr_content',
wr_seo_title = '$wr_seo_title',
wr_link1 = '$wr_link1',
wr_link2 = '$wr_link2',
wr_link1_hit = 0,
wr_link2_hit = 0,
wr_hit = 0,
wr_good = 0,
wr_nogood = 0,
mb_id = '{$member['mb_id']}',
wr_password = '$wr_password',
wr_name = '$wr_name',
wr_email = '$wr_email',
wr_homepage = '$wr_homepage',
wr_datetime = '".G5_TIME_YMDHIS."',
wr_last = '".G5_TIME_YMDHIS."',
wr_ip = '{$_SERVER['REMOTE_ADDR']}',
wr_1 = '$wr_1',
wr_2 = '$wr_2',
wr_3 = '$wr_3',
wr_4 = '$wr_4',
wr_5 = '$wr_5',
wr_6 = '$wr_6',
wr_7 = '$wr_7',
wr_8 = '$wr_8',
wr_9 = '$wr_9',
wr_10 = '$wr_10' ";
sql_query($sql);
답변 감사합니다.
제실력으로는 어려운 작업인가봐요^^;;
포기하고 그대로 크롤링해서 가져온걸로 사용하기로 하였습니다~