【问题标题】:Getting website image generated by javascript (basically is a captcha)获取 javascript 生成的网站图片(基本上是验证码)
【发布时间】:2018-03-24 00:24:07
【问题描述】:

我想把这个captcha 放到一个图片框中,在 vb 中。 目的是访问网站并将验证码图像发送到程序,以便用户在 TextField 中写入验证码文本并访问网站内容。

有可能吗?? XD 我已经拥有的代码如下(它可以工作,但它没有得到验证码图像:() 谢谢大家,我感谢所有的帮助

Private Sub txtFileURL_TextChanged(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles txtFileURL.KeyDown

    If e.KeyCode = Keys.Enter Then
        Dim fileURL As String = txtFileURL.Text
        Dim fileName As String = My.Computer.FileSystem.GetName(fileURL)

        Dim saveFolder As String = Environment.GetFolderPath(Environment.SpecialFolder.Desktop)
        Dim saveFullPath As String = saveFolder + "\" + fileName

        Try
            My.Computer.Network.DownloadFile(fileURL, saveFullPath)
            MsgBox("Saved in Desktop!")
        Catch ex As Exception
            MsgBox(ex.Message)
            Dim file As System.IO.StreamWriter
            file = My.Computer.FileSystem.OpenTextFileWriter("D:\test.txt", True)
            file.WriteLine(ex.Message)
            file.Close()
    End Try
    End If

End Sub

【问题讨论】:

  • “它可以工作,但它没有得到验证码图像”...如果它没有按照你的意愿做,那么你怎么能说它在工作?无论如何,出了什么问题?是否发生异常?我看到您正在捕获和抑制异常而不记录它们,因此您没有真正的方法来确定问题,除非通过调试器单步执行并在 Catch 块中停止以检查异常(但首先您必须声明它)。抑制像这样的意外错误是一种可怕的反模式,应该避免 - 它使故障排除变得非常困难。 至少记录异常。
  • 使用上面的代码,我唯一不能做的就是下载生成的图像(验证码),这就是我希望程序做的事情。我更新了捕获的代码。这是一个例外:“www.captcha.com/demos/features/BotDetectCaptcha.ashx?get=image&c=c_captchademo_samplecaptcha&t=efccb902d2fe4059840ee492ca67da35”不是有效的远程文件地址。有效地址必须包含协议、路径和文件名。参数名称:地址
  • 好吧,正如错误中提到的,您的 URL 中缺少协议。尝试在 URL 字符串的开头添加http://(或https://,无论是哪个)。代码不知道在发出下载请求时使用哪些(或任何其他)协议。
  • 天哪,我不敢相信!这太容易了。添加 http:// 解决了这个问题。就连我都因为如此轻松而感到难过。 THX ;)

标签: vb.net image visual-studio captcha


【解决方案1】:

回答者:ADyson

好吧,如错误中所述,您的 URL 中缺少协议。尝试在 URL 字符串的开头添加 http://(或 https://,无论哪个)。代码不知道在发出下载请求时使用哪些(或任何其他)协议。

【讨论】:

    猜你喜欢
    • 2013-07-03
    • 2010-11-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多