模拟登录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)