C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[11634] Re:Re:Re:Re:[만해] mstml에 대한 질문요
만해 [] 1441 읽음    2001-10-08 17:21
매댐덜 님이 쓰신 글 :
: 만해 님이 쓰신 글 :
: : 매댐덜 님이 쓰신 글 :
: : : 먼저 HTML 클래스가 있는대요...
: : :
: : : 파서 만들어서 모에 쓰실건지가 궁금하네요...
: : :
: : : 일단 클래스 안에 보시면 쓰실건 다 있구요...
: : :
: : : 어떤 내용을 가져 오실건지 아니면 웹 페이지 자체를 파서 하실건지 모르겠네요..
: : :
: : : 저도 그거 만들어 봤는데 무지 노가다네요...
: : :
: : : 전 파서 써서 로그인쪽만 가져와서 로그인 시켜주는거 맹글었는뎅....
: : :
: : : 자세히 써주시면 제가 다시 답변을 드리죠...
: : :
: : :
: : : 강재호 님이 쓰신 글 :
: : : : 안녕하세요
: : : :
: : : : 만해입니다.
: : : :
: : : : 제가 요즘 웹쪽 프로그래밍을 할려고 해서
: : : :
: : : : Html 파서를 만들려고 하는데요
: : : :
: : : : 데브피아를 뒤져 보니깐
: : : :
: : : : MS에서 기존에 만들어 놓은
: : : :
: : : : mshtnl이라는 객체를 사용하면 된다는 애기가 있어서요
: : : :
: : : : mshtml에 대한 자료나 아니면 사이트를 좀 알려 주세요
: : : :
: : : : 참
: : : :
: : : : msdn은 다 뒤져 봤는데요
: : : :
: : : : 영어라서 어려버서 못 찾겠어요~
: : : :
: : : : 흑~ 영어 공부좀 해야 겠네~
: : : :
: : : : 그럼 이만~
: : : :
: : : : 참 그리고 제가 밑에 질문 올린 Richedit에 대한 답변은 없네요
: : : :
: : : : 어떻게 해결 해야 하는건지 쩝~
: : : :
: : : : 그럼 이만~
: : : :
: :
: : 안녕하세요 만해 입니다.
: :
: : 제가 html 파서를 이용해서 사용할쪽은
: :
: : 어떤 거냐면요
: :
: : Html 문서를 가져와서
: :
: : 그걸 통째로 파서를 돌려서
: :
: : 우선은 기본적으로 Link와 관련된 Tag를 수집하는 거고요
: :
: : 차후에는 Html 문서에 있는 모든 object(Img,Javascript,VBscript)등을 수집해 와서
: :
: : 그걸 분석하는 그런 모듈을 개발코자 합니다.
: :
: : 참 그리고 제가 어제 올린 질문이 있는데 그것에 대한 자료 없으신지요?
: :
: : 그럼 이만~
: :
:
:
: 제가 만들어 논건 드릴순 없구요..지송(^^ 저두 그 회사가 라이센스 걸구 있어서 맘대루 흑흑)
:
: 일단 cHTML인가 하는 VC++에선 클래스 사용합니다...
:
: 모든 태그들을 다 걸러 낼수 있구요....그 내용또한 걸려 낼수 있습니다..
:
: 문제는 HTML 파서가 문제가 아니라 스트링에 대한 파서를 만들어야 합니다.
:
: 무슨 말인지는 아실테고..
:
: 아마도 제생각엔 스크린 스크랩핑 엔진을 만드시는 것 같은데....
:
: 예를 들어 드리겠습니다..지금 가지고 있는 것은 VC++ 소스 밖에 없는데...
:
: CWebBrowser2* pBrowser = (CWebBrowser2*)GetDlgItem( IDC_EXPLORER1 );
:    
: pDisp = pBrowser->GetDocument();
:
:   if (pDisp != NULL )
:   {
:     IHTMLDocument2* pHTMLDocument2;
:     HRESULT hr;
:     hr = pDisp->QueryInterface( IID_IHTMLDocument2, (void**)&pHTMLDocument2 );
:     if (hr == S_OK)
:     {
:     IHTMLElementCollection* pColl;
:     hr = pHTMLDocument2->get_all( &pColl );
:     if (hr == S_OK)
:     {
:         LONG celem;
:         hr = pColl->get_length( &celem );
:         if ( hr == S_OK )
:         {
:                  for ( int i=0; i< celem; i++ )
:             {
:             VARIANT varIndex;
:             varIndex.vt = VT_UINT;
:             varIndex.lVal = i;
:             VARIANT var2;
:             VariantInit( &var2 );
:             IDispatch* pDisp;
:
:             hr = pColl->item( varIndex, var2, &pDisp );
:
:             if ( hr == S_OK )
:             {
:
:             IHTMLElement* pElem;
:
:             hr = pDisp->QueryInterface( IID_IHTMLElement, (void **)&pElem );
:             if ( hr == S_OK )
:             {
:
:                      BSTR bstr;
:                 hr = pElem->get_tagName(&bstr);
:                 CString strTag = bstr;
:
:                 IHTMLImgElement* pImgElem;
:                 hr = pDisp->QueryInterface( IID_IHTMLImgElement, (void **)&pImgElem );
:                 if ( hr == S_OK )
:                 {
:                          pImgElem->get_href(&bstr);
:                     strTag += " - ";
:                     strTag += bstr;
:                     pImgElem->Release();
:                 }
:                 else
:                 {
:                     IHTMLAnchorElement* pAnchElem;
:                     hr = pDisp->QueryInterface( IID_IHTMLAnchorElement, (void **)&pAnchElem );
:                          if ( hr == S_OK )
:                     {
:                              pAnchElem->get_href(&bstr);
:                         strTag += " - ";
:                         strTag += bstr;
:                         pAnchElem->Release();
:                     }
:                 }
:
:                 m_listTags.AddString( strTag );
:                    
:                 pElem->Release();
:             }
:             pDisp->Release();
:         }
:     }
: }
:
: pColl->Release();
: }
: pHTMLDocument2->Release();
: }
: pDisp->Release();
: }
:
: 이 소스는 제가 테이블의 내용만 가져올려고 만든겁니다...
:
: 이걸 응용 하시면 좋은 프로그램을 만드실 수 있을 것 같은데...
:
: 도움이 필요하시면 멜로 주시길...
:
: 전 지금은 개인용 검색엔진을 개발 중입니다..
:
: 거의 막바지에 이르렀지만...흑흑...
:
: 그럼 즐프 하시길
:
:
안녕하세요 만해입니다.

제가 만들려고 하는것도 일종의 개인용 검색 프로그램인데요

흑~

질문 몇가지만 더 할꼐요~

CHTML이라는 클래스만 복사해서 빌더에서 쓰면 되는건가요?

그외 몇가지 더 가져와야 하는 파일이 있는지 궁금 하네요

그리고 자료 공유해 주셔서 감사 합니다.

그럼 이만~

+ -

관련 글 리스트
11590 [만해] msHtml에 대한 질문요 강재호 1110 2001/10/07
11619     Re:[만해] mstml에 대한 질문요 매댐덜 917 2001/10/08
11618     Re:[만해] mstml에 대한 질문요 매댐덜 933 2001/10/08
11617     Re:[만해] mstml에 대한 질문요 매댐덜 805 2001/10/08
11628         Re:Re:[만해] mstml에 대한 질문요 만해 906 2001/10/08
11631             Re:Re:Re:[만해] mstml에 대한 질문요 매댐덜 1271 2001/10/08
11634                 Re:Re:Re:Re:[만해] mstml에 대한 질문요 만해 1441 2001/10/08
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.