使用DOM从网站获取HTML

使用DOM从网站获取HTML,第1张

概述我正在尝试在power shell中编写一个脚本,我可以使用该脚本在运行查询后从网站获取 HTML. 在我自己的机器上,我可以运行下面的工作,没有任何问题,但当我尝试在Server 2008机器上运行它没有得到Document.Body.InnerHTML命令的输出,所有Document.GetElementById部分工作没有问题. $ie = New-Object -com InternetE 我正在尝试在power shell中编写一个脚本,我可以使用该脚本在运行查询后从网站获取 HTML.

在我自己的机器上,我可以运行下面的工作,没有任何问题,但当我尝试在Server 2008机器上运行它没有得到document.Body.INNERHTML命令的输出,所有document.GetElementByID部分工作没有问题.

$IE = New-Object -com InternetExplorer.Application    $IE.silent = $true    $IE.navigate2("http://www.mxtoolBox.com/")    while($IE.busy) {start-sleep 1}    $IE.document.getElementByID("ctl00_ContentPlaceHolder1_txtToolinput").Value = "mx:domain.co.uk"    $IE.document.getElementByID("ctl00_ContentPlaceHolder1_btnAction").Click()    Start-Sleep -Seconds 10    $IE.document.body.INNERHTML | Out-file "C:\NETESP\MXRecords\MXRecordsHTML.txt" -EnCoding ASCII    $IE.Quit()

我需要在服务器2008机箱上安装一些东西,以使其返回值吗?

提前致谢

解决方法 可能是时间问题?我无法在2008年测试,但尝试一下:

$IE = New-Object -com InternetExplorer.Application$IE.silent = $false$IE.navigate2("http://www.mxtoolBox.com/")while($IE.busy) {start-sleep 1}$IE.document.getElementByID("ctl00_ContentPlaceHolder1_txtToolinput").Value = "mx:domain.co.uk"$IE.document.getElementByID("ctl00_ContentPlaceHolder1_btnAction").Click()# wait for the result page While($IE.LocationURL -eq 'http://www.mxtoolBox.com/') {    Write-Warning "Waiting for result"    Start-sleep 1}# grab the table HTML$table = $IE.document.getElementsByTagname('table') | Where-Object {$_.classname -eq 'table table-striped table-bordered table-condensed tool-result-table'}$table.outerHTML | Out-file "C:\NETESP\MXRecords\MXRecordsHTML.txt" -EnCoding ASCII$IE.Quit()
总结

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

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

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

原文地址:https://54852.com/web/1060029.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存