我正在尝试从具有身份验证的网站下载文件。我弄清楚了如何下载该文件,但它将保存在 %PROFILE\appdata\local\temp\目录中,名称如 tmpxhq6u1.mobi。如何使用其他文件名将其保存到另一个位置?
from mechanize import Browser
USER_AGENT = "Mozilla/5.0 (X11; U; Linux i686; tr-TR; rv:1.8.1.9) Gecko/20071102 Pardus/2007 Firefox/2.0.0.9"
br = Browser()
br.addheaders = [("User-agent", USER_AGENT)]
br.open("https://login.nrc.nl/login?service=http://digitaleeditie.nrc.nl/digitaleeditie/")
br.select_form(nr=0)
br['username'] = "XXXXXXX"
br['password'] = "xxxxxxx"
# br['rememberMe'] = ["1"]
response = br.submit()
print response.read()
f = br.retrieve('http://digitaleeditie.nrc.nl/digitaleeditie/helekrant/mobipocket/nn_20120521.mobi')[0]
print f
最佳答案
retrieve
方法采用文件名:
(filename, headers) = br.retrieve(url, filename)
只有当您不指定文件名时,它才会在临时目录中为您生成一个文件名。
mechanize retrieve
方法基本上与 (urllib.urlretrieve
)[http://docs.python.org/library/urllib.html#urllib. urlretrieve],这样您就可以通过阅读 urllib 文档来了解如何使用 retrieve
。
享受你的报纸!
关于python - 使用Python授权下载到特定位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10698671/