【发布时间】:2020-11-22 23:32:13
【问题描述】:
我正在从jotform收集一些调查数据,我的数据包括录音,表格中音频的URL是
'https://www.jotform.com/widget-uploads/voiceRecorder/201374133/981221_121.wav'
如果我尝试使用 python 下载此文件,则会出错,因为用户只有登录 Jotform 帐户才能下载此文件。
如果在浏览器中登录很容易,我正在使用谷歌云并尝试从终端访问此文件。
我查看了他们的official API,上次更新是在 6 年前那个 repo 上。
我正在尝试使用请求访问,我试过了
import requests
s = requests.Session()
s.post('https://www.jotform.com/login/', data={'username': 'dummy_username', 'password': 'dummy_password'})
s.get( 'https://www.jotform.com/widget-uploads/voiceRecorder/201374133/981221_121.wav')
但它给出了<Response [404]> 错误。
我检查了用户名和密码字段:
我是否使用当前字段作为用户名和密码?
我也尝试使用 mechanize 但它给出了同样的错误:
import mechanize
import http.cookiejar as cookielib
browser = mechanize.Browser()
cookiejar = cookielib.LWPCookieJar()
browser.set_cookiejar( cookiejar )
browser.open('https://www.jotform.com/login/')
browser.select_form(nr = 0)
browser.form['username'] = 'dummy_username'
browser.form['password'] = 'dummy_password'
result = browser.submit()
browser.retrieve('https://www.jotform.com/widget-uploads/voiceRecorder/201374133/981221_121.wav')
如何使用请求模块下载音频文件?
【问题讨论】:
-
使用 Python 客户端会更好,github.com/jotform/jotform-api-python
-
我已经在我的问题中提到过,我试过他们的 API,它不起作用。
标签: python api python-requests mechanize jotform