Board logo

标题: [问题求助] PowerShell下载文件和从浏览器下载的文件不一致 [打印本页]

作者: 小白龙    时间: 2024-8-25 17:51     标题: PowerShell下载文件和从浏览器下载的文件不一致

用下面的代码下载的文件和直接在浏览器地址栏中输入下载链接后回车下载的文件不一样, 原文件308M , 但是用下面的代码下载只有20多K
  1. cls
  2. # 设置目标文件路径
  3. $desktopPath = [Environment]::GetFolderPath('Desktop')
  4. $destinationFile = Join-Path -Path $desktopPath -ChildPath "aaa.exe"
  5. # 设置下载链接
  6. $url = "http://storage.live.com/items/A93A8C276E440EC0!590:/wps2019.exe"
  7. # 使用 .NET 的 WebClient 类下载文件
  8. [System.Net.WebClient]::new().DownloadFile($url, $destinationFile)
复制代码

作者: jyswjjgdwtdtj    时间: 2024-8-26 00:16

本帖最后由 jyswjjgdwtdtj 于 2024-8-26 00:17 编辑

可能需要配置header或cookie之类的
网站拥有者不希望出现被爬虫爬 直接用ps下载得到的可能是一堆乱码或骂人的话

图方便可以用ie下载
作者: 小白龙    时间: 2024-8-26 08:24

回复 2# jyswjjgdwtdtj


    感谢指点, 问了很多ai, 现在还是无解, 请求路过大佬继续支招
作者: went    时间: 2024-8-26 12:49

源网页是什么?来源网页
作者: went    时间: 2024-8-26 12:49

源网页是什么?来源网页
作者: jyswjjgdwtdtj    时间: 2024-8-26 14:36

本帖最后由 jyswjjgdwtdtj 于 2024-8-26 15:12 编辑

回复 1# 小白龙


    看了一下你的网页 这是微软的网盘? 很明显这是要登陆的!直接下载会加载回来一个登陆界面的html网页
所以并不是ps或者某个组件的问题
你可以试试用ie登录,保持ie开着 然后用msxml.xmlhttp下载 两者的缓存似乎是共通的
作者: 小白龙    时间: 2024-8-26 15:16

回复 5# went


   上面的链接是通过下面的工具生成的直链, 它可以得到分享的onedrive网盘的文件的直链
https://mapaler.github.io/GetOneDriveDirectLink/
作者: 小白龙    时间: 2024-8-26 15:17

回复 6# jyswjjgdwtdtj


    不用登陆啊, 你直接把那个链接在浏览器的地址里粘贴, 然后回车就直接可以下载了
作者: 小白龙    时间: 2024-8-26 15:24

回复 6# jyswjjgdwtdtj


   感谢提醒, 刚换了台电脑尝试, 发现问题了,  这个直链必须得在浏览器上先登陆onedrive网盘才行, 以前不用的




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2