如何解决Python Selenium下载需要访问权限登录的MP4 尝试:
任务:从需要登录的链接下载mp4
此需要登录的链接表示:
- 如果我将链接粘贴到新标签页上(在Google Chrome浏览器的同一窗口中),它将起作用!只要它已经登录。
- 但是如果我使用新的隐身窗口打开它,则错误消息如下所示:
此页面无效 如果问题仍然存在,请与网站所有者联系。 HTTP错误401
问题
- Selenium chromedriver将提示一个新窗口并将MP4链接粘贴到此处(与以隐身模式粘贴该链接相同,因为在新窗口中未进行登录)
因此,在这种情况下,我们无法下载内容,因为需要登录才能访问内容
问题: 因此,我如何要求python selenium chromedriver 在同一窗口中下载mp4 (以便访问内容)?
感谢您对我的帮助!我已经在网上搜索尝试了几天了。
解决方法
尝试:
通常,我将使用“请求”执行以下代码段,但在这种情况下,我们需要登录:
with open(FileDB+ str(a)+ "." + str(lesson_name) +'.mp4','wb') as file:
#,encoding="utf-8"
file.write(video_response.mp4)
然后我尝试了插入用户名和密码的方法,这是不正确的:
最有可能的是,使用这种方式无法完成登录过程(如上所示,我们尝试使用隐身窗口打开链接,并显示错误消息msg HTTP ERROR 401,没有提供登录详细信息的地方
username = XYZ
password = XYZ
video_response = requests.get(link,auth=(username,password),allow_redirects=True)
with open(FileDB+ str(a)+ "." + str(lesson_name) +'.mp4','wb') as file:
#,encoding="utf-8"
file.write(video_response.mp4)
我还尝试使用urllib,显然,以下代码无法完成登录过程:
import urllib.request
urllib.request.urlretrieve(link,'video.mp4')
我还尝试过使用crtl + t
手动打开一个新标签页并下载它,但是我想知道除此手动方法外是否还有其他出路。
非常感谢您帮助我解决此问题!
使用的系统: Spyder Python 3.7 ChromeDriver 85.0.4183.87 硒
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。