我需要一个最可能是宏的程序来访问当前打开的网页,然后获取特定数据,然后将其粘贴到excel文件中。
我无法在Excel上使用网页查询,因为我需要访问的网站受密码保护。
我大约每天将数据从100个网页粘贴到2000个网页。
我需要从网页上获取的示例数据显示如下:
@Serial Code: 123345 ; @Database: DB001 ; @Title: Sample Tile
在excel中它应该是: | 12345 | DB001 |样本标题
所以我需要的是 1.转到网页 2.运行宏以获取数据 3.转到下一个网页
我希望你能帮助我
答案 0 :(得分:1)
对于大多数功能强大的套件,您可以将脚本语言与Web客户端一起使用,例如perl
或python
。我用perl完成了这个。
对于密码问题,请先提交您的登录信息并保存 cookies ,然后使用Cookie访问受密码保护的内容。
将页面内容保存为文本文件,解析它以提取字段。
答案 1 :(得分:1)
示例如何从vba读取html: 选项明确
' Add References:
' - Microsoft HTML Object Library
' - Microsoft Internet Controls
Private Const URL As String = "C:\temp\Test.html"
Sub Test()
Dim browser As InternetExplorer
Set browser = New InternetExplorer
With browser
browser.Visible = True
browser.Navigate URL
Do: Loop Until browser.Busy = False
End With
Dim htmlDocument As htmlDocument
Set htmlDocument = browser.Document
' input
Dim inputElement As HTMLInputElement
Set inputElement = htmlDocument.getElementById("input1")
If (inputElement Is Nothing) Then
Err.Raise 123456789, , "inputElement is nothing. ID not found."
End If
[a1] = inputElement.Value
browser.Quit
Set browser = Nothing
End Sub
答案 2 :(得分:0)
我不知道是否有任何现成的宏来完成这项工作,但你可以通过创建自定义应用程序来实现。