如何以编程方式登录到使用 Java 询问验证码的网站?

Posted

技术标签:

【中文标题】如何以编程方式登录到使用 Java 询问验证码的网站?【英文标题】:How to programmatically log in to a website which asks captcha using java? 【发布时间】:2014-10-15 16:10:11 【问题描述】:

我想以编程方式登录this 网站。该网站要求提供用户名、密码和验证码。我不知道是否可以自动登录到使用验证码的网站。我搜索了***,但没有得到任何解决方案。

这是登录按钮的javascript功能..

function submitData() 
            document.getElementById('txtSN').value=document.getElementById('txtReg').value;
            document.getElementById('txtPD').value=document.getElementById('txtPw').value;
            if(document.getElementById('txtSN').value == '' || document.getElementById('txtSN').length == 0) 
                alert(' Please Enter Student Register No/Studen ID');
                document.getElementById('txtSN').focus();
                return false;
            

            if(document.getElementById('txtPD').value == '' || document.getElementById('txtPD').length == 0) 
                alert(' Please Enter Password');
                document.getElementById('txtPD').focus();
                return false;
            
             if(document.getElementById('txtverifycode').value == '' || document.getElementById('txtverifycode').length == 0) 
                alert(' Please Enter Verification Code');
                document.getElementById('txtverifycode').focus();
                return false;
            

            document.getElementById('txtPA').value=1;
            document.getElementById('txtReg').value="iamalsouser";
            document.getElementById('txtPw').value="thanksandregards";
            document.getElementById('frmStudentMain').action="http://evarsity.srmuniv.ac.in/srmswi/usermanager/youLogin.jsp";
            document.getElementById('frmStudentMain').submit();
        

【问题讨论】:

@getlost:为什么不可能 因为没有captha识别算法。 猜猜验证码是干什么用的? @getlost :实际上我想为发布的网站创建一个 android 应用程序。是否可以在应用程序中从该服务器导入验证码并使用它。 您的安卓应用需要验证码才能访问该网站 【参考方案1】:

验证码可阻止机器人自动登录网站并向网站发送垃圾邮件。您将找不到绕过它们的标准方法,或者您不会看到它们被使用!

为什么需要登录?如果这是为了在您自己的站点上进行测试自动化等,那么您可以建立一个后门。

如果它不是您的网站,那么他们不希望您自动登录。我建议你尊重设计师的意愿。

【讨论】:

我想创建一个用于考勤的安卓应用。这就是我发布这个问题的原因。我注意到单独使用用户名和密码很容易以编程方式登录。是否可以在 android 应用程序中导入验证码并从用户那里获取所有三个凭据并使用它们登录

以上是关于如何以编程方式登录到使用 Java 询问验证码的网站?的主要内容,如果未能解决你的问题,请参考以下文章

如何以编程方式确认Gmail自动转发验证?

如何以编程方式登录/验证用户?

javaweb中如何实时判定验证码的正误

如何使用 Spring-security 以编程方式登录用户?

React Native:登录或注销时如何以编程方式刷新应用程序?

服务器端使用 Bearer 令牌以编程方式在 Java 中验证 Keycloak 用户