PowerShell处理RSS信息

简介: 转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ 环境:Windows Server 2012 EN(解决PowerShell控制台中文乱码问题:方法) 通过PowerShell处理RSS信息,直接通过Invoke-Webrequest命令获取到的内容中文乱码,原因是没有指定Encoding模式,而Invoke-Webrequest命令目前并不支持指定Encoding,所以只能把获取到的网页($url)内容保存到本地($filePath),然后从本地进行读取(根据不同方式可以选择性指定Encoding)。

转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/

环境:Windows Server 2012 EN(解决PowerShell控制台中文乱码问题:方法

通过PowerShell处理RSS信息,直接通过Invoke-Webrequest命令获取到的内容中文乱码,原因是没有指定Encoding模式,而Invoke-Webrequest命令目前并不支持指定Encoding,所以只能把获取到的网页($url)内容保存到本地($filePath),然后从本地进行读取(根据不同方式可以选择性指定Encoding)。拿博客园的RSS页面为例,获取页面中最新博客的标题("title")。代码如下:

$url = "http://feed.cnblogs.com/blog/u/212109/rss"
$filePath = "C:\Users\pkmacct\Desktop\test.txt"
$nodeName = "title"
Invoke-WebRequest -Uri $url -OutFile $filePath
$xmlDoc = New-Object "System.Xml.XmlDocument"  
$xmlDoc.Load($filePath)  
$xmlDoc.GetElementsByTagName($nodeName)|select '#text'

调用脚本运行结果如下:

相关文章
|
数据安全/隐私保护 异构计算 Windows
【Azure 环境】 介绍两种常规的方法来监视Window系统的CPU高时的进程信息: Performance Monitor 和 Powershell Get-Counter
【Azure 环境】 介绍两种常规的方法来监视Window系统的CPU高时的进程信息: Performance Monitor 和 Powershell Get-Counter
243 0
|
存储 JSON 运维
【运维】Powershell 服务器系统管理信息总结(进程、线程、磁盘、内存、网络、CPU、持续运行时间、系统账户、日志事件)
【运维】Powershell 服务器系统管理信息总结(进程、线程、磁盘、内存、网络、CPU、持续运行时间、系统账户、日志事件)
540 0
|
存储 JSON 运维
【运维】Powershell 服务器系统管理信息总结
Powershell 服务器系统管理信息总结(进程、线程、磁盘、内存、网络、CPU、持续运行时间、系统账户、日志事件)
261 0
|
jenkins 持续交付 Windows
Jenkins基础--Windows批处理,PowerShell获取指定的Credentials账户信息
Jenkins中Windows批处理,PowerShell获取指定的Credentials账户信息
5175 0
|
网络协议 网络虚拟化