2009-07-15 8 views
2

이벤트 호출로 doPostBack을 사용하는 일부 ASP.NET 페이지를 크롤링하는 방법이 있습니까?ASP.NET 페이지를 크롤링 할 수 있습니까?

예 :

Page1.aspx라는 :

는 Page2.aspx 리디렉션 1 개의 LinkButton을 포함 코드 숨김

하는 LinkButton 클릭에 대한 이벤트 :

Response.Redirect("Page2.aspx") 

클라이언트 측에서이 코드는 클릭 이벤트에서 생성됩니다 :

doPostBack(... 

HttpWebRequest만을 사용하여 페이지를 크롤링 할 수 있습니까?

이 경우 Response.Redirect를 사용하는 것은 좋은 생각이 아니라는 것을 알고 있지만 선택의 여지가 없습니다.

답변

2

예, 코드가 잘 예측 가능한 패턴을 따르는 경우 가능합니다. 페이지에서 양식 데이터를 모으고 doPostBack 기능 (일부 값을 일부 숨겨진 필드에 넣음)을 시뮬레이트 한 다음 서버에 POST 요청을 보내야합니다. 당신이 돌아 오는 것은 리디렉션 페이지가 될 것이므로 대상 페이지의 URL을 얻으려면이를 파싱해야합니다.

Google과 같은 검색 엔진이 페이지를 크롤링 할 것이라는 뜻이라면 그럴 가능성이 매우 낮습니다. 게시 및 스크립트 링크의 일반적인 패턴을 따르려고 시도 할 수도 있지만 일반적으로 페이지간에 적절한 링크를 사용하여 크롤링이 가능한지 확인해야합니다.

관련 문제