2012-04-16 34 views
0

我需要從this web page得到一些文字。我想用我的計劃中的交易飼料來分析市場情緒。來自網頁的文字

我用瀏覽器控件和get元素命令,但它不工作。問題是,無論何時我的瀏覽器開始打開頁面,我都會收到Java腳本錯誤。

我試圖與DOM但目前看來,我不很明白我需要做的:) 下面是代碼:

Dim code As String 
    Using client As New WebClient 

     code = client.DownloadString("http://openbook.etoro.com/ahanit/#/profile/Trades/") 
    End Using 

    Dim htmlDocument As IHTMLDocument2 = New HTMLDocument(code) 
    htmlDocument.write(htmlDocument) 


    Dim allElements As IHTMLElementCollection = htmlDocument.body.all 

    Dim allid As IHTMLElementCollection = allElements.tags("id") 
    Dim element As IHTMLElement 

    For Each element In allid 
     element.title = element.innerText 
     MsgBox(element.innerText) 

    Next 

更新:所以我嘗試了HTML敏捷包,如建議評論,我再次卡在這個代碼

Dim plain As String = String.Empty 
    Dim htmldoc As New HtmlAgilityPack.HtmlDocument 
    htmldoc.LoadHtml("http://openbook.etoro.com/ahanit/#/profile/Trades/") 
    Dim goodnods As HtmlAgilityPack.HtmlNodeCollection =        htmldoc.DocumentNode.SelectNodes("THE PROBLEM") 

    For Each node In goodnods 
     TextBox1.Text = htmldoc.DocumentNode.InnerText 
    Next 

任何意見什麼現在?

好吧我想我知道問題是什麼,我需要的div是隱藏的,它沒有加載,當我加載網頁只是源代碼。有人知道如何加載所有隱藏的div?

這是我的新代碼

Dim doc As New HtmlAgilityPack.HtmlDocument 
    Dim web As New HtmlWeb 


    doc = web.Load("http://openbook.etoro.com/ahanit/#/profile/Trades/") 

    Dim nodes As HtmlNode = doc.GetElementbyId("feed-items") 

    Dim id As String = nodes.WriteTo() 
    TextBox1.Text = TextBox1.Text & vbCrLf & id 
+0

你試過HTML敏捷ACK:http://htmlagilitypack.codeplex.com/ – Shoban 2012-04-16 15:30:01

+0

謝謝Shoban,但什麼也沒有,我知道:)我沒有太多EXP用vb所有上面的代碼是3天谷歌搜索的結果,仍然知道在視線內:) – user1336635 2012-04-16 16:07:20

+0

shoban如果你現在如何工作plzz一些建議:) – user1336635 2012-04-17 10:22:52

回答

0

user1336635,

歡迎SO!你可能會嘗試的是檢查他的源代碼,找出你需要的字段是什麼javascript函數(使用螢火蟲 - 我認爲它是「交易帶來利潤」的那個),然後將該腳本嵌入到一個Web瀏覽器控件加載的網頁。那就是我想要開始的地方。我檢查了他的源代碼並搜索了「交易導致利潤」,但沒有發現任何導致我相信狩獵元素「可能」不可能的事情。只是一個開始的地方,直到有人有更多的經驗,這鈴聲!最好!

-sf

+0

很高興知道,它可能得到的文本,所以我的努力​​是不是浪費時間:)問題是,我沒有在服務器端語言的任何EXP我必須找到其他的方法來解決,而不復雜的事情太多了我:)謝謝 – user1336635 2012-04-16 16:15:14

+0

不客氣的兄弟!我其實不確定你是否需要服務器的東西。我只是建議找到負責計算百分比並自己運行它的JavaScript(繞過他的網站)。如果你知道,你可以得到的文本,那麼你正在尋找的元素在類的輪廓贏比「(我繼續跟蹤它的亞) – sacredfaith 2012-04-16 17:07:09

+0

我不需要任何百分比我只需要例如:「ahanit關閉了購買歐元/美元的頭寸,從Moksel1972複製,獲得5%」我對收益不感興趣,我只需要交易者開倉或關閉的信息:)謝謝 – user1336635 2012-04-16 17:14:46