首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >下载前绕过Python wget复选框

下载前绕过Python wget复选框
EN

Stack Overflow用户
提问于 2018-12-05 00:03:34
回答 1查看 157关注 0票数 0

因此,我正在尝试从一个网站下载一个文件,即jdk,以自动设置工作站。从oracle网站下载时,您必须接受TOS。

我的问题是,您到底是如何接受来自python wget的TOS的呢?

代码语言:javascript
复制
import wget
import ssl

ssl._create_default_https_context = ssl._create_unverified_context

url = "https://download.oracle.com/otn-pub/java/jdk/11.0.1+13/90cf5d8f270a4347a95050320eef3fb7/jdk-11.0.1_windows-x64_bin.exe"
wget.download(url, 'java11.exe')
EN

回答 1

Stack Overflow用户

发布于 2018-12-05 00:19:33

使用wget模块,您不能设置cookies,Oracle网站使用cookies来接受服务。

相反,您可以使用requests模块来设置cookies、下载和保存文件。

代码语言:javascript
复制
import requests

url = 'https://download.oracle.com/otn-pub/java/jdk/11.0.1+13/90cf5d8f270a4347a95050320eef3fb7/jdk-11.0.1_windows-x64_bin.exe'

cookie = { 'oraclelicense': 'accept-securebackup-cookie' }

r = requests.get(url, cookies=cookie)
if r.status_code == 200:
    with open("jdk-11.0.1_windows-x64_bin.exe", 'wb') as file:
        file.write(r.content)

编辑:我看到你也是通过未经验证的SSL连接的,要使用requests实现这一点,你可以将verify设置为False:

代码语言:javascript
复制
r = requests.get(url, cookies=cookie, verify=False)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53616934

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档