python模拟登陆

from bs4 import BeautifulSoup
import re
import requests
import json
headers = {
            'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.79 Safari/537.36',
            'upgrade-insecure-requests': '1',
            'accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8',
            'accept-encoding': 'gzip, deflate, br',
            'accept-language': 'zh-CN,zh;q=0.9,en;q=0.8',
        }
#data中存储需要post的数据
data={'username':'[email protected]','password':'12345678'}
login_url='https://bitbucket.org/account/signin/'
session=requests.Session()
response=session.get(login_url,headers=headers,verify=False,timeout=30)
# print(response.request.headers)
# print(response.headers)
# print(response.cookies)
# print(response.url)
# 获取cookie,并为正确的格式	
cookie=''
for key,value in response.cookies.items():
	cookie+=key+'='+value+';'
print("cookie:",cookie)

#然后放到头部信息里面去
headers['cookie']=cookie
headers['referer']=login_url
headers['orgin']='https://bitbucket.org'
# headers['upgrade-insecure-requests']='1'
headers['content-type']='application/x-www-form-urlencoded'
# 获取csrf并放到post提交的数据中去
csrf_soup=BeautifulSoup(response.text,'lxml')
csrf=csrf_soup.find('input',{'name':'csrfmiddlewaretoken'})['value']
data['csrfmiddlewaretoken']=csrf
data['next']=''

r=session.post(login_url,headers=headers,data=data)
print('url',r.url)
print(r.text)


猜你喜欢

转载自blog.csdn.net/hsc_1/article/details/80664222