zoukankan      html  css  js  c++  java
  • 工大助手(用户名、密码错误提示)

    工大助手(用户名、密码错误提示)

    小组讨论

    1. 按照之前验证码改进的方式将用户名错误以及密码错误添加进去。
    2. 在桌面版上监听脚本返回的错误信息,并反馈给用户相应错误信息。
    3. 逐步添加吐槽墙的功能。

    改进(错误提示)

    今天完成了用户名、密码的错误提示。和验证码错误提示的逻辑相同,当输入错误的用户名或者密码的时候,会返回一个带有alert提示的页面,而我们的任务仍然是将该提示信息爬取下来。

    但是遇到了一个新的问题,之前使用的提取方式并不能很好地应对提取不同中文字符串的情况。

    之前使用的方式:

    soup = BeautifulSoup(result.read(),"html.parser")
    error = soup.find_all('script')
    source = error[1].get_text().encode("gbk")
                    
    secret_error = "验证码不正确"
    res = len(secret_error and source)
    

    然后根据res的值判断是否匹配。但由于三个错误提示在网页上都属于alert中的内容,所以假设存在密码不正确的提示时,匹配验证码不正确的值也不会为0。

    基于这样的情况,我尝试了另外一种解决方式,发现python的string本身就有find方法,如果找到则返回下标,如果没找到则返回-1.

    secret_error = "验证码不正确"
    secret_res = source.find(secret_error)
    
    if secret_res != -1:
    	f = file("error.txt","w+")
        f.writelines(secret_error)
        f.close()
        os._exit(0)
                    
    pass_error = "密码不正确"
    pass_res = source.find(pass_error)
    
    if pass_res != -1:
    	f = file("error.txt","w+")
        f.writelines(pass_error)
        f.close()
        os._exit(0)
    
    user_error = "用户名不存在"
    user_res = source.find(user_error)
    
    if user_res != -1:
    	f = file("error.txt","w+")
        f.writelines(user_error)
        f.close()
        os._exit(0)
    
  • 相关阅读:
    The password has to have a minimum of 6 characters, including at least 1 small letter, 1 uppercase letter and 1 number
    Angular i18n的技术分享、踩过的坑
    转: .Net 4.0 ExpandoObject 使用
    min_square
    KALMAN PYTHON
    双系统安装 win + ubuntu
    docker
    drl
    shell
    导航定位方案
  • 原文地址:https://www.cnblogs.com/syncCN/p/5631914.html
Copyright © 2011-2022 走看看