2015-01-30 3 views
1

저는 Excel VBA 및 WPF 응용 프로그램을 사용하여 다양한 웹 사이트의 데이터를 긁어 모았습니다. 하지만 지금 나는 과거에 얻을 수없는 일에 빠져 있습니다.브라우저 내 Silverlight 컨트롤에서 데이터 스크랩

<OBJECT width="100%" height=400 id=rnSilverlightGrid 
data="data:application/x-oleobject;base64,QfXq3+...blah blah thousands of characters...AAAA==" 
type=application/x-silverlight-2 
<a href="http://go.microsoft.com/fwlink/?LinkID=124807" style="text-decoration: none;"></a> 
</OBJECT> 

getElementById("rnSilverlightGrid") 반환 아무것도,하지만 난에 대한 핸들을 얻을 수 있어요 (I가 도움이되지라고 생각 무엇을 왼쪽.) :

웹 사이트는 실버 라이트 컨트롤에 데이터를 표시 객체는 ie.document.all.tags("Object").Item(0)이지만 더 이상 객체를 가져 와서 데이터를 가져올 수 없습니다.

누구나이 Silverlight 그리드에서 데이터를 가져 오는 방법을 알 수 있습니까? 현재 Excel VBA로 코딩되어 있지만 필요한 경우 WPF로 전환하고 WebBrowser 컨트롤을 사용할 수 있습니다. 차라리 피할 수 있다면 스위치를 만들지 않을 것입니다. 어쨌든 그걸 어떻게 할 것인지 확실하지 않습니다. 화이트를 들여다 보니 (막 다른 골목처럼 보임) 답변이없는 다른 질문을 보았습니다.

미리 감사드립니다.

답변

1

Silverlight에는 JavaScript 호출에 특정 개체를 사용할 수있는 기능이있어서 JavaScript 개발자가 Silverlight 응용 프로그램에 외부에서 영향을 줄 수 있습니다.

이러한 것을 "스크립트 가능 개체"라고합니다.

추가 읽기 : https://msdn.microsoft.com/en-us/library/cc645085(v=vs.95).aspx

나의 이해는이 기능이 SL4와 SL5에서 사용할 수 있다는 것입니다.

+0

글렌 (Glenn) 감사합니다.하지만 더 이상 알려주지 않으면 답변을 사용할 수 없습니다. VBA 내에서, 내 바탕 화면에있는 웹 브라우저에서 Silverlight 컨트롤에 핸들 (IHTMLElement)을 가지고 있는데, 나는 버전 3을 제어 할 수 없다. 나는 SL 컨트롤을 쓰고 있지 않다. 표시하고있는 데이터를 읽으려고한다. – WizzleWuzzle

+0

SL 플러그인 작성자가 기능을 사용할 수없는 경우 액세스 할 수 없습니다. 죄송합니다. –

+0

자바 스크립트 기능을 의미합니까? DOM을 통해 컨트롤에 javascript를 삽입 할 수 있다고 생각합니다. 예 : hItem.OnClick = "alert ('hello there');" – WizzleWuzzle

관련 문제