크롤링이 안되는 페이지도 있나요?
조회수 2695회
//여기에 코드를 입력하세요
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="Cache-Control" content="no-cache">
<meta http-equiv="Expires" content="0">
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="p3p" content="policyref="http://bizmailer.co.kr/bizsmart/w3c/p3p.xml" CP="COM CNT LOC NAV ONL PRE PUR UNI ALL CUR OUR"">
<title>대량이메일발송, 대량메일발송, 문자, SMS 마케터의 마음을 아는 이메일/SMS서비스 - BIZMailer™</title>
<link rel="shortcut icon" href="/bizsmart/html/bizmailer.ico" type="image/x-icon">
<link href="/bizsmart/html/popup.css" rel="stylesheet" type="text/css">
<script type="text/javascript" charset="utf-8" src="/bizsmart/js/jquery.min.js"></script>
<script type="text/javascript" charset="utf-8" src="/bizsmart/js/jquery-ui.min.js"></script>
<script type="text/javascript" charset="utf-8" src="/bizsmart/js/main.js"></script>
<script language="javascript" src="/bizsmart/html/home.js"></script>
<script language="javascript" src="/bizsmart/html/valid_util.js"></script>
<script language="javascript" src="/bizsmart/html/SpryCollapsiblePanel.js"></script>
<script language="javascript">
<!--
function resizePopup(){
var dataobj = document.getElementById("popup_content");
pageHeight = dataobj.scrollHeight + 80;
pageWidth = dataobj.scrollWidth + 10;
window.resizeTo(pageWidth, pageHeight);
}
window.onload = function() {
window.focus();
}
//-->
</script>
</head>
<!-- <body onload="javascript: resizePopup();"> -->
<body>
<!-- (inc) 팝업 타이틀 시작 -->
<div id="popup_content" style="position:absolute; left:0; top:0; width:100%">
<table cellspacing="0" cellpadding="0" id="pop">
<tbody><tr>
<td class="bar"><img src="/bizsmart/html/images/manager/pop_icon.gif" align="absmiddle">[그룹선택 & 개별선택]</td>
</tr>
<tr>
<td class="shadow"></td>
</tr>
<!-- (inc) 팝업 타이틀 끝 -->
<script language="javascript">
function applyGroup() {
ifrmContents.apply();
var groupKey = ifrmContents.document.groupForm.groupKey.value;
var groupNm = ifrmContents.document.groupForm.groupNm.value;
var groupCnt = ifrmContents.document.groupForm.groupCnt.value;
var groupArray = ifrmContents.document.groupForm.groupArray.value;
if (ifrmContents.applyPerson()) {
var customEmails = ifrmContents.document.personForm.customEmails.value;
var customMap = ifrmContents.document.personForm.customMap.value;
var customCount = ifrmContents.document.personForm.customCount.value;
// 2016.03.10. edited by ansii, 선택 그룹수 및, 그룹이름 byte체크
var stringByteLength = 0;
stringByteLength = (function(s,b,i,c){
for(b=i=0;c=s.charCodeAt(i++);b+=c>>11?3:c>>7?2:1);
return b
})(groupNm);
var groupKeys = groupKey.split(",");
var maxLength = 48;
// var maxLength = 48;
// maxLength = 300;
if (groupKeys != null && groupKeys.length > maxLength) {
alert("죄송합니다.\r\n" + (maxLength+1) + "개 이상의 그룹은 동시에 선택이 불가능합니다.");
return;
}
if(stringByteLength >= 1024) {
alert("죄송합니다.\r\n선택된 그룹들의 이름 정보가 너무 길어 선택하실수 없습니다.\r\n현재 선택된 그룹의 이름 길이 : "+stringByteLength+" byte");
return;
}
opener.selectGroup(groupKey, groupNm, groupArray, groupCnt, customEmails, customMap, customCount);
window.close();
}
}
window.onload = function() {
var strForm = document.selectForm;
strForm.rcvGroupKey.value = opener.document.createForm.rcvGroupKey.value;
strForm.customMap.value = opener.document.createForm.customMap.value;
strForm.submit();
}
</script>
<!-- 팝업 본문테이블 시작 -->
<form name="selectForm" method="post" style="margin:0px;" action="../group/group.do" target="ifrmContents"></form>
<input type="hidden" name="method" value="selectGroup" id="method">
<input type="hidden" name="groupKey" value="view" id="groupKey">
<input type="hidden" name="type" value="view">
<input type="hidden" name="rcvGroupKey" value="">
<input type="hidden" name="customMap" value="">
<input type="hidden" name="isSms" value="">
<form name="groupForm" method="post" style="margin:0px;"></form>
<input type="hidden" name="method" value="selectGroup">
<tr>
<td class="body" style="padding-bottom:0px">
<table cellspacing="0" cellpadding="0">
<tbody><tr>
<td><iframe id="ifrmContents" name="ifrmContents" src="about:blank" width="100%" height="375" frameborder="0" scrolling="yes"></iframe></td>
</tr>
<tr>
<td class="dotHor" style="height:1px"></td>
</tr>
</tbody></table>
<table cellspacing="0" cellpadding="0" style="margin:13px 0px 8px 0px">
<tbody><tr>
<td align="center"><input type="button" class="btnGreen" value="적용하기" onclick="javascript: applyGroup();"></td>
</tr>
</tbody></table>
<table cellspacing="0" cellpadding="0">
<tbody><tr>
<td colspan="2" class="dotHor" style="height:10px"></td>
</tr>
<tr>
<td style="width:60px"><img src="/bizsmart/html/images/manager/bt_tip.gif" alt="사용팁" align="absmiddle"></td>
<td class="gray" style="font-family:dotum">[제외회원수]란, 수신거부/발신불가로 이메일 발송이 불가능한 회원의 수를 뜻하며, 실제 발송 시 자동제외됩니다.</td>
</tr>
<tr>
<td colspan="2" style="height:10px" class="dotHor"></td>
</tr>
</tbody></table>
</td>
</tr>
<!-- 팝업 본문테이블 끝 -->
<!-- (inc) 팝업 카피라이터 시작 -->
<tr>
<td class="copy"><table cellspacing="0" cellpadding="0">
<tbody><tr>
<td class="blue">Copyrights 2009 DAOU Inc. All rights reserved. Contact Us</td>
<td style="text-align:right"><a href="javascript:window.close();"><img src="/bizsmart/html/images/manager/pop_close1.gif" alt="close window"></a></td>
</tr>
</tbody></table></td>
</tr>
</tbody></table>
</div>
<!-- (inc) 팝업 카피라이터 끝 -->
</body></html>
제가 크롤링하려는 페이지입니다. 이용하는 메일전송 솔루션 입니다. 회원 디비를 자동으로 주소록에 추가하여 메일을 발송하는 프로그램을 만드는 중입니다. 근데 특정 div안의 요소만 클릭할 수 없다고 합니다. iframe이 있나 싶어 확인해봤지만 없었으며 원인을 알 수 없어 고민중입니다. 그래서 혹시 이 웹사이트에서 크롤링을 막아놓은 것일까 생각해여 이렇게 질문드립니다.
-
(•́ ✖ •̀)
알 수 없는 사용자
1 답변
-
크롤링하려는 웹사이트에서 UserAgent string을 보고 차단하거나 다른 HTML을 준거 같은데요.
한번 UserAgent string을 바꿔 보세요.
어떤 패키지로 크롤링하는지는 모르겠는데요... 한번 문서나 스택오버플로 Q&A들을 보면 도움이 될 거에요.
- requests: StackOverflow
- scrapy: API docs, StackOverflow
-
(•́ ✖ •̀)
알 수 없는 사용자
댓글 입력