【问题标题】:Python3 download document from webPython3 从网上下载文档
【发布时间】:2019-03-10 15:39:16
【问题描述】:

我是 Python3 的新手,登录网站后尝试下载文档。

我有 2 个网址,可以让我立即登录页面并下载文档。登录后分别是:

  1. https://www.xxxcompany.com/login.action?loginname=name&password=psw
  2. https://www.xxxcompany.com/doc_download_all.action?ID=37887&edition=PD&Year=2018&Month=10&Day=5&&CLI=&transferNumber=&inOut=C&deviceType=A&minDuration=0&maxDuration=0&sortType=0&sortAsc=1&showAdv=0&viewtype=0&subPage=M&RMID=-1&updateRMID=&updateRecordID=&customField1=

这是我的代码。它绝对不起作用,它不会打印我的状态码。我误解了一些概念吗?请帮我解决问题。非常感谢!

from lxml import html
import webbrowser
import requests
def login():
        with requests.session() as s:
        # fetch the login page
                s.get(url1)
                print(s.status_code) #check whether its successfully login
                s.get(url2) #download the doc

【问题讨论】:

  • 如果是您的完整下载代码。您应该在获得数据后将数据写入文件。因为不知道它是否是完整的代码,所以我可以做的是添加评论:)

标签: python-3.x download xmlhttprequest python-requests


【解决方案1】:

您需要将数据写入文件。

url = "http://www.xxxx.com/xxx/xxxx/sample.doc"
import requests
with requests.Session() as se:
    req = se.get(url)
    with open(url.split("/")[-1],"wb") as doc:
        doc.write(req.content)

【讨论】:

  • 感谢您的回复。如果下载文件实际上是一个 zip 文件怎么办?在浏览器中,我必须输入第一个 url 来自动登录,输入第二个 url 来自动下载文件。我可以用你上面提到的方法吗?
  • 当然可以。如果要解压 zip 文件,请使用 ziplib@WILLIAM
猜你喜欢
  • 1970-01-01
  • 2010-11-06
  • 2020-11-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-01
相关资源
最近更新 更多