我正在尝试通过远程运行的 jupyter 实验室下载文件,但是该网站要求我在下载前进行身份验证。我尝试了以下选项:
import requests
url = 'https://usa.ipums.org/usa-action/downloads/supplementals/mlp_1900_1910_csv_v1_0.zip'
user, password = 'abc', '123'
resp = requests.get(url, auth=(user, password))
这没有按预期工作,我收到 <Response [200]>
消息,其中仅包含对登录/身份验证页面的重定向(可以使用 resp.text
查看)。
IFrame
:from IPython.display import IFrame
IFrame(src="https://whatismyipaddress.com/", width='100%', height='500px')
这显示了我本地机器的 IP 地址(不是远程连接),所以这不会让我将文件直接下载到我的远程机器上。
requests
的另一次尝试:import requests
site_url = "https://uma.pop.umn.edu/usa/authentication/login"
s = requests.Session()
s.get(site_url)
s.post(site_url, data={'login[email]': user, 'login[password]': password})
但是在这个阶段我得到了 [422]
响应代码。
有没有办法通过 Jupyter Lab 做到这一点? (远程认证和文件下载)