2010-04-14 31 views

回答

2

我已经做了屏幕的刮应用公平一点,并发现这是非常宝贵的: https://github.com/MindTouch/SGMLReader

有一点是网页上的代码示例,但我增添了几分额外的这里,将返回你想

Imports System.Xml 
Imports System.IO 
Imports System.Net 
Imports System.Text 

Function FromHtml(ByVal reader As TextReader) As XmlDocument 
    '' setup SgmlReader 
    Dim sgmlReader As Sgml.SgmlReader = New Sgml.SgmlReader() 
    sgmlReader.DocType = "HTML" 
    sgmlReader.WhitespaceHandling = WhitespaceHandling.None 
    sgmlReader.CaseFolding = Sgml.CaseFolding.ToLower 
    sgmlReader.InputStream = reader 
    '' create document 
    Dim doc As XmlDocument = New XmlDocument() 
    doc.PreserveWhitespace = True 
    doc.XmlResolver = Nothing 
    doc.Load(sgmlReader) 
    Return doc 
End Function 

Function LoadWebText(ByVal URL As String) As String 
    Dim objWebClient As New WebClient() 
    Dim objUTF8 As New UTF8Encoding() 

    Dim xml As New XmlDocument 
    xml = FromHtml(New StringReader(objUTF8.GetString(objWebClient.DownloadData(URL)))) 

    Return xml.InnerText() 

End Function 
1

下面是一些代码通过微软的IE控件加载yahoo.com或打印文本。

在Visual Studio中创建一个新项目,转到添加引用页面,单击COM选项卡并添加Microsoft Internet控件。

然后将下面的代码粘贴到函数中。

Dim MyBrowser As New SHDocVw.InternetExplorer 

MyBrowser.Navigate("http://www.yahoo.com/") 

Do Until MyBrowser.Busy = False 

System.Threading.Thread.Sleep(100) 

Loop 

Debug.Print(MyBrowser.Document.body.innerText) 
+0

哇这真的是一个真棒想法非常感谢你 – 2010-04-14 16:45:39

0

到底是什么,如果你正在寻找能够快速复制所有内容复制到剪贴板,您可以使用运行的JavaScript(书签)书签,而不是创建一个书签与你的你会包括以下内容:

javascript:void function(){document.addEventListener("copyText",function(t){t.preventDefault(),t.clipboardData%26%26t.clipboardData.setData("text/plain",document.body.innerText)}),document.execCommand("copyText")}();