vb抓取网页内容(如何从剪贴板中抓取一个URL然后在浏览器中打开该Web站点?)

优采云 发布时间: 2022-02-25 08:10

  vb抓取网页内容(如何从剪贴板中抓取一个URL然后在浏览器中打开该Web站点?)

  问:

  嗨 ScriptingGuy!如何从剪贴板中获取 URL 并在浏览器中打开网站?

  --CL

  回答:

  嗨,CL。这是一个有趣的问题,或者我们应该说,两个非常有趣的问题。因为你实际上问了两个问题。第一个问题很简单:我可以使用脚本打开特定的网站吗?您可能已经知道答案,我可以大声回答您,是的!下面是一个示例脚本,它将“脚本中心”URL 存储在一个名为 strURL 的变量中。然后,该脚本创建 WSHShell 对象的实例并使用 Run 方法打开默认 Web 浏览器并导航到指定的 URL:

  复制代码代码如下:

  strURL=""

  SetobjShell=CreateObject("Wscript.Shell")

  objShell.Run(strURL)

  第二个问题有点棘手:我可以使用脚本从剪贴板中获取信息吗?这个问题的答案也是“是”,尽管您必须通过后门进入剪贴板。

  WSH 和 VBScript 都不能与剪贴板交互:它们都不允许您将数据复制到剪贴板或从剪贴板粘贴数据。另一方面,Internet Explorer 可以与剪贴板交互。(看,Internet Explorer 真是无所不能!)所以,让 IE 为我们做这些工作吧。如果要从剪贴板中抓取数据,可以使用类似于以下的代码:

  SetobjIE=CreateObject("InternetExplorer.Application")

  objIE.Navigate("关于:空白")

  strURL=objIE.document.parentwindow.clipboardData.GetData("文本")

  objIE.退出

  Wscript.EchostrURL

  在这里,我们所做的是:创建 InternetExplorer 的实例并在空白页面中打开它。请注意,您实际上看不到这个 IE 实例,因为我们没有将 Visible 属性设置为 TRUE。一切都发生在后台。

  然后我们使用 clipboardData.GetData 方法获取放置在剪贴板上的文本并将其存储在变量 strURL 中;这就是以下代码行的作用:

  strURL=objIE.document.parentwindow.clipboardData.GetData("文本")

  我们关闭这个 IE 实例 (objIE.Quit) 并回显我们从剪贴板检索到的值。

  试试这个:将一些文本复制到剪贴板,然后运行脚本。您应该会看到一个消息框,其中收录您刚刚复制到剪贴板的文本。

  现在只剩下一件事要做:将脚本的两半组合成一个完整的脚本。以下脚本从剪贴板中获取 URL 并在默认 Web 浏览器中打开该网站:

  SetobjIE=CreateObject("InternetExplorer.Application")

  objIE.Navigate("关于:空白")

  strURL=objIE.document.parentwindow.clipboardData.GetData("文本")

  objIE.退出

  SetobjShell=CreateObject("Wscript.Shell")

  objShell.Run(strURL)

  这个脚本还不错。它还有一个优点——它不仅用于打开网站。假设您的剪贴板上有一个文件路径,例如“C:\Scripts\ScriptLog.txt”。运行此脚本,文件将在记事本(或您设置为与 .txt 文件关联的任何应用程序)中打开。如果剪贴板上有 .doc 文件的路径,此脚本将在 Microsoft Word 中打开该文档。它实际上是一个通用的文件打开脚本,而不仅仅是一个网站专用的打开脚本。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线