2011-08-07 3 views
0
set objXmlHttp = Server.CreateObject("Msxml2.ServerXMLHTTP") 
objXmlHttp.Open "GET", "http://www.yapi.com.tr/Haberler/e_61034.html", false 
objXmlHttp.Send 
response.write objXmlHttp.ResponseText 

이 코드는 모든 소스 코드를 제공하지 않습니다. Responsetext는 "Yapı Dergisi, 284"까지이지만 orjinal 페이지는 "/ body/html"까지입니다. 왜 나 한테 이런 일이 일어난거야?asp ServerXMLHTTP가 소스 코드를 모두 얻지 못합니다.

Orjinal 페이지 - http://www.yapi.com.tr/Haberler/e_61034.html

내 코드 - 원본 페이지에서 http://www.mekanturu.com/1.asp

답변

0

는 (이하 "284"후) 주요 문서의 끝에 null 바이트가있을 나타납니다. ResponseText는 null 바이트를 응답 문자열의 끝으로 처리하고있는 것 같습니다. 나는 원래 페이지와 일치 UTF-8로 설정 응답 문자를 설정

<% 
Response.CharSet = 65001 
Response.AddHeader "Content-Type", "text/html;charset=UTF-8" 
set objXmlHttp = Server.CreateObject("Msxml2.ServerXMLHTTP") 
objXmlHttp.Open "GET", "http://www.yapi.com.tr/Haberler/e_61034.html", false 
objXmlHttp.Send 
Response.BinaryWrite objXmlHttp.ResponseBody 
%> 

참고 : 나는 다음과 같은 사용하여 전체 기사를 얻을 수 있었다.