게시판 파싱기 만들고 싶은데 정보
게시판 파싱기 만들고 싶은데
본문
까마득 하네요 어렵습니다 ㅠㅠ
추천
0
0
댓글 3개
어떤 게시판이요? 그누보드 게시판 파싱인가요?

네넵 만들어 보려는데 어렵네요 ㅠㅠ

<?php
include_once('./_common.php');
include_once(G5_THEME_MOBILE_PATH.'/head.php');
?>
<?php
include "Snoopy.class.php";
$snoopy = new Snoopy;
$url = "https://humorpick.com/bbs/board.php?bo_table=best";
$snoopy->fetch($url);
$content = $snoopy->results;
$doc = new DOMDocument();
@$doc->loadHTML($content);
$xpath = new DOMXpath($doc);
$title = $xpath->query("/html/body/div[1]/div[2]/div/div/div[2]/section/div/form/div[1]/ul/li[1]/div[3]/a");
$link = $xpath->query("/html/body/div[1]/div[2]/div/div/div[2]/section/div/form/div[1]/ul/li[1]/div[3]/a@href");
$db = new mysqli("localhost", "root", "autoset", "test");
foreach($title as $i => $t) {
$title_text = $t->nodeValue;
$link_text = $link[$i]->nodeValue;
$link_text = 'https://humorpick.com'.$link_text;
$snoopy->fetch($link_text);
$content = $snoopy->results;
$content = mysqli_real_escape_string($db, $content);
$sql = "INSERT INTO contentss (title, content) VALUES ('$title_text', '$content')";
mysqli_query($db, $sql);
}
mysqli_close($db);
?>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@9"></script>
<div class="container-fluid mt--7">
<div class="container-fluid mt--7">
<div class="container">
<form>
<div class="row">
<div class="col-3">
<select name="type" class="form-control">
<option value="gnu">그누보드</option>
<option value="xe">XE</option>
</select>
</div>
<div class="col-3">
<select name="board_id" class="form-control">
<?php
$query = "SELECT board_id,name FROM board WHERE mb_id = '{$member["mb_id"]}'";
$result = mysqli_query($conn, $query);
while($row = mysqli_fetch_assoc($result)){
echo '<option value="'.$row['board_id'].'">'.$row['name'].'</option>';
}
?>
</select>
</div>
<br>
<div class="col">
<input type="text" class="form-control" placeholder="" aria-label="Example text with button addon" aria-describedby="button-addon1">
</div>
</div>
</div>
<br>
</form>
<div class="col mb-xl-0">
<div class="card shadow">
<div class="card-header border-0">
<div class="row align-items-center">
<div class="col">
<h3 class="mb-0">수집된 컨텐츠</h3>
</div>
<div class="col">
</div>
<div class="col text-right">
<button type="button" class="btn btn-block btn-primary" data-toggle="modal" data-target="#modal-form">컨텐츠수집하기</button>
</div>
<div class="modal fade" id="modal-form" tabindex="-1" role="dialog" aria-labelledby="modal-form" aria-hidden="true">
<div class="modal-dialog modal- modal-dialog-centered modal" role="document">
<div class="modal-content">
<div class="modal-body p-0">
<div class="card bg-secondary border-0 mb-0">
<div class="card-header bg-transparent pb-5">
<div class="card-body px-lg-5 py-lg-5">
<div class="text-center text-muted mb-4">
<small>컨텐츠을 수집해 주세요</small>
</div>
<form role="form">
<?php $url = "https://www.todayhumor.co.kr/board/list.php?table=bestofbest";
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($curl);
curl_close($curl);
// 파싱
$dom = new DOMDocument();
@$dom->loadHTML($response);
$xpath = new DOMXPath($dom);
$table = $xpath->query("//table[@class='board_list']/tbody/tr");
foreach ($table as $row) {
$title = $xpath->query("/html/body/div[4]/div/div/table/tbody/tr[2]/td[3]", $row)->item(0)->nodeValue;
$url = $xpath->query("/html/body/div[4]/div/div/table/tbody/tr[2]/td[3]/a", $row)->item(0)->nodeValue;
$url = "https://www.todayhumor.co.kr" . $url;
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($curl);
curl_close($curl);
$dom2 = new DOMDocument();
@$dom2->loadHTML($response);
$xpath2 = new DOMXPath($dom2);
$content = $xpath2->query("//*[@id='containerInner']/div[6]/div[2]")->item(0)->nodeValue;
echo "<table>";
echo "<tr><td>제목: $title</td></tr>";
echo "<tr><td>내용: $content</td></tr>";
echo "</table>";
} ?>
</div>
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">닫기</button>
<button type="button" class="btn btn-primary">컨텐츠 등록</button>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="table-responsive">
<!-- Projects table -->
<table class="table align-items-center table-flush">
<thead class="thead-light">
<tr>
include_once('./_common.php');
include_once(G5_THEME_MOBILE_PATH.'/head.php');
?>
<?php
include "Snoopy.class.php";
$snoopy = new Snoopy;
$url = "https://humorpick.com/bbs/board.php?bo_table=best";
$snoopy->fetch($url);
$content = $snoopy->results;
$doc = new DOMDocument();
@$doc->loadHTML($content);
$xpath = new DOMXpath($doc);
$title = $xpath->query("/html/body/div[1]/div[2]/div/div/div[2]/section/div/form/div[1]/ul/li[1]/div[3]/a");
$link = $xpath->query("/html/body/div[1]/div[2]/div/div/div[2]/section/div/form/div[1]/ul/li[1]/div[3]/a@href");
$db = new mysqli("localhost", "root", "autoset", "test");
foreach($title as $i => $t) {
$title_text = $t->nodeValue;
$link_text = $link[$i]->nodeValue;
$link_text = 'https://humorpick.com'.$link_text;
$snoopy->fetch($link_text);
$content = $snoopy->results;
$content = mysqli_real_escape_string($db, $content);
$sql = "INSERT INTO contentss (title, content) VALUES ('$title_text', '$content')";
mysqli_query($db, $sql);
}
mysqli_close($db);
?>
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@9"></script>
<div class="container-fluid mt--7">
<div class="container-fluid mt--7">
<div class="container">
<form>
<div class="row">
<div class="col-3">
<select name="type" class="form-control">
<option value="gnu">그누보드</option>
<option value="xe">XE</option>
</select>
</div>
<div class="col-3">
<select name="board_id" class="form-control">
<?php
$query = "SELECT board_id,name FROM board WHERE mb_id = '{$member["mb_id"]}'";
$result = mysqli_query($conn, $query);
while($row = mysqli_fetch_assoc($result)){
echo '<option value="'.$row['board_id'].'">'.$row['name'].'</option>';
}
?>
</select>
</div>
<br>
<div class="col">
<input type="text" class="form-control" placeholder="" aria-label="Example text with button addon" aria-describedby="button-addon1">
</div>
</div>
</div>
<br>
</form>
<div class="col mb-xl-0">
<div class="card shadow">
<div class="card-header border-0">
<div class="row align-items-center">
<div class="col">
<h3 class="mb-0">수집된 컨텐츠</h3>
</div>
<div class="col">
</div>
<div class="col text-right">
<button type="button" class="btn btn-block btn-primary" data-toggle="modal" data-target="#modal-form">컨텐츠수집하기</button>
</div>
<div class="modal fade" id="modal-form" tabindex="-1" role="dialog" aria-labelledby="modal-form" aria-hidden="true">
<div class="modal-dialog modal- modal-dialog-centered modal" role="document">
<div class="modal-content">
<div class="modal-body p-0">
<div class="card bg-secondary border-0 mb-0">
<div class="card-header bg-transparent pb-5">
<div class="card-body px-lg-5 py-lg-5">
<div class="text-center text-muted mb-4">
<small>컨텐츠을 수집해 주세요</small>
</div>
<form role="form">
<?php $url = "https://www.todayhumor.co.kr/board/list.php?table=bestofbest";
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($curl);
curl_close($curl);
// 파싱
$dom = new DOMDocument();
@$dom->loadHTML($response);
$xpath = new DOMXPath($dom);
$table = $xpath->query("//table[@class='board_list']/tbody/tr");
foreach ($table as $row) {
$title = $xpath->query("/html/body/div[4]/div/div/table/tbody/tr[2]/td[3]", $row)->item(0)->nodeValue;
$url = $xpath->query("/html/body/div[4]/div/div/table/tbody/tr[2]/td[3]/a", $row)->item(0)->nodeValue;
$url = "https://www.todayhumor.co.kr" . $url;
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($curl);
curl_close($curl);
$dom2 = new DOMDocument();
@$dom2->loadHTML($response);
$xpath2 = new DOMXPath($dom2);
$content = $xpath2->query("//*[@id='containerInner']/div[6]/div[2]")->item(0)->nodeValue;
echo "<table>";
echo "<tr><td>제목: $title</td></tr>";
echo "<tr><td>내용: $content</td></tr>";
echo "</table>";
} ?>
</div>
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">닫기</button>
<button type="button" class="btn btn-primary">컨텐츠 등록</button>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="table-responsive">
<!-- Projects table -->
<table class="table align-items-center table-flush">
<thead class="thead-light">
<tr>