Python을 이용한 Scraping 예제 1

      editor: Young Jin Kim
      last edit: 2018.06.18 Thu

0. Packages importing

1. Site 들여다보기

2. split과 join으로 key값 변경하기

3. requests와 BS를 이용해 페이지 긁어오기

4. 최종 코드

  • 웹페이지는 .html 뿐이라고 생각할 수 있지만,
    java를 사용하는 경우 동적으로 웹페이지를 불러온다.

  • 대표적인 것이 JSP(Java Server Pages)가 있다.
    개발자 도구(크롬 기준 F12)에서 네트워크 탭을 열어 놓은 뒤 웹페이지를 새로 불러오면 .jsp, .ajax, .do 등 많은 것들이 보인다.

  • 이번 예제에서 눈여겨 볼 것은 .do 이다.
    이는 자바 플랫폼 기반의 스프링 프레임워크에서 사용되며 변수들을 받아서 동적으로 웹페이지를 불러온다.
    특히, 현재 전자정부 표준프레임워크의 기반 기술로서 우리나라의 공공기간 웹 서비스 개발에 많이 쓰인다.
  • 이번 예제에서는 이러한 .do 파일로 이루어진 페이지를 스크래핑 하는 예제를 다뤄보겠다.

0. Packages importing

     ;패키지 불러오기

In [1]:
import requests as rq # 웹페이지 불러오는 용도
from bs4 import BeautifulSoup # html문서 파싱하는 용도
import time # 트래픽 관리 용도

1. Site 들여다 보기

  • 이번 예제의 경우는 주소에서 findList.do가 숨겨져 있지 않고 바로 보여서 쉬운 경우이다.
  • 하지만 뒤에 많은 인자들이 숨어있다. 따라서 개발자 도구(크롬 기준 F12)에서 인자들을 파악한다.

  • 이 개발자 도구에서 Network tab을 보면 아직은 아무것도 없지만, 새로운 page를 load하면 불러오는 것들을 다음과 같이 나타나게 한다. 여기서 우리가바라볼 것은 .do와 같은 액션을 찾는 것이다. 이번 경우는 앞서 이야기했던 대로 findList.do이고 맨 위에 나타난다.

  • 이 findList.do의 Headers tab을 보면 General, Response Headers, Request Headers, Form Data처럼 많은 항목을 담고 있다. (경우에 따라 달라질 수도 있다.) 여기서 마지막 Form Data항이 넘겨주는 인자들을 담고있다.
    보이는 것 처럼 PRDT_CL_NM:, ... 처럼 많은 인자들을 담고있는데, 인자 하나 하나씩 바꿔가면서 해당인자가 어떤 역할을 하는지 알 수 있다. 이번에 사용할 인자는 다음과 같다.
  • START_YMD: 기간 처음
  • END_YMD: 기간 끝
  • FD_LCT_CD: 습득지역 ; 서울특별시 코드; LCA000
  • pageIndex: page 번호
  • Form Data 옆에 view source를 누르면 findList.do가 어떤 형식으로 인자를 받는지 알 수 있다.

2. splitjoin으로 key값 변경하기

  • 전체 코드
In [2]:
head = 'https://www.lost112.go.kr/find/findList.do'
key = 'PRDT_CL_NM=&PRDT_CL_CD01=&PRDT_CL_CD02=&START_YMD=20180612&END_YMD=20180626&PRDT_NM=&DEP_PLACE=&SITE=&PLACE_SE_CD=&FD_LCT_CD=&IN_NM=&ATC_ID=&MDCD=&SRNO=&F_ATC_ID=&pageIndex=1&MENU_NO='

key = [x.split('=') for x in key.split("&")]
key[3][1] = '20180612' # START DATE
key[4][1] = '20180626' # END DATE
key[9][1] = 'LCA000' # LOCALE
key[-2][1] = '1' # PAGE

key = ["=".join(x) for x in key]
key = "&".join(key)
url = head + '?' + key
  • urlhead + key로 구성하고, 각 인자들의 값을 바꿀 수 있도록 세팅한다.
In [3]:
head = 'https://www.lost112.go.kr/find/findList.do'
key = 'PRDT_CL_NM=&PRDT_CL_CD01=&PRDT_CL_CD02=&START_YMD=20180612&END_YMD=20180626&PRDT_NM=&DEP_PLACE=&SITE=&PLACE_SE_CD=&FD_LCT_CD=&IN_NM=&ATC_ID=&MDCD=&SRNO=&F_ATC_ID=&pageIndex=1&MENU_NO='
  • 인자들을 내장함수 split을 통해 리스트로 쪼개고 값을 넘겨준다.
    • split 사용법:
      <변수>.split(<구분자>)
      ex)
      > x = "1,2,3,4" 
      > y = x.split(",")
      > y
      [1, 2, 3, 4]
      
  • 먼저 인자 단위로 쪼개기 위해 &로 쪼개고, 인자와 값을 쪼개기 위해 =으로 쪼갠다.
  • 쪼개진 key는 17x2의 값을 가지고 있다.
In [4]:
key = [x.split('=') for x in key.split("&")]
key[3][1] = '20180612' # START DATE
key[4][1] = '20180626' # END DATE
key[9][1] = 'LCA000' # LOCALE
key[-2][1] = '1' # PAGE
  • 쪼개진 key들을 내장함수 join을 이용해 다시 문자열로 합쳐준다.
    • join 사용법:
      <구분자>.join(<변수>)
      ex)
      > x = [1, 2, 3, 4]
      > y = "~".join(x)
      > y
      "1~2~3~4"
      
  • 두 번 split 했으니 두 번 join 해준다. 최종적으로 key는 다시 하나의 문자열이 된다.
  • key를 다시 head와 합쳐 url을 완성한다.
In [5]:
key = ["=".join(x) for x in key]
key = "&".join(key)
url = head + '?' + key

3. requests와 BS를 이용해 페이지 긁어오기

  • 전체 코드
In [6]:
source = rq.get(url)
soup = BeautifulSoup(source.text,'html.parser')
columns = [x.text for x in soup.select('.type01 tr th')]
temp = [x.text.replace("\n","").replace("\t","").replace("\r","") for x in soup.select('.type01 tr td')]
n = 6
rows = [temp[i:i+n] for i in range(0,len(temp),n)]
print(columns)
for row in rows:
    print(row)
['관리번호', '습득물명', '분실자명', '보관장소', '연락처', '주운일자']
['V0002502D06280018', '카카오뱅크 라이언카드', '-', 'CGV(신촌점)', '02-373-2995', '2018-06-26']
['V0002502D06280016', 'KB 국민카드', '-', 'CGV(신촌점)', '02-373-2995', '2018-06-26']
['V0002502D06280014', '신한카드', '-', 'CGV(신촌점)', '02-373-2995', '2018-06-25']
['V0002502D06280012', '신한카드', '-', 'CGV(신촌점)', '02-373-2995', '2018-06-25']
['V0002502D06280010', '열쇠', '-', 'CGV(신촌점)', '02-373-2995', '2018-06-24']
['V0002502D06280008', '카페베네 카드', '-', 'CGV(신촌점)', '02-373-2995', '2018-06-24']
['V0002502D06280006', '주민등록증', '-', 'CGV(신촌점)', '02-373-2995', '2018-06-23']
['V0002502D06280004', '우리v체크카드', '-', 'CGV(신촌점)', '02-373-2995', '2018-06-23']
['V0002502D06280002', 'cu멤버쉽&교통카드', '-', 'CGV(신촌점)', '02-373-2995', '2018-06-22']
['F2018062800002828', '삼성 폴더폰', '-', '서울중부경찰서', '02-3396-9156', '2018-06-19']

3.1 html 문서 파싱하기

  • requestsget함수를 통해 url과 통신한다.
  • 다음으로 BeautifulSoup을 이용해 html 문서를 parsing한다.
In [7]:
source = rq.get(url)
soup = BeautifulSoup(source.text,'html.parser')

3.1 Parsing 된 html 문서에서 원하는 정보 scrap하기

  • 먼저 parsing이 된 soup을 살펴보자.
  • 방법 1: 숙련된 사람은 아래의 html파일에서 Ctrl + F로도 잘 찾는다.
    하지만 중복된 정보가 많을 경우, 방법 2가 더 간편하다.
In [8]:
soup
Out[8]:
<!DOCTYPE html>

<html lang="ko">
<head>
<meta charset="utf-8">
<meta content="width=device-width, initial-scale=1.0, maximum-scale=5.0, user-scalable=yes" name="viewport"/>
<meta content="NOARCHIVE" name="ROBOTS"/>
<meta content="IE=Edge" http-equiv="X-UA-Compatible"/>
<!-- 추가수정본 180410
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta http-equiv="Cache-Control" content="no-cache"/>
<meta http-equiv="Expires" content="100"/>
<meta http-equiv="Pragma" content="no-cache"/> -->
<!-- 주인을 찾아요!(습득물) > 습득물 목록 조회 - 경찰청 유실물 종합관리시스템 -->
<title>
 
	주인을 찾아요!(습득물) &gt; 습득물 목록 조회 | 경찰청 유실물 종합관리시스템
	

</title>
<!-- Chrome, Safari, IE -->
<link href="/favicon.ico?v=2" rel="shortcut icon" type="image/x-icon"/>
<link href="/favicon.ico?v=2" rel="icon" type="image/x-icon"/>
<!-- Firefox, Opera (Chrome and Safari say thanks but no thanks)  -->
<link href="/images/home/common/favicon.ico?v=2" rel="icon"/>
<link href="/images/home/common/favicon-16.png" rel="icon" sizes="16x16"/>
<link href="/images/home/common/favicon-32.png" rel="icon" sizes="32x32"/>
<!-- HOME_NEW 디자인 적용 사용 S-->
<link href="/css/home/style.css" media="screen" rel="stylesheet"/>
<!-- <link href="/css/home/home_common.css" rel="stylesheet" type="text/css" /> -->
<!-- <link href="/css/home/home_main.css" rel="stylesheet" type="text/css" /> -->
<!-- <link href="/css/home/home_sub.css" rel="stylesheet" type="text/css" />  -->
<!-- <link href="/css/home/home_MetroJs.css" rel="stylesheet" type="text/css" />  -->
<!-- 퀵메뉴참조 -->
<!-- LOST112_CDH 신규추가 다음주소API-->
<script src="https://spi.maps.daum.net/imap/map_js_init/postcode.v2.js"></script>
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]>
<!--[if lt IE 9]>
<script src="http://ie7-js.googlecode.com/svn/version/2.1(beta4)/IE9.js"></script>
<![endif]>
<!--[if lt IE 8]>
<script src="http://ie7-js.googlecode.com/svn/version/2.1(beta4)/IE8.js"></script>
<![endif]>
<!--[if lt IE 7]>
<script src="http://ie7-js.googlecode.com/svn/version/2.1(beta4)/IE7.js"></script>
<![endif]-->
<script>
	//ie8이하에서 html5 태그가 허용되도록 변경
	document.createElement('header');
	document.createElement('nav');
	document.createElement('article');
	document.createElement('section');
	document.createElement('aside');
	document.createElement('footer');
</script>
<script src="/js/jquery-1.7.1.min.js" type="text/javascript"></script>
<!-- HOME_NEW 디자인 적용 사용 E-->
<script src="/js/jquery-1.9.0.min.js" type="text/javascript"></script>
<script src="/js/jquery-latest.js" type="text/javascript"></script>
<script src="/js/lost112.js" type="text/javascript"></script>
<script src="/include/policeHelper.js" type="text/javascript"></script>
<script src="/include/EgovMultiFile.js" type="text/javascript"></script>
<script src="/js/common.js" type="text/javascript"></script>
<script src="/include/policeOnloader.js" type="text/javascript"></script>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type"/>
<script src="/js/jquery.carouFredSel-5.5.0-packed.js" type="text/javascript"></script>
<script src="/js/home/ui.js" type="text/javascript"></script>
<script src="/js/home/calendar.js" type="text/javascript"></script>
<!-- 색상 -->
<script src="/js/color/iColorPicker.js" type="text/javascript"></script><!-- 2016-01-14추가 -->
<!-- 로딩바spin-->
<script src="/js/spin.js" type="text/javascript"></script>
<script src="/js/spin.min.js" type="text/javascript"></script>
<script src="/js/jquery.spin.js" type="text/javascript"></script>
<!-- 그래픽 화면-->
<script src="/js/amcharts/amcharts.js" type="text/javascript"></script>
<script src="/js/amcharts/pie.js" type="text/javascript"></script>
<!-- 화면 확대 축소 화면-->
<script src="/js/accessible.js" type="text/javascript"></script>
<!-- HOME_NEW 디자인 적용 사용 S-->
<script src="/js/MetroJs/bundles/home_MetroJs.lt.js" type="text/javascript"></script>
<script type="text/javascript">
	$(document).ready(function() {
		$(".live-tile,.flip-list").liveTile();
	});
</script>
<style type="text/css">
	@import url(https://fonts.googleapis.com/earlyaccess/jejugothic.css);
	@import url(https://fonts.googleapis.com/earlyaccess/jejuhallasan.css);
	.jg {font-family: 'Jeju Gothic';}
	.jh {font-family: 'Jeju Hallasan';}
</style>
<!-- HOME_NEW 디자인 적용 사용 E-->
<script type="text/javascript">
  <!--
  function setCookie( name, value, expiredays ) { 
   var todayDate = new Date(); 
    todayDate.setDate( todayDate.getDate() + expiredays ); 
    document.cookie = name + "=" + escape( value ) + "; path=/; expires=" + todayDate.toGMTString() + ";" 
   }
  function closePop() { 
   if ( document.pop_form.chkbox.checked ){ 
    setCookie( "maindiv", "done" , 1 ); 
   } 
   document.all['pop'].style.visibility = "hidden";
  }
  //-->  
</script>
<script type="text/javascript">
//<![CDATA[
	/*
	SELECT의 OPTION을 조회한다.
		@param id - SELECT객체의 ID
		@param code - 조회시 필요한 parameter
		@param menuId - SQL관련 KEY
		@param defaultValue - 조회 후 기본 선택값
	*/
	function fnSelect(id, code, menuId, defaultValue) {
		
		url = "/ajaxCodeSelect.do";
		data = "ajaxParam1="+code+"&menuId="+menuId;
		ajaxSelect(url, data, id, defaultValue, 'select');
	}
	function fnSelectNew(id, code, menuId, defaultValue) {
		url = "/ajaxCodeSelect.do";
		data = "menuId="+menuId+"&"+code;
		ajaxSelect(url, data, id, defaultValue, 'select');
	}
	function fnPage(id, code, menuId, preHtml) {
		url = "/ajaxPage.do";
		data = "ajaxParam1="+code+"&menuId="+menuId;
		ajaxPage(url, data, id, preHtml);
	}
	function fnValue(id, code, menuId, preHtml) {
		url = "/ajaxPage.do";
		data = "ajaxParam1="+code+"&menuId="+menuId;
		ajaxValue(url, data, id, preHtml);
	}
	function fnValues(id, code1, code2, menuId, preHtml) {
		url = "/ajaxPages.do";
		data = "ajaxParam1="+code1+"&ajaxParam2="+code2+"&menuId="+menuId;
		ajaxValues(url, data, id, preHtml,true);
	}

/* 	호출하는 .jsp파일에게 불린다.
 	파라미터 받아서 ajaxLayer.do 컨트롤러를 호출하고 
 	ajaxCodeLayer 에 접근한다.
 	2014.08.26 YMYOON					*/
	
	function fnLayer(id, code, menuId, defaultValue){
		url = "/ajaxLayer.do";
		data = "ajaxParam1="+code+"&menuId="+menuId+"&gubun="+defaultValue;
		ajaxCodeLayer(url, data, id, defaultValue);		
	}
	
 	
//  	function fnLayer(id, code, menuId, defaultValue, layerNum){
// 		url = "/ajaxLayer.do";
// 		data = "ajaxParam1="+code+"&menuId="+menuId+"&layerNum="+layerNum;
// 		ajaxCodeLayer(url, data, id, defaultValue);	
// 	}
 	
 	function fnBanner(id, sqlKey, defaultValue) {
		url = "/ajaxBanner.do";
		data = "sqlKey="+sqlKey;
		ajaxBanner(url, data, id, defaultValue);	
 	}

//  	fnPopup원본
//  	function fnPopup(id, code, menuId, defaultValue){
// 		url = "/popup.do"; 
// 		data = "&POPUP_ID="+menuId;
// 		ajaxPopupLayer(url, data, id, defaultValue);		
// 	}
 	
 	function fnPopup(){
// 		url = "/popup.do"; 
// 		data = "&POPUP_ID="+menuId;
// 		ajaxPopupLayer(url, data, id, defaultValue);		
	}
 	
 	function fnDate(strDateObj,endDateObj){
 		var strDate = strDateObj.val();
 		var endDate = endDateObj.val();
 		var str = strDate.replace(/\s/g,'');
 		var end = endDate.replace(/\s/g,'');

 		bRtn = true;
		 if((str == strDate)&&(end == endDate)){
			if( (strDate != "" && strDate != null )||(endDate != "" && endDate != null) ) {
		 		if(strDate.length != '8' || endDate.length != '8'){
					if (strDate.length != '8'){
						bRtn = false;
						alert("검색 시작일을 선택하여 주십시오. \n ex) 20151011");
						strDateObj.focus();
					} else if (endDate.length != '8'){
						bRtn = false;
				 		alert("검색 종료일을 선택하여 주십시오. \n ex) 20151011");
						endDateObj.focus();
					}
				}else if(strDate>endDate){
		 			alert("시작일이 종료일보다 클 수 없습니다.");
		 			strDateObj.focus();
		 			bRtn = false;
				}
		 	}else{
		 		if (strDate == "" || strDate == null ){
			 		bRtn = false;
			 		alert("검색 시작일을 선택하여 주십시오. \n ex) 20151011");
		 			strDateObj.focus();
		 		}else if (endDate == "" || endDate == null){
			 		bRtn = false;
			 		alert("검색 종료일을 선택하여 주십시오. \n ex) 20151011");
					endDateObj.focus();
				}
		 	}
		 }else{
			alert("기간을 선택하여 주십시오. \n ex) 20151012");
			strDateObj.focus();
			bRtn = false;
		 }
		return bRtn;
 	}
 	
 	
 	// 색상코드 --------------------------------------------------------------------------------------------------------------------------------------------------
	var colorIdArr = [
			'CL1012','CL1013','CL1014','CL1015','CL1016','CL1017','CL1018','CL1019','CL1020','CL1021','CL1022','CL1023','CL1024','CL1025','CL1026','CL1027',
			'CL1028','CL1029','CL1030','CL1031','CL1032','CL1033','CL1034','CL1035','CL1036','CL1037','CL1038','CL1039','CL1040','CL1041','CL1042','CL1043',
			'CL1044','CL1045','CL1046','CL1047','CL1048','CL1049','CL1050','CL1051','CL1052','CL1053','CL1054','CL1055','CL1056','CL1057','CL1058','CL1059',
			'CL1060','CL1061','CL1062','CL1063','CL1064','CL1065','CL1066','CL1067','CL1068','CL1069','CL1070','CL1071','CL1072','CL1073','CL1074','CL1075',
			'CL1076','CL1077','CL1078','CL1079','CL1080','CL1081','CL1082','CL1083','CL1084','CL1085','CL1086','CL1087','CL1088','CL1089','CL1090','CL1091',
			'CL1092','CL1093','CL1094','CL1095','CL1096','CL1097','CL1098','CL1099','CL1100','CL1101','CL1102','CL1103','CL1104','CL1105','CL1106','CL1107',
			'CL1108','CL1109','CL1110','CL1111','CL1112','CL1113','CL1114','CL1115','CL1116','CL1117','CL1118','CL1119','CL1120','CL1121','CL1122','CL1123',
			'CL1001','CL1002','CL1003','CL1004','CL1005','CL1006','CL1007','CL1008','CL1009','CL1011','CL1010'
	];
 	
 	var hexIdArr = [
			'f00', 'ff0', '0f0', '0ff', '00f', 'f0f', 'fff', 'ebebeb', 'e1e1e1', 'd7d7d7', 'ccc', 'c2c2c2', 'b7b7b7', 'acacac', 'a0a0a0', '959595', 
		    'ee1d24', 'fff100', '00a650', '00aeef', '2f3192', 'ed008c', '898989', '7d7d7d', '707070', '626262', '555', '464646', '363636', '262626', '111', '000',
		    'f7977a', 'fbad82', 'fdc68c', 'fff799', 'c6df9c', 'a4d49d', '81ca9d', '7bcdc9', '6ccff7', '7ca6d8', '8293ca', '8881be', 'a286bd', 'bc8cbf', 'f49bc1', 'f5999d',
		    'f16c4d', 'f68e54', 'fbaf5a', 'fff467', 'acd372', '7dc473', '39b778', '16bcb4', '00bff3', '438ccb', '5573b7', '5e5ca7', '855fa8', 'a763a9', 'ef6ea8', 'f16d7e',
		    'ee1d24', 'f16522', 'f7941d', 'fff100', '8fc63d', '37b44a', '00a650', '00a99e', '00aeef', '0072bc', '0054a5', '2f3192', '652c91', '91278f', 'ed008c', 'ee105a',
		    '9d0a0f', 'a1410d', 'a36209', 'aba000', '588528', '197b30', '007236', '00736a', '0076a4', '004a80', '003370', '1d1363', '450e61', '62055f', '9e005c', '9d0039',
		    '790000', '7b3000', '7c4900', '827a00', '3e6617', '045f20', '005824', '005951', '005b7e', '003562', '002056', '0c004b', '30004a', '4b0048', '7a0045', '7a0026',
		    'fff','000','f00','ff8000','ff0','0f0','00f','a52a2a','ee82ee','ffc0cb','fff'
	];

	var colorNmArr = [
			'레드(빨강)','엘로우(노랑)','그린(초록)','터키오이스(옥)','블루(파랑)','마젠타(자홍)','화이트(흰)','그레이(회)','그레이(회)','라이트그레이(옅은회)','그레이(회)','실버(은)','그레이(회)','그레이(암회)','그레이(회)','그레이(회)',
			'알리자린(홍)','엘로우(노랑)','그린(초록)','시안(청록)','블루(파랑)','핑크(분홍)','그레이(회)','그레이(회)','그레이(회)','그레이(회)','그레이(회)','그레이(회)','그레이(회)','그레이(회)','그레이(회)','블랙(검정)',
			'코럴(산호)','코럴(산호)','피치오렌지(오렌지)','엘로우(밝은노랑)','라임(라임)','네온그린(형광초록)','씨그린(노르스름한녹)','시안(청록)','딥스카이블루(새파란하늘)','코발트(짙은청록)','로열블루(밝은남)','블루(파랑)','바이올렛(보라)','퓨시아(자홍)','핑크(연한핑크)','레드(연한레드)',
			'코럴(산호)','코럴(산호)','오렌지(연한오렌지)','엘로우(밝은노랑)','샤르트뢰즈(역녹)','그린(초록)','씨그린(노르스름한녹)','스트롱시안(진한청록)','딥스카이블루(새파란하늘)','코발트(밝은남)','로열블루(밝은남)','블루(어두운파랑)','바이올렛(보라)','퓨시아(자홍)','핑크(연한핑크)','레드(연한빨강)',
			'알리자린(홍)','코럴(산호)','오렌지(선명한오렌지)','엘로우(노랑)','샤르트뢰즈(역녹)','에메랄드(선녹)','그린(초록)','다크시안(어두운청록)','딥스카이블루(새파란하늘)','코발트(짙은청록)','코발트(짙은청록)','블루(파랑)','바이올렛(보라)','퓨시아(자홍)','핑크(분홍)','핑크(선명한분홍)',
			'다크레드(진빨강)','코럴(산호)','다크오렌지(어두운오렌지)','올리브(녹갈)','샤르트뢰즈(역녹)','에메랄드(선녹)','라임그린(어두운청록)','다크시안(어두운청록)','다크블루(어두운파랑)','코발트(짙은청록)','코발트(짙은청록)','블루바이올렛(남보라)','다크바이올렛(진보라)','퓨시아(자홍)','다크핑크(진분홍)','다크핑크(진분홍)',
			'다크레드(진빨강)','브라운(갈)','브라운(갈)','올리브(녹갈)','샤르트뢰즈(역녹)','에메랄드(선녹)','라임그린(어두운청록)','다크시안(어두운청록)','다크블루(어두운파랑)','코발트(짙은청록)','로열블루(밝은남)','블루바이올렛(남보라)','다크바이올렛(진보라)','퓨시아(자홍)','다크핑크(진분홍)','다크레드(진빨강)',
			'화이트(흰)','블랙(검정)','레드(빨강)','오렌지(주황)','엘로우(노랑)','그린(초록)','블루(파랑)','브라운(갈)','바이올렛(보라)','핑크(분홍)','기타'
	];
	
	// 배열에서 해당 idx 구하기
	function in_array(val, arr){
 		for(i=0; i<arr.length; i++){
 			if(arr[i] == val){
 		    	return i;
 		   	}
		}
 		return -1;
	}
		    
 	// 색상 코드값으로 색상이름 구하기
 	function fn_color_nm1(colorId){
		var colorId = colorId.substr(1, colorId.length-1);
		var idx = in_array(colorId, hexIdArr);
 		$( "#CLR_NM" ).val(colorNmArr[idx]);	// 색상이름값 셋팅
 		$( "#CLR_CD" ).val(colorIdArr[idx]);		// 색상코드값 셋팅
 	}
 	
 	// 색상 코드값으로 색상이름 구하기
 	function fn_color_nm2(colorId, name, type){
		var idx = in_array(colorId, colorIdArr);
		
		if(type == 'update'){ // 수정을 클릭했을 경우
			$( "#"+name).val(colorNmArr[idx]);
			$("#CLR_CD").val(colorId);
			$("#CLR_HEX_CD").val("#"+hexIdArr[idx]);
			$("#CLR_HEX_CD").css("background-color","#"+hexIdArr[idx]);
		} else{ // 상세화면일 경우
 			$( "#"+name).html(colorNmArr[idx]);
 			$("#CLR_CD").val(colorId);
 			$("#CLR_HEX_CD").val("#"+hexIdArr[idx]);
			$("#CLR_HEX_CD").css("background-color","#"+hexIdArr[idx]);
			$("#icp_CLR_HEX_CD").remove();
			
		}
 	}
// ]]> 

 // LOST112_CDH(20170613) 주소검색 버튼 클릭 다음API를 이용한 주소검색
	function fnDaumAddrApi(zp_cd, addr, addr_dtl){
		new daum.Postcode({
	        oncomplete: function(data) {
	            // 팝업에서 검색결과 항목을 클릭했을때 실행할 코드를 작성하는 부분.
	
	            // 각 주소의 노출 규칙에 따라 주소를 조합한다.
	            // 내려오는 변수가 값이 없는 경우엔 공백('')값을 가지므로, 이를 참고하여 분기 한다.
	            var fullAddr = ''; // 최종 주소 변수
	            var extraAddr = ''; // 조합형 주소 변수
	            // 사용자가 선택한 주소 타입에 따라 해당 주소 값을 가져온다.
	            if (data.userSelectedType === 'R') { // 사용자가 도로명 주소를 선택했을 경우
	                fullAddr = data.roadAddress;
	
	            } else { // 사용자가 지번 주소를 선택했을 경우(J)
	                fullAddr = data.jibunAddress;
	            }
	
	            // 사용자가 선택한 주소가 도로명 타입일때 조합한다.
	            if(data.userSelectedType === 'R'){
	                //법정동명이 있을 경우 추가한다.
	                if(data.bname !== ''){
	                    extraAddr += data.bname;
	                }
	                // 건물명이 있을 경우 추가한다.
	                if(data.buildingName !== ''){
	                    extraAddr += (extraAddr !== '' ? ', ' + data.buildingName : data.buildingName);
	                }
	                // 조합형주소의 유무에 따라 양쪽에 괄호를 추가하여 최종 주소를 만든다.
	                fullAddr += (extraAddr !== '' ? ' ('+ extraAddr +')' : '');
	            }
	
	            // 우편번호와 주소 정보를 해당 필드에 넣는다.
	            document.getElementById(zp_cd).value = data.zonecode; //5자리 새우편번호 사용
	            document.getElementById(addr).value = fullAddr;
	
	            // 커서를 상세주소 필드로 이동한다.
	            document.getElementById(addr_dtl).focus();
	        }
	    }).open();
	}
 
</script>
<!-- flush="true" -->
</meta></head>
<body id="none">
<div id="wrap">
<!--// Header -->
<style>
.uin_focus {border: 3px solid red;}
.uout_focus {border: 0px;}
</style>
<!--[if lte IE 8]>
<p>
    사용하고 계신 브라우저는 Internet Explore 8 이하입니다.<br />
    <strong>경찰청 유실물 종합관리 시스템 홈페이지는 Internet Explore 9 이상에서 최적화 되어 있습니다.</strong> 웹 브라우저를 <a href="http://www.microsoft.com/korea/ie">업그레이드</a> 해 보세요.<br />
    다른 최신 브라우저를 사용해 보셔도 좋습니다!
    <a href="http://www.mozilla.or.kr/ko/Firefox/">fireFox</a>,
    <a href="http://kr.opera.com/download/">opera</a>,
    <a href="http://www.apple.com/kr/safari/">Safari</a>,
    <a href="http://www.google.com/chrome?hl=ko">chrome</a>
</p>
<![endif]-->
<noscript>스크립트가 지원되지 않는 환경입니다. 일부기능이 작동안될 수 있습니다.</noscript>
<input id="rootUrl" type="hidden" value=""/>
<script type="text/javascript">
//<![CDATA[
           
var selectedMainMenuNo = "";
var selectedSubMenuNo = "";

	$(document).ready(function(){
		
// 		if($("#totalSearch").val() != ""){
// 			$("#totalSearch").addClass("focusnot");
// 		}else{
// 			$("#totalSearch").removeClass("focusnot");
// 		}
		
		$("#totalSearch").keydown(function(){ 
			if(event.keyCode == 13){				
				$('#mainSearch').click();
			}  
		});


		$('#mainSearch').click(function(){
			//$('#loading').fadeIn(150);
// 			$('#loading_spin').spin('large','gray');
// 			document.frmMainTopSearch.action = "/searchIndex.do";
			document.frmMainTopSearch.action = "/lost/toTalSearch.do";			
		   	document.frmMainTopSearch.submit();
		});

// 		$('#go_language').click(function(){
// 			if($('#sl_language').val() == 'English'){
// 				fn_manyLanguages('English');
// 			}else if($('#sl_language').val() == 'Japanese'){
// 				fn_manyLanguages('Japanese');
// 			}else if($('#sl_language').val() == 'Chinese'){
// 				fn_manyLanguages('Chinese');
// 			}
// 		});
		
		$('button.go_select').click(function(){
			var fUrl = $(this).parent().find('select option:selected').val();
			window.open(fUrl,'_blank');
		});
		
	});
	

	/*다국어 사이트 바로가기 Controller로 변경(다국어 사이트 접속 카운트 위해) */
	function fn_manyLanguages(target){
		if(target == 'English'){
			window.open("/manyLanguage.do?langType=en");
		}else if(target == 'Japanese'){
			window.open("/manyLanguage.do?langType=jp");
		}else if(target == 'Chinese'){
			window.open("/manyLanguage.do?langType=ch");
		}
		
	}


	$('#btn').click(function(){
		$add(document.commandMap, 'IN_RES_NO', $('#RES_NO1').val()+$('#RES_NO2').val());
		tform = document.commandMap;
		window.open("","new_popup1","height=700,width=900,scrollbars=yes");
		tform.target = "new_popup1";
		tform.action = "/reportProc.do?REPORT_ID=lostProcRpt";
		tform.method = "post";
		tform.submit();

		tform.target = "";
	});


	function fn_login(val){
		if(val=="Y"){
			var resNoYn = "";
			if(resNoYn == "" || resNoYn == null){
				window.location = "/html.do;jsessionid=zfZUKGE3RyFAVs0YQ0Poa30PEJI1GC45dacJvYO318DuaC910jn0a3ASTEv1WNqp.found02_servlet_www?html=/lost/firstNameCheck&sub=LS&title=분실물&ptitle=실명인증";
			}else{
				window.location = "/html.do;jsessionid=zfZUKGE3RyFAVs0YQ0Poa30PEJI1GC45dacJvYO318DuaC910jn0a3ASTEv1WNqp.found02_servlet_www?html=/lost/addLostView&sub=LS&title=분실물&ptitle=분실물신고";
			}
		}else{
			alert("로그인이 필요한 페이지입니다.");
			window.location = "/html.do;jsessionid=zfZUKGE3RyFAVs0YQ0Poa30PEJI1GC45dacJvYO318DuaC910jn0a3ASTEv1WNqp.found02_servlet_www?html=/member/login&sub=U&title=회원마당&ptitle=로그인";
		}
	}

	function fn_loginMyPage(val){
		if(val=="Y"){
			window.location = "/html.do;jsessionid=zfZUKGE3RyFAVs0YQ0Poa30PEJI1GC45dacJvYO318DuaC910jn0a3ASTEv1WNqp.found02_servlet_www?html=/mypage/myLostList.do";
		}else{
			alert("로그인이 필요한 페이지입니다.");
			window.location = "/html.do;jsessionid=zfZUKGE3RyFAVs0YQ0Poa30PEJI1GC45dacJvYO318DuaC910jn0a3ASTEv1WNqp.found02_servlet_www?html=/member/login&sub=U&title=회원마당&ptitle=로그인";
		}
	}
	
	function fn_login2(){
			window.location = "/html.do;jsessionid=zfZUKGE3RyFAVs0YQ0Poa30PEJI1GC45dacJvYO318DuaC910jn0a3ASTEv1WNqp.found02_servlet_www?html=/dms-sample/sample_regInput";
	}
	
	$('#mainSearch').click(function(){
		searchPro(0,1,0);
	});

	function fn_findHpInfo(){
		window.open("https://www.handphone.or.kr/lost112/ph1_search_lost112_pop.php", "popupModelCode", "scrollbars=yes, resizable=no, location=yes, width=500,height=500");
	}
	
	function fn_menuMove(url){ 
		//$('#loading').fadeIn(150);
		$('#loading_spin').spin('large','gray');
		document.headerMap.action = url;
	   	document.headerMap.submit();
	}
	
	function toggleFocus(el) {
		console.log(el.className);
	    el.className  =  "uin_focus";
		console.log(el);
	}
	
	function fn_clickMenu(menuNo, url, loginYn){
// 		alert(menuNo+"============="+url+"============="+loginYn)
		$('#loading_spin').spin('large','gray');
        if ( loginYn == 'Y' ){
			alert("로그인이 필요한 페이지입니다.");
			window.location = "/html.do;jsessionid=zfZUKGE3RyFAVs0YQ0Poa30PEJI1GC45dacJvYO318DuaC910jn0a3ASTEv1WNqp.found02_servlet_www?html=/member/login&sub=U&title=회원마당&ptitle=로그인";
			return ;
	    }else if(menuNo == 'EXCEPTION' && loginYn == 'N'){
	    	alert("로그아웃 후 사용가능한 페이지입니다.");
	    	$('#loading_spin').data('spinner').stop();
	    	return ;
	    }
        document.headerMap.action = url; 
	   	document.headerMap.submit();
	}

	
	
//]]>
</script>
<!-- 헤더 영역 -->
<div class="d_direct" id="accessibility">
<a class="link_direct" href="#lost112_body">본문 바로가기</a> <!-- skip_contents -> link_direct -->
<a class="link_direct" href="#lost112_main_menu">메뉴 바로가기</a> <!-- skip_menu -> link_direct -->
</div>
<header>
<!-- gnb -->
<div id="gnb">
<!-- gnb_wrap1 -->
<div class="gnb_wrap1">
<ul class="accessible">
<li class="access_mark"><img alt="장애인마크" src="/images/home/common/accessible_icon.png"/></li>
<li class="access_size">글자크기</li>
<li class="access_zoomout"><button onclick="javascript:zoomcontrol.zoomout();" title="폰트 작게">-</button></li>
<li class="access_zoomreset"><button onclick="javascript:zoomcontrol.zoomreset();" title="기본설정으로 돌아가기">100%</button></li>
<li class="access_zoomin"><button onclick="javascript:zoomcontrol.zoomin();" title="폰트 크게">+</button></li>
<li class="access_contrast"><button class="dark" title="고대비설정">
<img alt="고대비설정" src="/images/home/common/accessible_contrast.png"/>
</button></li>
</ul>
<ul class="gnb_lang">
<li><a class="icons_kor" href="/index.do">한국어</a></li>
<li><a class="icons_eng" href="/manyLanguage.do?langType=en" target="_blank">ENGILISH</a></li>
<li><a class="icons_jap" href="/manyLanguage.do?langType=jp" target="_blank">日本語</a></li>
<li><a class="icons_chi" href="/manyLanguage.do?langType=ch" target="_blank">中文</a></li>
</ul>
<!-- gnb_loginmenu -->
<div class="gnb_loginmenu">
<ul>
<!-- 	2016-11-11 추가 및 수정 -->
<li><a class="gnb_login" href="javascript:fn_clickMenu('MENU5400','/html.do?html=/member/login&amp;sub=U&amp;title=회원마당&amp;ptitle=로그인&amp;MENU_NO=MENU5400','N');">로그인</a></li>
<li><a class="gnb_join" href="javascript:fn_clickMenu('MENU5200','/member/useClause.do?1=1&amp;MENU_NO=MENU5200','N');">회원가입</a></li>
<li><a class="gnb_join" href="javascript:fn_clickMenu('a','','Y');">1:1 문의</a></li>
<li><a class="gnb_sitemap" href="javascript:fn_menuMove('/html.do?html=/minwon/sitemap&amp;sub=M&amp;title=정보마당&amp;ptitle=사이트맵')">사이트맵</a></li>
</ul>
</div>
<!-- //gnb_loginmenu -->
</div>
<!-- //gnb_wrap1 -->
</div>
<!-- //gnb -->
<!-- gnb_wrap2 -->
<div class="gnb_wrap2">
<!-- search_wrap -->
<div class="search_wrap">
<h1 class="logo">
<a href="/index.do" id="logoimg"><img alt="LOST112 경찰청 유실물 통합포털" src="/images/home/common/logo.png"/></a>
</h1>
<form action="#none" id="frmMainTopSearch" method="post" name="frmMainTopSearch">
<fieldset>
<legend>통합검색</legend>
<!-- searchWrap -->
<div class="searchWrap">
<!-- search -->
<div class="search">
<!-- search-box -->
<div class="search-box">
<!-- 									<span class="search_type"> -->
<!-- 										<select id="searchCate1" name="searchCate" class="searchCate1"> -->
<!-- 											<option value="0">통합검색</option> -->
<!-- 											<option value="1">습득물</option> -->
<!-- 											<option value="2">분실물</option> -->
<!-- 											<option value="3">타기관 습득물</option> -->
<!-- 											<option value="4">타기관 분실물</option> -->
<!-- 									</select> -->
<!-- 									</span>  -->
<label class="hidden" for="totalSearch">검색입력폼</label>
<input class="input_query" id="totalSearch" name="totalSearch" type="text"/>
</div>
<!-- //search-box -->
<button id="mainSearch" name="mainSearch" title="통합검색" type="button">검색</button>
</div>
<!-- //search -->
</div>
<!-- //searchWrap -->
</fieldset>
</form>
<!-- sns_menu -->
<div class="sns_menu">
<ul class="sns_icon">
<li><a class="icon_twitter" href="https://twitter.com/lost112kr" target="_blank"><img alt="트위터" src="/images/home/common/icon_twitter.png"/></a></li>
<li><a class="icon_facebook" href="https://www.facebook.com/lost112kr" target="_blank"><img alt="페이스북" src="/images/home/common/icon_facebook.png"/></a></li>
<li><a class="icon_kakao" href="#none" target="_blank"><img alt="카카오페이지" src="/images/home/common/icon_kakao.png"/></a></li>
<li><a class="icon_instra" href="https://www.instagram.com/lost112kr/" target="_blank"><img alt="인스타그램" src="/images/home/common/icon_insta.png"/></a></li>
</ul>
<p class="182_logo">
<img alt="경찰민원콜센터 국번없이 182" src="/images/home/common/182_logo.png"/>
</p>
</div>
<!-- //sns_menu -->
</div>
<!-- search_wrap -->
</div>
<!-- //gnb_wrap2 -->
<h2 class="screen_out" id="lost112_main_menu" tabindex="-1">경찰청 유실물 종합관리시스템 메인메뉴</h2>
<nav id="gnb_menu">
<ul class="gnb_menu">
<li>
<a class="mainMenu_unselect" href="javascript:fn_menuMove('/html.do;jsessionid=zfZUKGE3RyFAVs0YQ0Poa30PEJI1GC45dacJvYO318DuaC910jn0a3ASTEv1WNqp.found02_servlet_www?html=/prevent/lostDeclare&amp;sub=F&amp;title=유실물종합안내&amp;ptitle=유실물신고절차')"><span>유실물 종합안내</span></a>
</li>
<li>
<a class="mainMenu_unselect" href="javascript:fn_menuMove('/find/findList.do')"><span>주인을 찾아요! (습득물)</span></a>
</li>
<li>
<a class="mainMenu_unselect" href="javascript:fn_menuMove('/lost/lostList.do')"><span>잃어버렸나요? (분실물)</span></a>
</li>
<li>
<a class="mainMenu_unselect" href="javascript:fn_menuMove('/minwon/notice/noticeList.do')"><span>정보마당</span></a>
</li>
<li>
<a class="mainMenu_unselect" href="javascript:fn_menuMove('/member/clauseView.do')"><span>회원마당</span></a>
</li>
<li>
<a class="mainMenu_unselect" href="javascript:fn_clickMenu('MENU6000','','Y');"><span>마이페이지</span></a>
</li>
</ul>
</nav>
</header>
<form action="#none" id="headerMap" method="post" name="headerMap">
</form>
<!-- 헤더 영역 끝 -->
<!-- Header //-->
<!--// container -->
<!-- sub_wrapper -->
<div id="sub_wrapper">
<!-- 추가 도움말 영역   -->
<!-- 			<div class="hatena-box"> -->
<!-- 				<a href="#" target="_blank"><img src="/images/home/common/hatena.gif" alt="도움말" /></a> -->
<!-- 			</div> -->
<!--// 레프트메뉴 -->
<div id="smenu" tabindex="-1">
<!-- lnb -->
<nav id="sub_lnb">
<h1 class="l_subtitle"><span>습득물</span></h1>
<ul>
<li><a class="subMenu_select" href="javascript:fn_menuMove('/find/findList.do');">습득물 검색</a></li>
<li><a class="subMenu_select" href="javascript:fn_menuMove('/phone/phoneList.do');">습득물 휴대폰 검색</a></li>
<li><a class="go_select" href="https://www.handphone.or.kr" target="_blank">핸드폰찾기콜센터 검색</a></li>
<li><a class="subMenu_select" href="javascript:fn_menuMove('/find/findLinkList.do');">미참여기관 습득물 조회</a></li>
</ul>
</nav>
</div>
<!-- 레프트메뉴 //-->
<!--// contents -->
<h2 class="screen_out" id="lost112_body" tabindex="0">경찰청 유실물 종합관리시스템 본문</h2>
<script type="text/javascript">
	$(document).ready(function() {
		
 		fnSelect('fdLctCd', 'LC0', '', "LCA000");
 		fnSelect('placeSeCd', 'LL1', '', "");
//  		fnSelect('PLACE_SE_CD', 'LL1', '');
// // 		if(= 'F' ){
			
// // 		}
		
 		$('#site').val('');		
 		
 		$("#classification_name").hide();
 		
 		fnLayer('classification_name', '', 'prdt_all');
 		// 검색 버튼 클릭
 		$('#searchMain').click(function() {
 			fnDate($('#startYmdInput'),$('#endYmdInput'));
 			if (bRtn == false) {
 				return bRtn;
 			}
 			
 			fn_find_selectList();
 		});

 		// 최근 습득물 현황 좌측 버튼 클릭
 		$('.list_prev').click(function() {
 			fn_imgLeft();
 		});

 		// 최근 습득물 현황 우측 버튼 클릭
 		$('.list_next').click(function() {
 			fn_imgRight();
 		});
 		
	});

	/* 글 목록 화면 function */
	function fn_find_selectList() {

		//$('#loading').fadeIn(150);
		$('#loading_spin').spin('large', 'gray');
		document.commandMap.action = "/find/findList.do;jsessionid=zfZUKGE3RyFAVs0YQ0Poa30PEJI1GC45dacJvYO318DuaC910jn0a3ASTEv1WNqp.found02_servlet_www";

		/*LOST112_JCG(2014-03-26)
		관리번호 검색조건 유지를 위해 사용자 입력을 F_ATC_ID 라는 name으로 새로이 받는다.*/
		// 		alert($("#ATC_ID").val());
		$add(document.commandMap, 'F_ATC_ID', $("#ATC_ID").val());
		$add(document.commandMap, 'pageIndex', 1);
		
		//2016-11-11 추가 [현재 페이지 LNB영역 매칭 코드 추가]
		$add(document.commandMap, 'MENU_NO', '');
		
		document.commandMap.submit();
	}

	/* 습득물 상세정보 화면 function */
	function fn_find_detail(id, fs) {
		//$('#loading').fadeIn(150);
		$('#loading_spin').spin('large', 'gray');

		/*LOST112_JCG(2014-03-26)
		관리번호 검색조건 유지를 위해 사용자 입력을 F_ATC_ID 라는 name으로 새로이 받는다.*/
		$add(document.commandMap, 'F_ATC_ID', $("#ATC_ID").val());

		$add(document.commandMap, 'ATC_ID', id);
		$add(document.commandMap, 'FD_SN', fs);
		
		//2016-11-11 추가 [현재 페이지 LNB영역 매칭 코드 추가]
		$add(document.commandMap, 'MENU_NO', '');

		document.commandMap.action = "/find/findDetail.do;jsessionid=zfZUKGE3RyFAVs0YQ0Poa30PEJI1GC45dacJvYO318DuaC910jn0a3ASTEv1WNqp.found02_servlet_www";
		document.commandMap.submit();
	}

	// 최근 습득물 현황 이동 버튼
	//LOST112_CDH(2015-02-27)
	var old = 0;
	var num = 0;
	function fn_imgRight() {
		num = old - 1;
		if (num >= -5) {
			$("#imgList ul").animate({
				left : parseInt($("#imgList ul li").eq(0).width() * -1)
			}, 300, function() {
				$("#imgList ul").css("left", "0px");
				$("#imgList ul li").eq(0).clone().appendTo($("#imgList ul"));
				$("#imgList ul li").eq(0).remove();
			});
			old = num;
		}
	}

	function fn_imgLeft() {
		var leng = $("#imgList ul li").size();
		num = old + 1;
		if (num <= 0) {			
			$("#imgList ul").animate(
					{
						left : 0
					},
					300,
					function() {
						$("#imgList ul").css("left", "0px");
// 						$("#imgList ul").css("left", parseInt($("#imgList ul li").eq(0).width() * -1));
						$("#imgList ul li").eq(parseInt(leng - 1)).clone().prependTo($("#imgList ul"));
						$("#imgList ul li").eq(leng).remove();
					});
			old = num;
		}
	}

	/* pagination 페이지 링크 function */
	function fn_find_link_page(pageNo) {

		fnDate($('#startYmdInput'),$('#endYmdInput'));
		if (bRtn == false) {
			return false;
		}
		//$('#loading').fadeIn(150);
		$('#loading_spin').spin('large', 'gray');
		$add(document.commandMap, 'pageIndex', pageNo);		
		
		//2016-11-11 추가 [현재 페이지 LNB영역 매칭 코드 추가]
		$add(document.commandMap, 'MENU_NO', '');
		
		document.commandMap.action = "/find/findList.do;jsessionid=zfZUKGE3RyFAVs0YQ0Poa30PEJI1GC45dacJvYO318DuaC910jn0a3ASTEv1WNqp.found02_servlet_www";
		document.commandMap.submit();
	}

	/*  레이어에서 물품 클릭시 
		해당하는 값의 물품명과 코드명을 받아온다.
		2014.08.26 YMYOON
	 */
	function fn_select_item(cate_code, cate_name, code, nm) {
		if (code == '') {
			$("#PRDT_CL_NM").val(cate_name);
		} else {
			$("#PRDT_CL_NM").val(cate_name + " - " + nm);
		}
		$("#prdtClCd01").val(cate_code);
		$("#prdtClCd02").val(code);
		$("#classification_name").hide();
		$("#PRDT_CL_NM").focus();
		//$("#category-nav").hide();
	}
	
	//분실물신고 로그인, 실명인증 체크
	function fn_login(val){
		if(val=="Y"){
			var resNoYn = "";
			if(resNoYn == "" || resNoYn == null){
				window.location = "/html.do;jsessionid=zfZUKGE3RyFAVs0YQ0Poa30PEJI1GC45dacJvYO318DuaC910jn0a3ASTEv1WNqp.found02_servlet_www?html=/lost/firstNameCheck&sub=LS&title=분실물&ptitle=실명인증";
			}else{
				window.location = "/html.do;jsessionid=zfZUKGE3RyFAVs0YQ0Poa30PEJI1GC45dacJvYO318DuaC910jn0a3ASTEv1WNqp.found02_servlet_www?html=/lost/addLostView&sub=LS&title=분실물&ptitle=분실물신고";
			}
		}else{
			alert("로그인이 필요한 페이지입니다.");
			window.location = "/html.do;jsessionid=zfZUKGE3RyFAVs0YQ0Poa30PEJI1GC45dacJvYO318DuaC910jn0a3ASTEv1WNqp.found02_servlet_www?html=/member/login&sub=U&title=로그인";
		}
	}
</script>
<!-- 컨텐츠 영역 -->
<div id="contents">
<div class="contents_common">
<nav class="sub_topnav">
<a href="#">HOME</a> 	&gt; <a href="#">습득물</a> 	&gt; <a href="#">습득물 검색</a>
</nav>
<h2>습득물 검색</h2>
<span class="subtxt1">아래 선택에 맞게 입력 해주세요. 분실하신 물건의 습득 상황 검색을 빠르게 도와드립니다.</span>
<span class="subtxt2">※ 신분증, 증명서 등은 분실자 이름으로, 휴대폰은 일련번호로 빠르고 정확하게 찾으실 수 있습니다.</span>
</div>
<ul class="findInfo">
<li>
<span>경찰청 습득물 목록에서 <br/>내가 잃어버린 물건을 찾았다면?</span>
<button class="btn_200" onclick="location.href='/html.do;jsessionid=zfZUKGE3RyFAVs0YQ0Poa30PEJI1GC45dacJvYO318DuaC910jn0a3ASTEv1WNqp.found02_servlet_www?html=/prevent/lostProcedures&amp;sub=F&amp;title=유실물종합안내&amp;ptitle=유실물처리절차'" title="습득물 처리절차">습득물 처리절차</button>
</li>
<li>
<span>내가 잃어버린 물건을 경찰청 <br/>습득물 목록에서 찾을 수 없다면?</span>
<button class="btn_200b" onclick="fn_login('N');" title="분실물 신고">분실물 신고</button>
</li>
</ul>
<!-- 습득물 검색창 -->
<div class="findList">
<div class="lost_qfind2">
<form action="#none" id="commandMap" method="post" name="commandMap" onsubmit="return false;">
<input id="pageIndex" name="pageIndex" type="hidden" value="1"/>
<div class="qnb5_l">
<fieldset class="lost_inputbox">
<legend>습득물 종류 입력</legend>
<label for="PRDT_CL_NM">분류명</label>
<input class="" id="PRDT_CL_NM" name="PRDT_CL_NM" readonly="readonly" title="분류명 입력" type="text" value=""/>
<button class="btn_02" onclick="showlayer(this,'#classification_name');" title="분류명 선택 레이어 새창" type="button">찾기</button>
<input id="prdtClCd01" name="PRDT_CL_CD01" type="hidden" value=""/>
<input id="prdtClCd02" name="PRDT_CL_CD02" type="hidden" value=""/>
</fieldset>
<!-- 날짜입력 -->
<fieldset class="lost_period">
<legend>습득기간 입력</legend>
<label for="startYmdInput">기간</label>
<input class="search_text isNumber" id="startYmdInput" name="START_YMD" readonly="readonly" size="10" title="검색시작일" type="text" value="20180612"/>
<button class="cal_btn" onclick="showCalendar(this,'#CalendarControl','startYmdInput',70,30);return false;" title="검색 시작일 달력 레이어 새창" type="button"><span class="hidden">검색 시작일  예)2015092</span></button>
<span>~</span>
<input class="search_text isNumber" id="endYmdInput" name="END_YMD" readonly="readonly" size="10" title="검색종료일" type="text" value="20180626"/>
<button class="cal_btn" onclick="showCalendar(this,'#CalendarControl','endYmdInput',70,160);return false;" title="검색 종료일 달력 레이어 새창" type="button"><span class="hidden">검색 종료일 예)20150925</span></button>
<iframe id="CalendarControlIFrame" scrolling="no" title="달력"></iframe>
<div id="CalendarControl"></div>
</fieldset>
<fieldset class="lost_inputbox">
<legend>습득물명 입력</legend>
<label for="prdtNm">습득물명</label>
<input class="search_text korean" id="prdtNm" name="PRDT_NM" title="습득물명 입력" type="text" value=""/>
</fieldset>
<fieldset class="lost_inputbox">
<legend>보관장소 입력</legend>
<label for="depPlace">보관장소</label>
<input class="search_text korean" id="depPlace" name="DEP_PLACE" title="보관장소 입력" type="text" value=""/>
</fieldset>
<fieldset class="lost_inputbox">
<legend>접수구분 입력</legend>
<label for="site">접수구분</label>
<select id="site" name="SITE" title="접수구분 선택">
<option selected="selected" value="">선택</option>
<option value="F">경찰관서</option>
<option value="V">경찰이외의기관(지하철,공항등)</option>
</select>
</fieldset>
<fieldset class="lost_inputbox">
<legend>습득장소 입력</legend>
<label for="placeSeCd">습득장소</label>
<select id="placeSeCd" name="PLACE_SE_CD" title="습득장소 선택">
<option selected="selected" value="">전체</option>
</select>
</fieldset>
</div>
<div class="qnb5_r">
<fieldset class="lost_inputbox">
<legend>습득지역 입력</legend>
<label for="fdLctCd">습득지역</label>
<select class="search_text1" id="fdLctCd" name="FD_LCT_CD" title="습득지역 선택">
<option selected="selected" value="">선택</option>
</select>
</fieldset>
<fieldset class="lost_inputbox">
<legend>분실자명 입력</legend>
<label for="inNm">분실자명</label>
<input class="search_text korean" id="inNm" name="IN_NM" title="분실자명 입력" type="text" value=""/>
</fieldset>
<fieldset class="lost_inputbox">
<legend>관리번호 입력</legend>
<label for="ATC_ID">관리번호</label>
<input id="ATC_ID" name="ATC_ID" style="ime-mode: inactive;" title="관리번호 입력" type="text" value=""/>
<input class="search_text" id="F_ATC_ID" name="F_ATC_ID" type="hidden" value=""/>
</fieldset>
<fieldset class="lost_inputbox">
<legend>모델코드 입력</legend>
<label for="">모델코드</label>
<input class="search_text english" id="mdcd" name="MDCD" title="모델코드 입력" type="text" value=""/>
</fieldset>
<fieldset class="lost_inputbox">
<legend>일련번호 입력</legend>
<label for="srno">일련번호</label>
<input class="search_text english" id="srno" name="SRNO" title="일련번호 입력" type="text" value=""/>
</fieldset>
</div>
<p><button class="btn_01" id="searchMain" name="searchMain" title="습득물 검색" type="image">검색</button></p>
</form>
</div>
</div>
<!-- //습득물 검색창 -->
<!-- 습득물 게시판 리스트 -->
<div class="find_listBox">
<table class="type01" summary="관리번호, 습득물명, 분실자명, 보관장소, 주운 일자">
<caption>습득물 목록 조회 결과 테이블</caption>
<colgroup>
<col style="width:160px"></col>
<col style="width:220px"></col>
<col style="width:"></col>
<col style="width:120px"></col>
<col style="width:100px"></col>
<col style="width:100px"></col>
</colgroup>
<thead>
<tr>
<th class="first" scope="col">관리번호</th>
<th scope="col">습득물명</th>
<th scope="col">분실자명</th>
<th scope="col">보관장소</th>
<th scope="col">연락처</th>
<th scope="col">주운일자</th>
</tr>
</thead>
<tbody>
<!-- 테이블 반복 구간 시작 -->
<tr>
<td class="first " scope="row" title="V0002502D06280018"><a href="javascript:fn_find_detail('V0002502D06280018', '1')">V0002502D06280018</a></td>
<td class="board_title1 " scope="row" title="카카오뱅크 라이언카드"><div class="title_text">
<a href="javascript:fn_find_detail('V0002502D06280018', '1')">카카오뱅크 라이언카드
								</a></div></td>
<td class="" scope="row" title="-"><a href="javascript:fn_find_detail('V0002502D06280018', '1')">-</a></td>
<td class="" scope="row" title="CGV(신촌점)">
<div class="losers_text">
<a href="javascript:fn_find_detail('V0002502D06280018', '1')">CGV(신촌점)</a>
</div>
</td>
<td class="first " scope="row" title="02-373-2995"><a href="javascript:fn_find_detail('V0002502D06280018', '1')">02-373-2995</a></td>
<td class="" scope="row"><a href="javascript:fn_find_detail('V0002502D06280018', '1')">2018-06-26</a></td>
</tr>
<tr>
<td class="first " scope="row" title="V0002502D06280016"><a href="javascript:fn_find_detail('V0002502D06280016', '1')">V0002502D06280016</a></td>
<td class="board_title1 " scope="row" title="KB 국민카드"><div class="title_text">
<a href="javascript:fn_find_detail('V0002502D06280016', '1')">KB 국민카드
								</a></div></td>
<td class="" scope="row" title="-"><a href="javascript:fn_find_detail('V0002502D06280016', '1')">-</a></td>
<td class="" scope="row" title="CGV(신촌점)">
<div class="losers_text">
<a href="javascript:fn_find_detail('V0002502D06280016', '1')">CGV(신촌점)</a>
</div>
</td>
<td class="first " scope="row" title="02-373-2995"><a href="javascript:fn_find_detail('V0002502D06280016', '1')">02-373-2995</a></td>
<td class="" scope="row"><a href="javascript:fn_find_detail('V0002502D06280016', '1')">2018-06-26</a></td>
</tr>
<tr>
<td class="first " scope="row" title="V0002502D06280014"><a href="javascript:fn_find_detail('V0002502D06280014', '1')">V0002502D06280014</a></td>
<td class="board_title1 " scope="row" title="신한카드"><div class="title_text">
<a href="javascript:fn_find_detail('V0002502D06280014', '1')">신한카드
								</a></div></td>
<td class="" scope="row" title="-"><a href="javascript:fn_find_detail('V0002502D06280014', '1')">-</a></td>
<td class="" scope="row" title="CGV(신촌점)">
<div class="losers_text">
<a href="javascript:fn_find_detail('V0002502D06280014', '1')">CGV(신촌점)</a>
</div>
</td>
<td class="first " scope="row" title="02-373-2995"><a href="javascript:fn_find_detail('V0002502D06280014', '1')">02-373-2995</a></td>
<td class="" scope="row"><a href="javascript:fn_find_detail('V0002502D06280014', '1')">2018-06-25</a></td>
</tr>
<tr>
<td class="first " scope="row" title="V0002502D06280012"><a href="javascript:fn_find_detail('V0002502D06280012', '1')">V0002502D06280012</a></td>
<td class="board_title1 " scope="row" title="신한카드"><div class="title_text">
<a href="javascript:fn_find_detail('V0002502D06280012', '1')">신한카드
								</a></div></td>
<td class="" scope="row" title="-"><a href="javascript:fn_find_detail('V0002502D06280012', '1')">-</a></td>
<td class="" scope="row" title="CGV(신촌점)">
<div class="losers_text">
<a href="javascript:fn_find_detail('V0002502D06280012', '1')">CGV(신촌점)</a>
</div>
</td>
<td class="first " scope="row" title="02-373-2995"><a href="javascript:fn_find_detail('V0002502D06280012', '1')">02-373-2995</a></td>
<td class="" scope="row"><a href="javascript:fn_find_detail('V0002502D06280012', '1')">2018-06-25</a></td>
</tr>
<tr>
<td class="first " scope="row" title="V0002502D06280010"><a href="javascript:fn_find_detail('V0002502D06280010', '1')">V0002502D06280010</a></td>
<td class="board_title1 " scope="row" title="열쇠"><div class="title_text">
<a href="javascript:fn_find_detail('V0002502D06280010', '1')">열쇠
								</a></div></td>
<td class="" scope="row" title="-"><a href="javascript:fn_find_detail('V0002502D06280010', '1')">-</a></td>
<td class="" scope="row" title="CGV(신촌점)">
<div class="losers_text">
<a href="javascript:fn_find_detail('V0002502D06280010', '1')">CGV(신촌점)</a>
</div>
</td>
<td class="first " scope="row" title="02-373-2995"><a href="javascript:fn_find_detail('V0002502D06280010', '1')">02-373-2995</a></td>
<td class="" scope="row"><a href="javascript:fn_find_detail('V0002502D06280010', '1')">2018-06-24</a></td>
</tr>
<tr>
<td class="first " scope="row" title="V0002502D06280008"><a href="javascript:fn_find_detail('V0002502D06280008', '1')">V0002502D06280008</a></td>
<td class="board_title1 " scope="row" title="카페베네 카드"><div class="title_text">
<a href="javascript:fn_find_detail('V0002502D06280008', '1')">카페베네 카드
								</a></div></td>
<td class="" scope="row" title="-"><a href="javascript:fn_find_detail('V0002502D06280008', '1')">-</a></td>
<td class="" scope="row" title="CGV(신촌점)">
<div class="losers_text">
<a href="javascript:fn_find_detail('V0002502D06280008', '1')">CGV(신촌점)</a>
</div>
</td>
<td class="first " scope="row" title="02-373-2995"><a href="javascript:fn_find_detail('V0002502D06280008', '1')">02-373-2995</a></td>
<td class="" scope="row"><a href="javascript:fn_find_detail('V0002502D06280008', '1')">2018-06-24</a></td>
</tr>
<tr>
<td class="first " scope="row" title="V0002502D06280006"><a href="javascript:fn_find_detail('V0002502D06280006', '1')">V0002502D06280006</a></td>
<td class="board_title1 " scope="row" title="주민등록증"><div class="title_text">
<a href="javascript:fn_find_detail('V0002502D06280006', '1')">주민등록증
								</a></div></td>
<td class="" scope="row" title="-"><a href="javascript:fn_find_detail('V0002502D06280006', '1')">-</a></td>
<td class="" scope="row" title="CGV(신촌점)">
<div class="losers_text">
<a href="javascript:fn_find_detail('V0002502D06280006', '1')">CGV(신촌점)</a>
</div>
</td>
<td class="first " scope="row" title="02-373-2995"><a href="javascript:fn_find_detail('V0002502D06280006', '1')">02-373-2995</a></td>
<td class="" scope="row"><a href="javascript:fn_find_detail('V0002502D06280006', '1')">2018-06-23</a></td>
</tr>
<tr>
<td class="first " scope="row" title="V0002502D06280004"><a href="javascript:fn_find_detail('V0002502D06280004', '1')">V0002502D06280004</a></td>
<td class="board_title1 " scope="row" title="우리v체크카드"><div class="title_text">
<a href="javascript:fn_find_detail('V0002502D06280004', '1')">우리v체크카드
								</a></div></td>
<td class="" scope="row" title="-"><a href="javascript:fn_find_detail('V0002502D06280004', '1')">-</a></td>
<td class="" scope="row" title="CGV(신촌점)">
<div class="losers_text">
<a href="javascript:fn_find_detail('V0002502D06280004', '1')">CGV(신촌점)</a>
</div>
</td>
<td class="first " scope="row" title="02-373-2995"><a href="javascript:fn_find_detail('V0002502D06280004', '1')">02-373-2995</a></td>
<td class="" scope="row"><a href="javascript:fn_find_detail('V0002502D06280004', '1')">2018-06-23</a></td>
</tr>
<tr>
<td class="first " scope="row" title="V0002502D06280002"><a href="javascript:fn_find_detail('V0002502D06280002', '1')">V0002502D06280002</a></td>
<td class="board_title1 " scope="row" title="cu멤버쉽&amp;교통카드"><div class="title_text">
<a href="javascript:fn_find_detail('V0002502D06280002', '1')">cu멤버쉽&amp;교통카드
								</a></div></td>
<td class="" scope="row" title="-"><a href="javascript:fn_find_detail('V0002502D06280002', '1')">-</a></td>
<td class="" scope="row" title="CGV(신촌점)">
<div class="losers_text">
<a href="javascript:fn_find_detail('V0002502D06280002', '1')">CGV(신촌점)</a>
</div>
</td>
<td class="first " scope="row" title="02-373-2995"><a href="javascript:fn_find_detail('V0002502D06280002', '1')">02-373-2995</a></td>
<td class="" scope="row"><a href="javascript:fn_find_detail('V0002502D06280002', '1')">2018-06-22</a></td>
</tr>
<tr>
<td class="first last" scope="row" title="F2018062800002828"><a href="javascript:fn_find_detail('F2018062800002828', '1')">F2018062800002828</a></td>
<td class="board_title1 last" scope="row" title="삼성 폴더폰"><div class="title_text">
<a href="javascript:fn_find_detail('F2018062800002828', '1')">삼성 폴더폰
								<img alt="사진있음" src="/images/sub/icon_jpg.gif"/></a></div></td>
<td class=" last" scope="row" title="-"><a href="javascript:fn_find_detail('F2018062800002828', '1')">-</a></td>
<td class=" last" scope="row" title="서울중부경찰서">
<div class="losers_text">
<a href="javascript:fn_find_detail('F2018062800002828', '1')">서울중부경찰서</a>
</div>
</td>
<td class="first last" scope="row" title="02-3396-9156"><a href="javascript:fn_find_detail('F2018062800002828', '1')">02-3396-9156</a></td>
<td class=" last" scope="row"><a href="javascript:fn_find_detail('F2018062800002828', '1')">2018-06-19</a></td>
</tr>
<!-- //테이블 반복 구간 끝 -->
</tbody>
</table>
</div>
<!-- //습득물 게시판 리스트 -->
<!-- 게시판 페이징 -->
<div class="paging" id="paging">
<span><a class="first" href="#none" onclick="fn_find_link_page(1); return false;"><span class="skip">처음</span></a><a class="prev" href="#none" onclick="fn_find_link_page(1); "><span class="skip">이전</span></a></span><a class="on" href="#none"><strong>1</strong></a><a href="#none" onclick="fn_find_link_page(2); ">2</a><a href="#none" onclick="fn_find_link_page(3); ">3</a><a href="#none" onclick="fn_find_link_page(4); ">4</a><a href="#none" onclick="fn_find_link_page(5); ">5</a><a href="#none" onclick="fn_find_link_page(6); ">6</a><a href="#none" onclick="fn_find_link_page(7); ">7</a><a href="#none" onclick="fn_find_link_page(8); ">8</a><a href="#none" onclick="fn_find_link_page(9); ">9</a><a href="#none" onclick="fn_find_link_page(10); ">10</a><span><a class="next" href="#none" onclick="fn_find_link_page(11); "><span class="skip">다음</span></a><a class="last" href="#none" onclick="fn_find_link_page(494); "><span class="skip">마지막</span></a></span>
<!-- <input type="hidden" name="pageIndex" id="pageIndex" value="1" /> -->
</div>
<!-- 최근 등록 습득물 현황 -->
<div class="sub_latest_list">
<h1>최근 등록된 습득물 현황</h1>
<div class="latest_listwrap">
<div id="imgList">
<ul>
<li>
<a href="javascript:fn_find_detail('F2018062800000889', '1')"><img alt="루이까또즈반지갑" src="/lostnfs/images/uploadImg/thumbnail/20180628/20180628095308601.jpg" style="width: 130px; height: 100px;"/></a>
<p class="latest_list_name"><a href="javascript:fn_find_detail('F2018062800000889', '1')">루이까또즈반지갑</a></p>
<p class="latest_list_date">습득일자<em>2018-06-26</em></p>
</li>
<li>
<a href="javascript:fn_find_detail('F2018062800002421', '1')"><img alt="POP카드(T머니카드)" src="/lostnfs/images/uploadImg/thumbnail/20180628/20180628040213268.jpg" style="width: 130px; height: 100px;"/></a>
<p class="latest_list_name"><a href="javascript:fn_find_detail('F2018062800002421', '1')">POP카드(T머니카드)</a></p>
<p class="latest_list_date">습득일자<em>2018-06-28</em></p>
</li>
<li>
<a href="javascript:fn_find_detail('F2018062800002348', '1')"><img alt="삼성갤럭시S7" src="/lostnfs/images/uploadImg/thumbnail/20180628/20180628042159720.jpg" style="width: 130px; height: 100px;"/></a>
<p class="latest_list_name"><a href="javascript:fn_find_detail('F2018062800002348', '1')">삼성갤럭시S7</a></p>
<p class="latest_list_date">습득일자<em>2018-06-28</em></p>
</li>
<li>
<a href="javascript:fn_find_detail('F2018062800002162', '1')"><img alt="LG휴대폰" src="/lostnfs/images/uploadImg/thumbnail/20180628/20180628053744717.jpg" style="width: 130px; height: 100px;"/></a>
<p class="latest_list_name"><a href="javascript:fn_find_detail('F2018062800002162', '1')">LG휴대폰</a></p>
<p class="latest_list_date">습득일자<em>2018-03-01</em></p>
</li>
<li>
<a href="javascript:fn_find_detail('F2018062800002134', '1')"><img alt="여성 장지갑" src="/lostnfs/images/uploadImg/thumbnail/20180628/20180628034524616.jpg" style="width: 130px; height: 100px;"/></a>
<p class="latest_list_name"><a href="javascript:fn_find_detail('F2018062800002134', '1')">여성 장지갑</a></p>
<p class="latest_list_date">습득일자<em>2018-06-28</em></p>
</li>
<li>
<a href="javascript:fn_find_detail('F2018062800002098', '1')"><img alt="아이폰" src="/lostnfs/images/uploadImg/thumbnail/20180628/20180628053425823.jpg" style="width: 130px; height: 100px;"/></a>
<p class="latest_list_name"><a href="javascript:fn_find_detail('F2018062800002098', '1')">아이폰</a></p>
<p class="latest_list_date">습득일자<em>2018-06-24</em></p>
</li>
<li>
<a href="javascript:fn_find_detail('F2018062800002011', '1')"><img alt="lg휴대폰" src="/lostnfs/images/uploadImg/thumbnail/20180628/20180628030707299.jpg" style="width: 130px; height: 100px;"/></a>
<p class="latest_list_name"><a href="javascript:fn_find_detail('F2018062800002011', '1')">lg휴대폰</a></p>
<p class="latest_list_date">습득일자<em>2018-06-28</em></p>
</li>
<li>
<a href="javascript:fn_find_detail('F2018062800001970', '1')"><img alt="지갑" src="/lostnfs/images/uploadImg/thumbnail/20180628/r_20180628032720422.jpg" style="width: 130px; height: 100px;"/></a>
<p class="latest_list_name"><a href="javascript:fn_find_detail('F2018062800001970', '1')">지갑</a></p>
<p class="latest_list_date">습득일자<em>2018-06-27</em></p>
</li>
<li>
<a href="javascript:fn_find_detail('F2018062800001809', '1')"><img alt="남성용 지갑" src="/lostnfs/images/uploadImg/thumbnail/20180628/r_20180628044335809.jpg" style="width: 130px; height: 100px;"/></a>
<p class="latest_list_name"><a href="javascript:fn_find_detail('F2018062800001809', '1')">남성용 지갑</a></p>
<p class="latest_list_date">습득일자<em>2018-06-22</em></p>
</li>
<li>
<a href="javascript:fn_find_detail('F2018062800001761', '1')"><img alt="남성용 카드지갑" src="/lostnfs/images/uploadImg/thumbnail/20180628/r_20180628021500259.jpg" style="width: 130px; height: 100px;"/></a>
<p class="latest_list_name"><a href="javascript:fn_find_detail('F2018062800001761', '1')">남성용 카드지갑</a></p>
<p class="latest_list_date">습득일자<em>2018-06-20</em></p>
</li>
</ul>
</div>
</div>
<button class="list_prev" title="최근 등록 습득물 현황 이전" type="button">이전</button>
<button class="list_next" title="최근 등록 습득물 현황 다음" type="button">다음</button>
</div>
<!-- //최근 등록 습득물 현황 -->
<!-- // 물품분류 레이어 -->
<div class="pop_layer1" id="classification_name"></div>
<!-- 페이지 만족도 -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script language="javascript" src="/js/jquery.base64.js" type="text/javascript"></script>
<script type="text/javascript">

	/* $(document).ready(function() {
		jQuery.ajax( {
			url : '/opinionInfo.do',
			type : 'post',
			data : 'page='+ $.base64('encode', encodeURIComponent($(location).attr('pathname')+$(location).attr('search'))),

			success : function(data) {
				$('#damdang').html(
						data.info.damdang );
				$('#damtel').html(data.info.damtel);
				$('#menuNo').val(data.info.seq);
			},
			error : function(data) {
				$('#pageopinion').html('&nbsp;');
			}
		});
		
	}); */

// 	function opinionSubmit() {
		
// 		var string = $("form[name=ratingForm]").serialize();
// 		jQuery.ajax( {
// 				url : '/opinionSave.do',
// 				type : 'post',
// 				data : string,
// 				success : function(data) {
// 					if (data.info.rst == 'F') {
// 						alert(data.info.msg);
// 						$("#opinionlist").hide();
// 					} else if (data.info.rst == 'S') {
// 						alert("평가가 완료되었습니다.\n 감사합니다.");
// 						$("#opinionlist").hide();
// 					}
// 				},
// 				error : function(data) {
// 					alert('평가정보 저장 중 오류가 발생하였습니다.\n 시스템 관리자에게 문의해 주시기 바랍니다.');
// 				}
// 			});
		
// 	}
	
	$(document).ready(function() {
		jQuery.ajax( {
			url : '/opinionInfo.do',
			type : 'post',
			data : 'page='
			+ $.base64('encode', encodeURIComponent($(location).attr('pathname')+$(location).attr('search'))),
			success : function(data) {
				if(data && data.info) {
					if(data.info.hasOwnProperty('damdang')) $('#damdang').html(data.info.damdang );
					if(data.info.hasOwnProperty('damtel')) $('#damtel').html(data.info.damtel);
					if(data.info.hasOwnProperty('seq')) $('#menuNo').val(data.info.seq);
				}
			},
			error : function(data) {
				$('#pageopinion').html('&nbsp;');
			}
		});
	});
	
	function opinionSubmit(val) {
		if(val=="Y"){
			var string = $("form[name=ratingForm]").serialize();
			jQuery.ajax( {
					url : '/opinionSave.do',
					type : 'post',
					data : string,
					success : function(data) {
						if (data.info.rst == 'F') {
							alert(data.info.msg);
							$("#opinionlist").hide();
						} else if (data.info.rst == 'S') {
							alert("평가가 완료되었습니다.\n 감사합니다.");
							$("#opinionlist").hide();
							$("#textOpinion_an").val("");
						}
					},
					error : function(data) {
						alert('평가정보 저장 중 오류가 발생하였습니다.\n 시스템 관리자에게 문의해 주시기 바랍니다.');
					}
				});
		} else {
			alert("로그인이 필요한 페이지입니다.");
			window.location = "/member/login&sub=U&title=로그인";
		}
	}
	

</script>
<!-- 페이지 만족도 -->
<div class="page_satisfaction">
<form method="post" name="ratingForm" onsubmit="return false;">
<fieldset>
<legend>페이지 만족도 양식</legend>
<input id="menuNo" name="menuNo" type="hidden"/>
<dl class="pagevoit">
<dt>페이지 만족도</dt>
<dd>
<input checked="checked" id="s5" name="rate" type="radio" value="5"/><label for="s5">매우만족</label>
<input id="s4" name="rate" type="radio" value="4"/><label for="s4">만족</label>
<input id="s3" name="rate" type="radio" value="3"/><label for="s3">보통</label>
<input id="s2" name="rate" type="radio" value="2"/><label for="s2">불만</label>
<input id="s1" name="rate" type="radio" value="1"/><label for="s1">매우불만</label>
</dd>
</dl>
<p class="pagevoit_btn">
<input class="input_txt" id="textOpinion_an" name="msg" placeholder="남기실 말을 적어주세요." title="페이지만족도" type="text"/>
<button class="btn_03" id="opinionlist" onclick="opinionSubmit('N');" title="페이지만족도 등록하기">등록하기</button>
</p>
</fieldset>
</form>
<dl class="pagemanager">
<dt>자료관리담당:</dt>
<dd>생활질서계</dd>
</dl>
<dl class="pagemanager_tel">
<dt>연락처:</dt>
<dd><a href="tel:0231503578">02-3150-3578</a> (유실물 관련 문의는 상세화면의 보관장소 연락처로 문의바랍니다.)</dd>
</dl>
</div>
<!-- // 페이지 만족도 끝 -->
<!-- 페이지 만족도 끝 -->
</div>
<!--// opinion -->
<!--// opinion -->
<!--// contents -->
</div>
<!-- container //-->
<!-- 	2016-11-11 추가 및 수정 -->
<!--// qMenu -->
<!-- qMenu //-->
<!--// footer -->
<script language="javascript" src="/js/jquery.base64.js" type="text/javascript"></script>
<script type="text/javascript">
	/* $(document).ready(function() {
		jQuery.ajax( {
			url : '/opinionInfo.do',
			type : 'post',
			data : 'page='
			+ $.base64('encode', encodeURIComponent($(location).attr('pathname')+$(location).attr('search'))),
			success : function(data) {
				$('#damdang').html(
						data.info.damdang );
				$('#damtel').html(data.info.damtel);
				$('#menuNo').val(data.info.seq);
			},
			error : function(data) {
				$('#pageopinion').html('&nbsp;');
			}
		});
		fnBanner('banner_list', 'adminBanner_gridList');
		
	}); */

	function policy_open() {
		window.open("/ps_auth.html", "new_popup1",
				"height=800,width=623,scrollbars=yes");
	}
	
	function opinionSubmit(val) {
		if(val=="Y"){
			var string = $("form[name=ratingForm]").serialize();
			jQuery.ajax( {
					url : '/opinionSave.do',
					type : 'post',
					data : string,
					success : function(data) {
						if (data.info.rst == 'F') {
							alert(data.info.msg);
							$("#opinionlist").hide();
						} else if (data.info.rst == 'S') {
							alert("평가가 완료되었습니다.\n 감사합니다.");
							$("#opinionlist").hide();
						}
					},
					error : function(data) {
						alert('평가정보 저장 중 오류가 발생하였습니다.\n 시스템 관리자에게 문의해 주시기 바랍니다.');
					}
				});
		} else {
			alert("로그인이 필요한 페이지입니다.");
			window.location = "/html.do;jsessionid=zfZUKGE3RyFAVs0YQ0Poa30PEJI1GC45dacJvYO318DuaC910jn0a3ASTEv1WNqp.found02_servlet_www?html=/member/login&sub=U&title=로그인";
		}
	}
</script>
<!-- <div class="banner_zone_sub"> -->
<!-- 	<h2 class="blind">패밀리 사이트 배너존</h2> -->
<!-- 	<div class="ctrl"> -->
<!-- 		<span>배너모음</span> -->
<!-- 		<div class="control"> -->
<!-- 			<button type="button" class="banner_prev"> -->
<!-- 				<span>이전배너보기</span> -->
<!-- 			</button> -->
<!-- 			<button type="button" class="banner_play"> -->
<!-- 				<span>배너재생</span> -->
<!-- 			</button> -->
<!-- 			<button type="button" class="banner_stop"> -->
<!-- 				<span>배너정지</span> -->
<!-- 			</button> -->
<!-- 			<button type="button" class="banner_next"> -->
<!-- 				<span>다음배너보기</span> -->
<!-- 			</button> -->
<!-- 		</div> -->
<!-- 	</div> -->
<!-- 	<div id="banner_list" class="family_wrap"></div> -->
<!-- </div> -->
<!-- <div id="footer" class="sub_footer"> -->
<!-- 	<div id="main_w"> -->
<!-- 		<div class="accessibility_mark"> -->
<!-- 			<a href="/web_accessibility.html" -->
<!-- 				onclick="open_window(this.href,'accessibility',700,850);return false;"><img -->
<!-- 				src="/../../images/main/web_accessibility.png" -->
<!-- 				alt="미래창조과학부 WEB ACCESSIBILITY 마크(웹 접근성 품질인증 마크)" -->
<!-- 				title="국가 공인 인증기관 : 웹와치"/></a> -->
<!-- 			<img src="/../../images/main/gov30.gif" -->
<!-- 				alt="2015년도 정부3.0 최우수기관" -->
<!-- 				title="정부3.0 최우수기관"/><br/> -->
<!-- 		</div> -->
<!-- 		<div class="copyright">Copyright(c) 2011 경찰청 all rights -->
<!-- 			reserved.</div> -->
<!-- 		<div class="copy_txt"> -->
<!-- 			<ul> -->
<!-- 				<li><span class="red"><a -->
<!-- 						href="/html.do?html=/prevent/lostHelp&amp;sub=M&amp;title=도움말">사이트 -->
<!-- 							이용안내</a></span> | <span class="red"><a href="#none" -->
<!-- 						onclick="policy_open();return false;" title="새창">개인정보처리방침</a></span></li> -->
<!-- 				<li>03739 서울특별시 서대문구 통일로 97 민원전화 : 국번없이 182</li> -->
<!-- 				<li>홈페이지에 게시된 이메일주소가 자동수집되는 것을 거부하며,<br /> 이를 위반 시 처벌될 수 있음을 -->
<!-- 					양지하여 주시기 바랍니다. -->
<!-- 				</li> -->
<!-- 			</ul> -->
<!-- 		</div> -->
<!-- 		<div class="go_service"> -->
<!-- 			<h3 class="blind"> -->
<!-- 				<span>바로가기 서비스</span> -->
<!-- 			</h3> -->
<!-- 			<ul> -->
<!-- 				<li><label for="sl_gotot1" class="hid">사이버경찰청</label> <select -->
<!-- 					id="sl_gotot1" class="w_140 select_language1 mr_4"> -->
<!-- 						<option value="http://www.police.go.kr/">사이버경찰청</option> -->
<!-- 						<option -->
<!-- 							value="http://www.police.go.kr/portal/main/contents.do?menuNo=200101">정보공개</option> -->
<!-- 						<option value="http://www.police.go.kr/assembly/main.do">국회정보공개</option> -->
<!-- 						<option -->
<!-- 							value="http://www.police.go.kr/portal/bbs/list.do?bbsId=B0000003&amp;menuNo=200052">국민마당</option> -->
<!-- 						<option value="http://cyber112.police.go.kr/cyber112/main.do">신고민원포털</option> -->
<!-- 						<option -->
<!-- 							value="http://cyber112.police.go.kr/cyber112/main/contents.do?menuNo=1200052">교통법규위반신고</option> -->
<!-- 				</select> -->
<!-- 					<button type="button" title="새창" class="go_select">GO</button></li> -->
<!-- 				<li><label for="sl_gotot2" class="hid">지방청/부속기관</label> <select -->
<!-- 					id="sl_gotot2" class="w_140 select_language1 mr_4"> -->
<!-- 						<option value="#">지방청/부속기관</option> -->
<!-- 						<option value="http://www.smpa.go.kr">서울지방경찰청</option> -->
<!-- 						<option value="http://www.bspolice.go.kr">부산지방경찰청</option> -->
<!-- 						<option value="http://www.dgpolice.go.kr">대구지방경찰청</option> -->
<!-- 						<option value="http://www.icpolice.go.kr">인천지방경찰청</option> -->
<!-- 						<option value="http://www.gjpolice.go.kr">광주지방경찰청</option> -->
<!-- 						<option value="http://www.djpolice.go.kr">대전지방경찰청</option> -->
<!-- 						<option value="http://www.uspolice.go.kr">울산지방경찰청</option> -->
<!-- 						<option value="http://www.ggpolice.go.kr">경기남부지방경찰청</option> -->
<!-- 						<option value="http://www.ggbpolice.go.kr">경기북부지방경찰청</option> -->
<!-- 						<option value="http://www.gwpolice.go.kr">강원지방경찰청</option> -->
<!-- 						<option value="http://www.cbpolice.go.kr">충북지방경찰청</option> -->
<!-- 						<option value="http://www.cnpolice.go.kr">충남지방경찰청</option> -->
<!-- 						<option value="http://www.jbpolice.go.kr">전북지방경찰청</option> -->
<!-- 						<option value="http://www.jnpolice.go.kr">전남지방경찰청</option> -->
<!-- 						<option value="http://www.gbpolice.go.kr">경북지방경찰청</option> -->
<!-- 						<option value="http://www.gnpolice.go.kr">경남지방경찰청</option> -->
<!-- 						<option value="http://www.jjpolice.go.kr">제주지방경찰청</option> -->
<!-- 						<option value="http://www.police.ac.kr">경찰대학</option> -->
<!-- 						<option value="http://www.pti.go.kr">경찰교육원</option> -->
<!-- 						<option value="http://www.cpa.go.kr">중앙경찰학교</option> -->
<!-- 						<option value="http://www.kpia.go.kr/">경찰수사연수원</option> -->
<!-- 						<option value="http://www.koroad.or.kr">도로교통공단</option> -->
<!-- 						<option value="http://www.nph.go.kr">경찰병원</option> -->
<!-- 				</select> -->
<!-- 					<button type="button" title="새창" class="go_select">GO</button></li> -->
<!-- 				<li><label for="sl_gotot3" class="hid">업무 관련 사이트</label> <select -->
<!-- 					id="sl_gotot3" class="w_140 select_language1 mr_4"> -->
<!-- 						<option value="#">업무 관련 사이트</option> -->
<!-- 						<option value="http://www.police.go.kr/commission/main.do">경찰위원회</option> -->
<!-- 						<option value="http://www.ctrc.go.kr">사이버테러대응센터</option> -->
<!-- 						<option value="http://www.kpsi.go.kr/">경찰과학수사</option> -->
<!-- 						<option value="http://www.safe182.go.kr/">안전 Dream</option> -->
<!-- 						<option value="http://www.policemuseum.go.kr/kr/">경찰박물관</option> -->
<!-- 						<option value="http://www.police.go.kr/HR">인권센터</option> -->
<!-- 						<option value="http://cyberbureau.police.go.kr/">사이버안전국</option> -->
<!-- 						<option value="http://net-durumi.netan.go.kr/">넷두루미</option> -->
<!-- 						<option value="http://susa.go.kr">수사구조개혁</option> -->
<!-- 						<option value="http://www.112119.in/">공상자후원회</option> -->
<!-- 						<option value="http://www.chamsuri.co.kr/">참수리사랑</option> -->
<!-- 				</select> -->
<!-- 					<button type="button" title="새창" class="go_select">GO</button></li> -->
<!-- 			</ul> -->
<!-- 		</div> -->
<!-- 	</div> -->
<!-- </div> -->
<!-- footer //-->
<!-- 푸터 영역 -->
<footer>
<div class="footer_content">
<p class="accessibility_mark">
<a href="http://www.kwacc.or.kr/WACertificate/WAMark">
<img alt="국가공인 웹 접근성 품질인증마크_(사)한국시각장애인연합회 (2017.05.31~2018.05.30)" class="wa_icon" src="/images/home/common/web_accessibility_2017.png" title="한국웹접근성평가센터"/>
</a>
<!-- 				<img src="/images/home/common/gov30.gif" class="gov30icon" alt="2015년도 정부3.0 최우수기관" title="정부3.0 최우수기관" /> -->
</p>
<div class="footer_txt">
<p class="footer_policy">
<a href="javascript:fn_menuMove('/html.do;jsessionid=zfZUKGE3RyFAVs0YQ0Poa30PEJI1GC45dacJvYO318DuaC910jn0a3ASTEv1WNqp.found02_servlet_www?html=/prevent/lostDeclare&amp;sub=F&amp;title=유실물 종합안내&amp;ptitle=유실물신고절차')" title="사이트 이용안내">사이트 이용안내</a> | 
					<a href="#" onclick="policy_open();return false;" target="_blank" title="개인정보처리방침 새창">개인정보처리방침</a>
</p>
<address>
					03739 서울특별시 서대문구 통일로 97 | 민원전화 : 국번없이 182<br/> 홈페이지에 게시된 이메일주소가
					자동수집되는 것을 거부하며, 이를 위반 시 처벌될 수 있음을 양지하여 주시기 바랍니다.
				</address>
<small class="copyright">Copyright(c) 2016 경찰청 all rights
					reserved.</small>
</div>
<p class="footer_182_logo">
<img alt="경찰민원콜센터 국번없이 182" src="/images/home/common/182_logo.png"/>
</p>
<!-- go service -->
<div class="go_service">
<h1 class="hidden">
<span>바로가기 서비스</span>
</h1>
<ul>
<li><select title="사이버경찰청 관련 사이트">
<optgroup label="사이버경찰청">
<option value="http://www.police.go.kr/">사이버경찰청</option>
<option value="http://www.police.go.kr/portal/main/contents.do?menuNo=200101">정보공개</option>
<option value="http://www.police.go.kr/assembly/main.do">국회정보공개</option>
<option value="http://www.police.go.kr/portal/bbs/list.do?bbsId=B0000003&amp;menuNo=200052">국민마당</option>
<option value="http://cyber112.police.go.kr/cyber112/main.do">신고민원포털</option>
<option value="http://cyber112.police.go.kr/cyber112/main/contents.do?menuNo=1200052">교통법규위반신고</option>
</optgroup>
</select>
<button class="go_select" title="사이버경찰청 관련 사이트 새창" type="button">GO</button>
</li>
<li><select title="지방청/부속기관 관련 사이트">
<optgroup label="지방청/부속기관">
<option value="#">지방청/부속기관</option>
<option value="http://www.smpa.go.kr">서울지방경찰청</option>
<option value="http://www.bspolice.go.kr">부산지방경찰청</option>
<option value="http://www.dgpolice.go.kr">대구지방경찰청</option>
<option value="http://www.icpolice.go.kr">인천지방경찰청</option>
<option value="http://www.gjpolice.go.kr">광주지방경찰청</option>
<option value="http://www.djpolice.go.kr">대전지방경찰청</option>
<option value="http://www.uspolice.go.kr">울산지방경찰청</option>
<option value="http://www.ggpolice.go.kr">경기남부지방경찰청</option>
<option value="http://www.ggbpolice.go.kr">경기북부지방경찰청</option>
<option value="http://www.gwpolice.go.kr">강원지방경찰청</option>
<option value="http://www.cbpolice.go.kr">충북지방경찰청</option>
<option value="http://www.cnpolice.go.kr">충남지방경찰청</option>
<option value="http://www.jbpolice.go.kr">전북지방경찰청</option>
<option value="http://www.jnpolice.go.kr">전남지방경찰청</option>
<option value="http://www.gbpolice.go.kr">경북지방경찰청</option>
<option value="http://www.gnpolice.go.kr">경남지방경찰청</option>
<option value="http://www.jjpolice.go.kr">제주지방경찰청</option>
<option value="http://www.police.ac.kr">경찰대학</option>
<option value="http://www.pti.go.kr">경찰교육원</option>
<option value="http://www.cpa.go.kr">중앙경찰학교</option>
<option value="http://www.kpia.go.kr/">경찰수사연수원</option>
<option value="http://www.koroad.or.kr">도로교통공단</option>
<option value="http://www.nph.go.kr">경찰병원</option>
</optgroup>
</select>
<button class="go_select" title="지방청/부속기관 관련 사이트 새창" type="button">GO</button>
</li>
<li><select title="업무 관련 사이트">
<optgroup label="업무 관련 사이트">
<option value="#">업무 관련 사이트</option>
<option value="http://www.police.go.kr/commission/main.do">경찰위원회</option>
<option value="http://www.ctrc.go.kr">사이버테러대응센터</option>
<option value="http://www.kpsi.go.kr/">경찰과학수사</option>
<option value="http://www.safe182.go.kr/">안전 Dream</option>
<option value="http://www.policemuseum.go.kr/kr/">경찰박물관</option>
<option value="http://www.police.go.kr/HR">인권센터</option>
<option value="http://cyberbureau.police.go.kr/">사이버안전국</option>
<option value="http://net-durumi.netan.go.kr/">넷두루미</option>
<option value="http://susa.go.kr">수사구조개혁</option>
<option value="http://www.112119.in/">공상자후원회</option>
<option value="http://www.chamsuri.co.kr/">참수리사랑</option>
</optgroup>
</select>
<button class="go_select" title="업무 관련 사이트 새창" type="button">GO</button>
</li>
</ul>
</div>
<!-- //go service -->
</div>
<!-- //footer_content -->
</footer>
<!-- //푸터 영역 끝 -->
<!-- footer //-->
</div>
<div class="loading" id="loading" style="position: absolute; display:none;">
<h2>화면을 불러오는 중 입니다. 잠시만 기다려 주세요.</h2>
<img alt="loading" src="/images/sub/loading.gif"/>
</div>
<div class="loading_spin" id="loading_spin" style="position: absolute;"></div>
</body>
</html>

3.1 Parsing 된 html 문서에서 원하는 정보 scrap하기

  • 방법 2: 해당 page의 Chrome의 개발자 도구로 돌아가서 Elements tab을 보자.
    • Elements에는 html문서가 parsing되어서 나타나있다.
      아래 fig.에 빨간 동그라미가 쳐져있는 부분(단축키 Ctrl + Shift + C)를 누르고 화면에서 찾고자 하는 부분을 클릭하면 해당 html 문서의 부분이 나타나게 된다.

3.1 Parsing 된 html 문서에서 원하는 정보 scrap하기

  • 방법 2: 해당 page의 Chrome의 개발자 도구로 돌아가서 Elements tab을 보자.
    • fig.에 1에 해당하는 부분을 누르고, 찾고자하는 2. 관리번호를 누르면 Elements의 3.에 해당 위치가 나타나게 된다.
    • 이 때 우리가 원하는 관리번호는 ...<div><table><thread><tr><th>에 위치해있다.
    • 우리는 CSS Selector를 이용해 해당 요소들을 추출할 수 있다.
      soup.select('.type01 tr th')
      

3.2 CSS Selector 사용법

  • 우리가 원하는 관리번호는 ...<div><table><thread><tr><th>에 위치해있다.
  • CSS Selector를 사용하는 법은 다음과 같다. CSS Selector
  • 아래의 select가 CSS Selector 기능을 제공하는 함수이고, 인자로 넘겨주느는 div table thread tr th는 상위 요소 div부터 하위 요소 th까지 추적한 결과이다.
    순서대로 적어야 하고, 모든 요소를 전부 적을 필요는 없다.
  • .type01 tr th에서 .type01은 table에 해당하는 class 값으로 select한다는 뜻이다.
    id값으로 select할 경우는 #type01과 같이 사용하면 된다. 좀 더 자세한 사용법은 위의 link를 참고하자.
  • 아래 결과는 해당 문서에서 모두 동일한 결과를 나타낸다.
  • 찾은 결과가 여러개일 경우 순서대로 list 형태로 결과값을 돌려준다.
  • 요소이름에 공백이 들어간 경우 .으로 대체해서 검색한다.
    soup.select('div table thead tr th')
    soup.select('div thead tr th')
    soup.select('.type01 thead tr th')
    
In [9]:
soup.select('table tr th')
Out[9]:
[<th class="first" scope="col">관리번호</th>,
 <th scope="col">습득물명</th>,
 <th scope="col">분실자명</th>,
 <th scope="col">보관장소</th>,
 <th scope="col">연락처</th>,
 <th scope="col">주운일자</th>]

3.3 Item 추출법

  • 앞에서 배운 방법으로 이번엔 첫 번째 분실물에 대한 요소를 추적하면 tbody tr td에 해당한다.
  • 한 줄당 6개 columns으로 10줄, 총 60개의 td 요소가 찾아진다. 첫번째 요소를 살펴보자.
In [10]:
soup.select('tbody tr td')[0]
Out[10]:
<td class="first " scope="row" title="V0002502D06280018"><a href="javascript:fn_find_detail('V0002502D06280018', '1')">V0002502D06280018</a></td>
  • 우리가 원하는 일련번호는 <td title="..."><a href="...">...</a></td>에서 td안에 titlea안에 href의 값으로, 마지막으로 가장바깥에 text형태로 주어져있다.
  • 요소 안에 있는 값을 가져오기 위해서는 get함수를 쓰면 된다.
    • classid같은 경우 여러 값들을 가질 수 있는데 공백으로 구분한다.
      따라서 이 있을 경우 조심하도록 하자.
  • 마지막으로 text는 아래와 같이 가져올 수 있다.
In [11]:
soup.select('tbody tr td')[0].get('title')
Out[11]:
'V0002502D06280018'
In [12]:
soup.select('tbody tr td')[0].text
Out[12]:
'V0002502D06280018'

3.4 데이터 정제

  • 6개 항목을 추출할 때 모두 똑같은 모양으로 생기지는 않았지만,
    지금까지 학습을 잘 했다면 soup.select('.type01 tr td')
    또는 soup.select('.type01 tr td a').text로 6개 항목을 모두 추출할 수 있다는 것을 본능적으로 느낄 수 있다.
  • 앞에서 배운 내용을 토대로 replace 함수를 통해 값을 정제하고,
    60개짜리 list를 10 x 6짜리 list로 range함수를 이용한 약간의 트릭을 써서 변환시켜준다.
In [13]:
temp = [x.text.replace("\n","").replace("\t","").replace("\r","") for x in soup.select('.type01 tr td')]
n = 6
result = [temp[i:i+n] for i in range(0,len(temp),n)]
result[0]
Out[13]:
['V0002502D06280018',
 '카카오뱅크 라이언카드',
 '-',
 'CGV(신촌점)',
 '02-373-2995',
 '2018-06-26']

4. 최종 코드

In [14]:
import requests as rq # 웹페이지 불러오는 용도
from bs4 import BeautifulSoup # html문서 파싱하는 용도
import time # 트래픽 관리 용도

result = []
n = 6
head = 'https://www.lost112.go.kr/find/findList.do'
key = 'PRDT_CL_NM=&PRDT_CL_CD01=&PRDT_CL_CD02=&START_YMD=20180612&END_YMD=20180626&PRDT_NM=&DEP_PLACE=&SITE=&PLACE_SE_CD=&FD_LCT_CD=&IN_NM=&ATC_ID=&MDCD=&SRNO=&F_ATC_ID=&pageIndex=1&MENU_NO='

key = [x.split('=') for x in key.split("&")]
key[3][1],key[4][1],key[9][1],key[-2][1] = '20180612','20180612','LCA000','1'
key = "&".join(["=".join(x) for x in key])
url = head + '?' + key

soup = BeautifulSoup(rq.get(url).text,'html.parser')
columns = [x.text for x in soup.select('.type01 tr th')]
last_page = int(soup.select('span .last')[0].get('onclick').split("(")[1].split(")")[0])
temp = [x.text.replace("\n","").replace("\t","").replace("\r","") for x in soup.select('.type01 tr td')]

result+=[temp[i:i+n] for i in range(0,len(temp),n)]
for page in range(2,last_page+1):
    key = [x.split('=') for x in key.split("&")]
    key[-2][1] = str(page)
    key = "&".join(["=".join(x) for x in key])
    url = head + '?' + key
    soup = BeautifulSoup(rq.get(url).text,'html.parser')
    temp = [x.text.replace("\n","").replace("\t","").replace("\r","") for x in soup.select('.type01 tr td')]
    result+=[temp[i:i+n] for i in range(0,len(temp),n)]
    time.sleep(2) # FOR MANAGEMENT THE TRAFFIC
In [15]:
import csv

with open('result.csv', 'w', newline='') as csvfile:
    csv_writer = csv.writer(csvfile, delimiter=',', quotechar='|', quoting=csv.QUOTE_MINIMAL)
    for item in result:
        csv_writer.writerow(item)
In [16]:
!head result.csv