python ssologin_如何在成功的weblogin SSO身份验证后处理javascript内容和重定向?

我正在写一个python脚本,从我的学校网站下载课程内容(mp4,pdf)。我的学校使用Weblogin SSO身份验证来访问任何受保护的url。在

我能够使用以下脚本的第一部分验证我的凭据:#1. Authenticate

login_url = "https://weblogin.MY_SCHOOL.edu/login"

payload = {'login':'my_loging','password':'my_pass'}

target_url = "https://My_SCHOOL.instructure.com/courses/12345678""

with requests.Session() as c:

req_headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.157 Safari/537.36}'}

c.headers.update(req_headers)

c.get(login_url) # to get cookies

c.post(url1, data=payload) #,headers = req_headers)

#2. get html from target site

W1 = c.get(target_url)

print(W1.url)

print(W1.text)

#3. parse html and download content.

#tbc

我可以看到我在c语言中的身份验证是成功的。文章.text,但当我尝试使用get()访问任何目标站点时请求.会话(),我没有得到类的预期html内容,而是收到了一条消息:"Since your browser does not support JavaScript, you must press the

Continue button once to proceed"

目标URL重定向到此URL:

为什么在成功的SSO身份验证后我无法访问目标url?我不确定请求模块中的javascript支持是否是问题所在,因为即使在我的互联网浏览器中禁用JS支持,我也能看到目标url的一些html内容,尽管不是全部内容。奇怪的是,我的get()请求卡在重定向的url中:“https:…/SAML2/Redirect/SSO““

如果你能告诉我如何绕过这个问题,我将不胜感激。我不想使用selenium或mechanize之类的Web驱动程序。我使用QtWebkit来呈现Javascript内容,但我不知道是否可以从请求.会话()到QtWebkit。在

任何帮助都是非常感谢的。谢谢

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实现Spring Boot接口SSO(Single Sign-On)后,定向到Vue页面可以通过以下方式实现: 首先,确保已在Vue项目中配置好路由,以便可以访问需要定向的页面。假设定向的页面为/login。 在Spring Boot中,可以使用定向方法将接口SSO后的请求定向到Vue页面。具体如下: 1. 在Spring Boot项目的Controller中创建一个方法,用于处理接口SSO后的定向请求。例如: ``` @Controller @RequestMapping("/api") public class SsoController { @GetMapping("/sso") public String ssoRedirect() { return "redirect:/login"; // 定向到Vue项目中的登录页面 } // 其他Controller方法... } ``` 2. 在Vue项目中的路由配置文件(一般为router/index.js)中,添加对/login的路由配置。例如: ``` import Vue from 'vue' import Router from 'vue-router' import Login from '@/views/Login' Vue.use(Router) export default new Router({ routes: [ { path: '/login', name: 'Login', component: Login }, // 其他路由配置... ] }) ``` 这样,当通过访问Spring Boot项目中的/api/sso接口进行SSO后,会自动定向到Vue项目中的/login页面。 需要注意的是,此处的定向是通过后台进行的,前端并不需要特别处理。前端只需保证登录页面(/login)在Vue项目中已经正确配置,并且可以通过路由访问。 同时,需要确保跨域请求不受限制,这可以通过在Spring Boot项目中配置跨域访问的方法来解决。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值