我需要使用powershell自动下载每月广播(将设置预定任务)。
每个月更改的唯一内容是201602,201603等。一旦我能够拉出720p视频文件,我将根据当前系统时钟以编程方式添加该部分URL(我可以管理这个)
我试过这些没有成功:
尝试1:
$source = "https://www.jw.org/download/?fileformat=MP4&output=html&pub=jwb&issue=201601&option=TRGCHlZRQVNYVrXF&txtCMSLang=E"
$destination = "c:\broadcasts\test.mp4"
Invoke-WebRequest $source -OutFile $destination
尝试2:
$source = "https://www.jw.org/download/?fileformat=MP4&output=html&pub=jwb&issue=201601&option=TRGCHlZRQVNYVrXF&txtCMSLang=E"
$dest = "c:\broadcasts\test.mp4"
$wc = New-Object System.Net.WebClient
$wc.DownloadFile($source, $dest)
尝试3:
Import-Module BitsTransfer
$url = "https://www.jw.org/download/?fileformat=MP4&output=html&pub=jwb&issue=201601&option=TRGCHlZRQVNYVrXF&txtCMSLang=E"
$output = "c:\broadcasts\test.mp4"
Start-BitsTransfer -Source $url -Destination $output
这两个最终都得到了一个test.mp4,它基本上只是一个空文件。
然后我找到了另一个包含视频的页面(以及不同质量的下载链接),并尝试使用以下内容提取这些链接(我知道我可以使用$ webpage.links):
尝试4:
$webpage=Invoke-webrequest "http://tv.jw.org/#en/video/VODStudio/pub-
jwb_201601_1_VIDEO"
$webpage.RawContent | Out-File "c:\scripts\webpage.txt" ASCII -Width 9999
发现原始内容没有mp4可见。我的想法是提取原始内容,用正则表达式解析它并获取720p URL,将其保存在变量中,然后将其发送到BitsTransfer位代码。
请帮帮忙?