vb抓取网页内容(一个示例脚本,它将“脚本中心”的URL存储在一个名为)
优采云 发布时间: 2022-02-20 00:12vb抓取网页内容(一个示例脚本,它将“脚本中心”的URL存储在一个名为)
嗨,CL。这是一个有趣的问题,或者我们应该说,两个非常有趣的问题。因为你实际上问了两个问题。第一个问题很简单:我可以使用脚本打开特定的网站吗?您可能已经知道答案,我可以大声回答您,是的!下面是一个示例脚本,它将脚本中心的 URL 存储在一个名为 strURL 的变量中。然后该脚本创建 WSH Shell 对象的实例并使用 Run 方法打开默认 Web 浏览器并导航到指定的 URL:
strURL=""
设置 objShell = CreateObject("Wscript.Shell")
objShell.Run(strURL)
第二个问题有点棘手:我可以使用脚本从剪贴板中获取信息吗?这个问题的答案也是“是”,尽管您必须通过后门进入剪贴板。
WSH 和 VBScript 都不能与剪贴板交互:它们都不允许您将数据复制到剪贴板或从剪贴板粘贴数据。另一方面,Internet Explorer 可以与剪贴板交互。(看,Internet Explorer 可以做任何事情!)所以,让 IE 为我们做这些工作。如果要从剪贴板中抓取数据,可以使用类似于以下的代码:
设置 objIE = CreateObject("InternetExplorer.Application")
objIE.Navigate("关于:空白")
strURL = objIE.document.parentwindow.clipboardData.GetData("text")
objIE.退出
Wscript.Echo strURL
我们在这里所做的只是创建一个 Internet Explorer 实例并在一个空白页面中打开它。请注意,您实际上看不到这个 IE 实例,因为我们没有将 Visible 属性设置为 TRUE。一切都发生在后台。
然后,我们使用clipboardData.GetData 方法获取放置在剪贴板上的文本,并将其存储在变量strURL 中;这就是以下代码行的作用:
strURL = objIE.document.parentwindow.clipboardData.GetData("text")
我们关闭这个 IE 实例 (objIE.Quit) 并回显我们从剪贴板检索到的值。
试试这个:将一些文本复制到剪贴板,然后运行脚本。您应该会看到一个消息框,其中收录您刚刚复制到剪贴板的文本。
现在只剩下一件事要做:将脚本的两半组合成一个完整的脚本。以下脚本从剪贴板中获取 URL 并在默认 Web 浏览器中打开该网站:
设置 objIE = CreateObject("InternetExplorer.Application")
objIE.Navigate("关于:空白")
strURL = objIE.document.parentwindow.clipboardData.GetData("text")
objIE.退出
设置 objShell = CreateObject("Wscript.Shell")
objShell.Run(strURL)
这个脚本还不错。它还有一个优势——它不仅仅用于打开网站。假设您的剪贴板上有一个文件路径,例如“C:\Scripts\ScriptLog.txt”。运行此脚本,文件将在记事本(或您设置为与 .txt 文件关联的任何应用程序)中打开。如果剪贴板上有 .doc 文件的路径,此脚本将在 Microsoft Word 中打开该文档。它实际上是一个通用的文件打开脚本,而不仅仅是一个 Web 站点专用的打开脚本。