我有一个 Visual Basic 6 应用程序,它需要从特定网站获取图片,但问题是用户必须在浏览器上打开网页并登录到网页,然后下载图片并将其上传到 vb6 应用程序中。是否可以让 vb6 进入该网页并登录并捕获屏幕截图并将其保存在特定文件夹中而无需打开浏览器?该网址默认打开登录页面,您必须先登录才能访问图片页面,我们只需截屏并裁剪即可。
这在纯VB6中可能吗?
我有一个 Visual Basic 6 应用程序,它需要从特定网站获取图片,但问题是用户必须在浏览器上打开网页并登录到网页,然后下载图片并将其上传到 vb6 应用程序中。是否可以让 vb6 进入该网页并登录并捕获屏幕截图并将其保存在特定文件夹中而无需打开浏览器?该网址默认打开登录页面,您必须先登录才能访问图片页面,我们只需截屏并裁剪即可。
这在纯VB6中可能吗?
这是一些非常通用的代码,可以让您登录网站。基本上就是在浏览器文档中找到控件并填写正确的值。由于您没有提供任何代码来构建它,因此您需要填写所有正确的值。这是使用Microsoft Internet 控件将浏览器控件添加到表单。
Private Sub Form_Load()
Dim i As Integer
WebBrowser1.Navigate ("http://URL of the page you want to go to")
Do While WebBrowser1.ReadyState <> READYSTATE_COMPLETE
DoEvents
Loop
If InStr(WebBrowser1.LocationURL, "http://targetwebsite/login.aspx") Then
On Error Resume Next
For i = 0 To WebBrowser1.Document.Forms(0).length - 1
' Uncommenting the MsgBox method will display the control names and help find the controls you are looking for
'MsgBox WebBrowser1.Document.Forms(0)(i).Type & ", " & WebBrowser1.Document.Forms(0)(i).Name
If WebBrowser1.Document.Forms(0)(i).Type = "text" Then
WebBrowser1.Document.Forms(0)(i).Value = "user name"
End If
If WebBrowser1.Document.Forms(0)(i).Type = "password" Then
WebBrowser1.Document.Forms(0)(i).Value = "user password"
End If
Next i
' now find and click the submit button
For i = 0 To WebBrowser1.Document.Forms(0).length - 1
If WebBrowser1.Document.Forms(0)(i).Type = "submit" Then
WebBrowser1.Document.Forms(0)(i).Click
End If
Next i
End If
' You should now be logged in and loading the page you want
End Sub