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)
    
  • 相关阅读:
    mvn打包不执行测试
    sprngmvc静态资源
    java.lang.NoSuchMethodError: java.util.Map.putIfAbsent(Ljava/lang/Object;Ljava/lang/Object;)Ljava/la
    Lombok annotation handler class lombok.javac.handlers.HandleData failed on G
    linux 一些命令(2)
    linux 空间释放,mysql数据库空间释放
    mysql 日志清理
    idea svn performing vcs refresh 很长时间
    装饰页面decorators.xml
    拦截器的使用,配置手机浏览器访问的h5页面
  • 原文地址:https://www.cnblogs.com/syncCN/p/5631914.html
Copyright © 2011-2022 走看看