鱼C论坛

 找回密码
 立即注册
查看: 1570|回复: 6

[已解决]问一下我这种情况下载的文件怎样命名?

[复制链接]
发表于 2021-1-20 16:25:37 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
问一下我这种情况下载的文件怎样命名?
文件名有时是 doc 有时是 ppt 有时是 pdf
文件名不在网址中
浏览器下载的话会自动生成文件名
python怎样也用它自动生成的文件名?
  1. http://www.wdfxw.net/goDownFiles.aspx?key=28541108
复制代码

就像这个下载地址
捕获.PNG
最佳答案
2021-1-20 19:26:47
  1. # coding=utf-8

  2. import urllib
  3. import requests

  4. def download(url, savePath=None):
  5.     res = requests.get(url)
  6.     name = urllib.parse.unquote(res.headers['Content-Disposition'].split('=')[1])
  7.     with open(name, 'wb') as f:
  8.         f.write(res.content)

  9. url = 'http://www.wdfxw.net/goDownFiles.aspx?key=28541108'
  10. download(url)
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-1-20 17:09:11 | 显示全部楼层
不知道webdriver是否满足你
  1. from selenium import webdriver

  2. wd = webdriver.Chrome(r"C:\Users\admin\AppData\Local\Programs\Python\Python38-32\Scripts\chromedriver.exe")

  3. wd.implicitly_wait(60)

  4. wd.maximize_window()


  5. url = 'http://www.wdfxw.net/goDownFiles.aspx?key=28541108'

  6. urllst = [url]

  7. for i in urllst:
  8.     wd.get(url)
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-20 17:44:03 | 显示全部楼层
  1. # coding=utf-8

  2. import urllib
  3. import urllib.request



  4. def download(url, savePath=None):
  5.     res = urllib.request.urlopen(url)
  6.     name = urllib.parse.unquote(res.getheader('Content-Disposition').split('=')[1])
  7.     with open(name, 'wb') as f:
  8.         f.write(res.read())

  9. url = 'http://www.wdfxw.net/goDownFiles.aspx?key=28541108'
  10. download(url)
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-1-20 18:54:25 | 显示全部楼层
本帖最后由 qq1151985918 于 2021-5-17 09:20 编辑


用 requests 模块实现

  1. # coding=utf-8

  2. import requests

  3. def download(url, savePath = None):        
  4.     res = requests.get(url)
  5.     name = requests.utils.unquote(res.headers['Content-Disposition'].split('=')[1])
  6.     with open(name, 'wb') as f:
  7.         f.write(res.content)

  8. url = 'http://www.wdfxw.net/goDownFiles.aspx?key=28541108'
  9. download(url)
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-20 19:18:25 | 显示全部楼层
qq1151985918 发表于 2021-1-20 18:54
大佬,我刚试过了确实可以,但是我想问下能用 requests 模块实现吗?

这个得你自己测试,我没有使用过requests 模块
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-20 19:21:09 | 显示全部楼层
qq1151985918 发表于 2021-1-20 18:54
大佬,我刚试过了确实可以,但是我想问下能用 requests 模块实现吗?

可以, 我刚刚看了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-20 19:26:47 | 显示全部楼层    本楼为最佳答案   
  1. # coding=utf-8

  2. import urllib
  3. import requests

  4. def download(url, savePath=None):
  5.     res = requests.get(url)
  6.     name = urllib.parse.unquote(res.headers['Content-Disposition'].split('=')[1])
  7.     with open(name, 'wb') as f:
  8.         f.write(res.content)

  9. url = 'http://www.wdfxw.net/goDownFiles.aspx?key=28541108'
  10. download(url)
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-1 17:17

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表