2012-04-16 56 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