博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python的requests模块实现登陆示例
阅读量:6359 次
发布时间:2019-06-23

本文共 986 字,大约阅读时间需要 3 分钟。

51cto用python的requests模块实现登陆示例代码如下:

-- coding:utf-8 --

import requests
import re

client = requests.session()

agent = "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36"
header = {
"User-Agent": agent
}

URL = ""

def get_xsrf():
#获取xsrf值
response = client.get(URL, headers=header)
match_obj = re.search('.name="csrf-token" content="(.?)"', response.text)
if match_obj:
return match_obj.group(1)
else:
return ""

def _51cto_login(account, password):

#51cto登录
post_url = URL
post_data = {
"_csrf": get_xsrf(),
"LoginForm[username]": account,
"LoginForm[password]": password,
#虽然抓包分析时post有以下2个参数,但是实际登陆时以下两个参数可有可无
#"LoginForm[rememberMe]": 0,
#"login-button": "登 录"
}
response = client.post(post_url, data=post_data, headers=header)
#只有上面认证通过后,请求以下页面才可以看到登陆后的结果
response = client.get(URL)
#print response.content
print response.text

_51cto_login("填入真实的用户名", "填入真实的密码")

本文转自 老鹰a  51CTO博客,原文链接:http://blog.51cto.com/laoyinga/2046765

转载地址:http://mgbma.baihongyu.com/

你可能感兴趣的文章
csa Round #66 (Div. 2 only)
查看>>
Get open Popups
查看>>
c#中两种不同的存储过程调用与比较
查看>>
设计模式-责任链模式(17)
查看>>
数论 + 公式 - HDU 4335 What is N?
查看>>
Public Prize
查看>>
生成 39 条形码
查看>>
抽象工厂理解
查看>>
计网第四章网络层(二)
查看>>
vs 行数
查看>>
nodejs下的express安装
查看>>
表单中的单文件点击和拖拽上传
查看>>
BZOJ1396 识别子串
查看>>
【转】numpy中 meshgrid 和 mgrid 的区别和使用
查看>>
【转】python中的闭包
查看>>
编程总结模版
查看>>
成为linux的合格公民
查看>>
小心陷阱:二维动态内存的不连续性
查看>>
转:关于启用 HTTPS 的一些经验分享(一)
查看>>
复习HTML、CSS、JS练习题
查看>>