接口测试-chap6-获取页面动态token

拜拜、爱过 提交于 2020-01-22 18:10:08

1.在发起某些请求时,可能会要求必须是从某个页面进行请求,此时会验证页面的token
2.这个token是动态生成的,每次请求时值都是不同的,
不可以通过fiddler抓取的值作为固定值传入,通过fiddler抓到的是某次请求的一个值,
通过python发起请求时,又是新的请求了。
所以需要先获取,再传入。
有点类似获取随机数,再传递这个随机数
这里的例子是登录redmine,这个参数值是通过页面上的input[name=authenticity_token]标签传入的
3.可以使用BeautifulSoup获取:
BeautifulSoup用于爬虫时解析网页,可以获取到网页的标签。
在这里用于获取input[name=authenticity_token]标签的authenticity_token值,
它的返回值是列表,内容是一个标签,获取标签中属性值时,先通过列表索引知道元素,再通过键取值

from bs4 import BeautifulSoup

soup = BeautifulSoup(r2.text, 'lxml')
tag = soup.select('input[name=authenticity_token]')
data = {"utf8": "✓",
"authenticity_token": tag[0]['value'],
"username": "liuhui",
"password": "courageech123"}
res = s.post(url_2, data=data)

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!