美文网首页
python模拟登陆

python模拟登陆

作者: 西歪A | 来源:发表于2017-09-13 21:21 被阅读0次

    模拟无验证码的登陆

    模拟网站http://bbs.chinaunix.net/member.php?mod=logging&action=login&logsubmit=yes
    浏览器:chrome

    1.按F12,输入个人账号密码,点击登陆(点击登陆前建议把列表清空),找到下面代码里面字典header数据

    2.png

    2.点击登陆,页面跳转,点击暂停,在fox里面找到post属性的一栏,找到下面代码里面字典post数据

    1.png

    3.代码如下:

    #!/usr/bin/env python
    # coding: utf-8
    import requests
    from bs4 import BeautifulSoup
    
    posturl = 'http://bbs.chinaunix.net/member.php?mod=logging&action=login&loginsubmit=yes&loginhash=LJDfJ'#提交的带用户名密码的posturl
    hosturl = 'http://bbs.chinaunix.net/member.php?mod=logging&action=login&logsubmit=yes'#登陆页面的代码
    
    post = { 'formhash':'f38f81ed',
         'referer':'http%3A%2F%2Fbbs.chinaunix.net%2F',
         'username':u'西歪诶'.encode('gbk'),
         'password':'AN87422006',
         'loginsubmit':'true',
         'return_type':''
        }
    
    header = {  'Upgrade-Insecure-Requests':'1',
            'Host':'bbs.chinaunix.net',
            'Referer':'http://bbs.chinaunix.net/member.php?mod=logging&action=logout&formhash=a1b12b75',
            'User-Agent':'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36'
         }
    
    header_session = requests.Session()#使用seesion登录,这样的好处是可以在接下来的访问中可以保留登录信息
    header_session.post(hosturl, data = post, headers = header)#登录hosturl
    login_page = header_session.get(posturl, headers = header).content#requests的session登录,以post方式,参数分别为posturl、headers
    
    f = open('china.html', 'w')
    f.write(login_page)
    f.close()#打开china.html文件,可以发现已经登陆进去 
    

    4.打开china.html,得到如图所示的结果:

    3.png

    登陆成功!

    相关文章

      网友评论

          本文标题:python模拟登陆

          本文链接:https://www.haomeiwen.com/subject/dkwlsxtx.html