PowerShell - HTML 解析:从网站获取信息

     2023-02-24     130

关键词:

【中文标题】PowerShell - HTML 解析:从网站获取信息【英文标题】:PowerShell - HTML parsing: get information from a website 【发布时间】:2012-02-21 15:20:30 【问题描述】:

更新,脚本正在使用 PowerShell V3.0,谢谢@Doug

我想使用以下 PowerShell 脚本从 Lufthansa 获取航班状态信息。 我可以在浏览器中查看航班状态信息,但我没有找到任何方法可以使用我的脚本访问此信息。

我想从网站获取以下信息:

航班状态 时间(出发、到达) 机场(出发、到达) 航班号(仅限汉莎航空)

脚本:

$flight = " LH3396"
$url = "http://bing.com?q=flight status for $flight"
$result = Invoke-WebRequest $url
$elements = $result.AllElements | Where Class -eq "ans" | Select -First 1 -ExpandProperty innerText 

#[string[]]$resultArray

$resultArray = @()

foreach($element in $elements.Split("`n"))
    if($element.Length -gt "2")
    $resultArray += $element

【问题讨论】:

【参考方案1】:

您可以使用Html Agility Pack。

这是一篇关于在 PowerShell 中使用它的文章:HTML Agility Pack Rocks Your Screen Scraping World

【讨论】:

谢谢!我现在被困在 PowerShell v2 上。【参考方案2】:

这是一种在 PowerShell v3 中查询 Bing 的方法

function Get-FlightStatus 
    param($query)

    $url = "http://bing.com?q=flight status for $query"

    $result = Invoke-WebRequest $url

    $result.AllElements | 
        Where Class -eq "ans" |
        Select -First 1 -ExpandProperty innerText    

Get-FlightStatus LH3102

Flight status for Lufthansa 3102

To depart · Jan 30, 2012

From: Hamburg (HAM) 05:35 PM terminal 2

To: Vienna (VIE) 07:05 PM


Bing Travel   Source: www.flightstats.com, 1 minute ago

【讨论】:

有没有简单的方法将输出转换为数组? 尝试 Get-FlightStatus LH3102 -split "rn" 以防万一:如果您只是在比利时使用 bing.com,它会将 url 更改为 be.bing.com 并且航班状态将不起作用(因为 bing 仍处于测试阶段在比利时)。要解决此问题,只需将 ?cc=us 添加到 url:“bing.com?cc=us&q=flight status for $query” 能否请您更新脚本,以便我可以使用并从中学习,谢谢。

powershell此递归powershell脚本从sharepoint中删除网站及其所有子网站。这消除了无法进行del的问题(代码片段)

查看详情

使用 powershell 从 URL 获取元素

】使用powershell从URL获取元素【英文标题】:GetElementsfromaURLwithpowershell【发布时间】:2021-12-2204:31:42【问题描述】:我正在尝试获取每个对象的所有链接,以便记录哪些项目是新的,哪些是旧的我不明白如何从购物网站抓取链接..... 查看详情

使用 Powershell 解析从 Web 请求返回的 JSON 字节流而不写入文件

】使用Powershell解析从Web请求返回的JSON字节流而不写入文件【英文标题】:ParsingaJSONByteStreamReturnedfromaWebRequestusingPowershellwithoutwritingtoafile【发布时间】:2022-01-1209:59:40【问题描述】:我正在使用以下Powershell调用返回JSON文件的URL... 查看详情

powershellparameterset解析

  自定义PowerShell函数,在设置参数的时候中,可以将参数设置为某些情况下可选,某些条件下又设置为必选。  示例代码从网站复制的。1functionConnect-Somewhere2{3[CmdletBinding(DefaultParameterSetName=‘A‘)]4param5(6[Parameter(ParameterSetName... 查看详情

使用 Powershell 获取网站权限

】使用Powershell获取网站权限【英文标题】:GetWebsitePermissionwithPowershell【发布时间】:2018-06-0613:58:49【问题描述】:我试图弄清楚如何使用Powershell获取众所周知的网站权限列表。我尝试了几种方法。在我看来,最好的解决方案是... 查看详情

爬虫-----html解析

对HTML的解析:  在解析复杂的HTML的页面时,需要避免一些问题,好让爬虫工作变得得心应手。    ?寻找“打印此页”的链接,或者看看网站有没有HTML样式更友好的移动版(把自己的请求头设置成处于移动设备的状态,然... 查看详情

如何从 Windows Powershell 构建运行 vNext 应用程序?

】如何从WindowsPowershell构建运行vNext应用程序?【英文标题】:Howtobuild-runvNextapplicationfromWindowsPowershell?【发布时间】:2014-08-2220:29:43【问题描述】:我正在尝试从WindowsPowerShell在.NETvNext中构建控制台应用程序。到目前为止,我已... 查看详情

从 .NET Core 运行 PowerShell

】从.NETCore运行PowerShell【英文标题】:RunningPowerShellfrom.NETCore【发布时间】:2017-01-0116:29:29【问题描述】:有没有办法从.net-core运行PowerShell脚本?我正在尝试在新的.net核心“网站\\api”中运行PowerShell脚本。据我所知,为了在.net... 查看详情

如何使用 powershell “解析” Azure 资源 ID 对象

】如何使用powershell“解析”Azure资源ID对象【英文标题】:Howto"parse"Azureresourceidobjectwithpowershell【发布时间】:2021-06-0314:59:04【问题描述】:我目前正在尝试从Azure策略中提取数据以实现一些自动化:(Get-AzPolicyState-Filter"Com... 查看详情

从远程网站解析 xml 数据

】从远程网站解析xml数据【英文标题】:Parsingxmldatafromaremotewebsite【发布时间】:2012-07-3111:03:05【问题描述】:我想解析来自远程网站http://services.faa.gov/airport/status/IAD?format=xml的xml数据...但我无法解析xml数据,我只会收到错误消... 查看详情

ios开发问题:已经获得了json字符串,怎么解析并显示到tableview上

...ion),但是为了兼容以前的ios版本,可以使用第三方库来解析Json。本文将介绍TouchJson、SBJson、JSONKit和iOS5所支持的原生的json方法,解析国家气象局API,TouchJson和SBJson需要下载他们的库TouchJson包下载:http://download.csdn.net/detail/enuola... 查看详情

在 Swift 中从 WKWebview 获取 HTML

...713:14:54【问题描述】:我使用WKWebView登录网站,现在我想解析网站的html。如何快速访问网站html?我知道它对UIWebView是如何工作的,但对WKWebView却不是。感谢您的帮助!【问题讨论】:【参考方案1】:在询问令牌形式DROPBOX新APIS... 查看详情

如何从批处理文件执行 PowerShell 命令?

】如何从批处理文件执行PowerShell命令?【英文标题】:HowtoexecutePowerShellcommandsfromabatchfile?【发布时间】:2011-08-2714:04:12【问题描述】:我有一个PowerShell脚本来将网站添加到InternetExplorer中的受信任站点:set-location"HKCU:\\Software\\Mic... 查看详情

解析 html 并遵循 javascript 链接

】解析html并遵循javascript链接【英文标题】:parsinghtmlandfollowingajavascriptlink【发布时间】:2011-12-1314:30:43【问题描述】:一位学术同事要求我从一个网站中提取信息,我需要在该网站上链接一个表格中的网页内容——对于只能访... 查看详情

用 JAVA 解析网站 HTML [重复]

】用JAVA解析网站HTML[重复]【英文标题】:ParseWebSiteHTMLwithJAVA[duplicate]【发布时间】:2012-02-2216:50:05【问题描述】:我想解析一个简单的网站并从该网站上抓取信息。我以前用DocumentBuilderFactory解析XML文件,我尝试对html文件做同样... 查看详情

网站html代码解析

1、什么是HTML文件?HTML中文叫做“超文本标记语言”,一个HTML文件不仅包含文本内容,还包含一些标记,一个HTML文件的后缀名是.htm或者是.html。用文本编辑器(Dreamweaver)就可以编写HTML文件。2、html文件的基本结构:(成对出... 查看详情

如何使用 PowerShell 在 IIS 中停止和启动各个网站?

】如何使用PowerShell在IIS中停止和启动各个网站?【英文标题】:HowcanIstopandstartindividualwebsitesinIISusingPowerShell?【发布时间】:2010-04-2522:06:24【问题描述】:我在我的Windows7开发机器上的IIS7中配置了多个站点,以在同一个端口上运... 查看详情

从 Joomla K2 网站解析 JSON

】从JoomlaK2网站解析JSON【英文标题】:ParseJSONfromJoomlaK2website【发布时间】:2012-07-1805:49:58【问题描述】:我正在尝试从我的k2驱动的Joomla网站获取JSON。据我了解,我需要将index.php?option=com_k2&id=1&lang=mk&task=category... 查看详情