使用PowerShell从HTML网站获取图像链接

使用PowerShell从HTML网站获取图像链接,第1张

概述我想批量下载一些图片库.这些图像是免费提供的,无需任何权限.我为我的生活无法让它发挥作用.这就是我到目前为止所拥有的. $pattern吐出的是整个HTML行,而不仅仅是图像链接.你有什么指示可以给我吗?循环设置为仅运行一次以进行测试.循环将遍历所有以数字方式组织的页面. # Variables$i=1 # Webpage Counter$j=1 # Image C 我想批量下载一些图片库.这些图像是免费提供的,无需任何权限.我为我的生活无法让它发挥作用.这就是我到目前为止所拥有的. $pattern吐出的是整个HTML行,而不仅仅是图像链接.你有什么指示可以给我吗?循环设置为仅运行一次以进行测试.循环将遍历所有以数字方式组织的页面.
# Variables$i=1        # Webpage Counter$j=1        # Image Counter$rootDir = "http://website.com/sport/gallerIEs/"$saveDir = "C:\Users\user\Desktop\"$webpagetxt = "C:\Users\user\Desktop\page.txt"$links = "C:\Users\user\Desktop\links.txt"$regex = "http://website.com/gallerIEs/[0-9]*/[^\.]*.JPG"# Create folder to download to#New-Item -name SIoUxSportsgallerIEs -ItemType directory# Start Web ClIEnt$clIEnt = New-Object System.Net.WebClIEnt# Main loop to get image links and download    For($i=10; $i -le 10; $i++){        # Download source code of the web page.        $url = $rootDir+$i+'.htm'        $webclIEnt = new-object System.Net.WebClIEnt        $webpage = $webclIEnt.DownloadString($url)        $webpage > "$webpagetxt"    # Parse web page and find image link.       $pattern = Get-Content $webpagetxt | Select-String -pattern $regex -Allmatches       echo "This is the link" $pattern    #$pattern > $links }
解决方法 您需要提取匹配的值. Select-String返回对象,当你回显它时,发生的是$pattern.ToString(). ToString()返回行,而不是匹配值.这将仅返回所有链接:
Get-Content $webpagetxt | Select-String -pattern $regex -Allmatches | % { $_.Matches | % { $_.Value } }

顺便说一句,你可以简单地在换行符上拆分字符串来获取一个数组(如果这是你保存它的唯一原因),而不是保存网页并用get-content重新打开它. 总结

以上是内存溢出为你收集整理的使用PowerShell从HTML网站获取图像链接全部内容,希望文章能够帮你解决使用PowerShell从HTML网站获取图像链接所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1109035.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存