$webClient = new-object System.Net.WebClient
$webClient.Headers.Add("user-agent", "PowerShell Script")
$keyword = read-host "Keyword:"
$info = get-content c:\users\dell\desktop\urls.txt
foreach ($i in $info) {
$output = ""
$output = $webClient.DownloadString($i)
if ($output -like "*$keyword*") {
$b = Get-Date
$ButtonType = [System.Windows.MessageBoxButton]::Ok
$MessageboxTitle = “Open Source Information Collection”
$Messageboxbody = "Detected the keyword $keyword at $b"
$MessageIcon = [System.Windows.MessageBoxImage]::Asterisk
[System.Windows.MessageBox]::Show($Messageboxbody,$MessageboxTitle,$ButtonType,$messageicon)
}
}
代码确实从urls.txt文件中列出的各个网站获取内容,并搜索特定的关键字。
如果找到关键字,则通知用户。
但是,我缺少的是该程序不仅要通知用户已找到与内容匹配的关键字,而且要说出与关键字匹配的内容来自哪个网站。
有想法吗?
我认为您要查找的URL位于$ i中。
[System.Windows.MessageBox]::Show($Messageboxbody,$MessageboxTitle,$ButtonType,$messageicon,$i)
从您的代码中,您将从$ info中分配$ i,因此$ i应该是用于检查关键字的单个URL。
在没有运行代码并没有看到格式的情况下,您可能需要在$ messageboxbody中添加$ i。例如
$Messageboxbody = "Detected the keyword $keyword at $b from URL $i"
希望这可以帮助。
谢谢,蒂姆。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句