模拟登录readfree(手动验证码)

import requests
import re
def get_page_url():
    url="http://readfree.me/accounts/login/?next=/"
    response=session.get(url=url,headers=headers)
    res=response.cookies.get("csrftoken")
    url=re.findall('<img src="(.*?)" alt="captcha" class="captcha" />',response.text)
    return ("http://readfree.me{}".format(str(url[0])),res)

def input_captcha(code):
    response=session.get(code)
    with open ("captcha.jpg","wb")as f:
        f.write(response.content)
    captcha=input("请输入验证码:")
    return captcha

def login(code,res):
    captcha=input_captcha(code)
    url="http://readfree.me/accounts/login/?next=/"
    postdata={
        'csrfmiddlewaretoken':res,
        'email': '819368789@qq.com',
        'password': '******',
        'captcha_1':captcha,
    }
    response=session.post(url,data=postdata,headers=headers)
    print(response.text)

if __name__ == '__main__':
    headers={
    'Content - Type': 'application / x - www - form - urlencoded',
    'Host': 'readfree.me',
    'Origin': 'http: // readfree.me',
    'Referer': 'http: // readfree.me / accounts / login /?next = /',
    'Upgrade - Insecure - Requests': '1',
    'User - Agent': 'Mozilla / 5.0(Linux;Android6.0;Nexus5Build / MRA58N) AppleWebKit / 537.36(KHTML, likeGecko) Chrome / 62.0.3202.94MobileSafari / 537.36'
}
    session=requests.session()
    url, res = get_page_url()
    login(url, res)

 

 

 

posted @ 2017-12-08 10:22  Alan_Tam  阅读(2973)  评论(0)    收藏  举报