$acciones = "ES0148396007","ES0105066007","ES0130960018","ES0130670112","ES0118900010","ES0171996087","ES0177542018","ES0144580Y14","ES0169501022","ES0173516115","ES0165386014","ES0178430E18","ES0176252718" $arraylist = New-Object System.Collections.ArrayList foreach($accion in $acciones) { $web = (Invoke-WebRequest ('http://www.bolsamadrid.es/esp/aspx/Empresas/FichaValor.aspx?ISIN='+$accion)) $webhtml = $web.AllElements.where{$_.id -eq "ctl00_Contenido_tblPrecios"}.outerhtml $sinhtml = $webhtml.replace(".","").replace(",",".").replace("",",").replace("",",") -replace "<.*?>" $htmlsin = $sinhtml.trim() $sinespa = $htmlsin.replace(" ","") $Params = @{ MemberType = 'NoteProperty' Name = 'Título' Value = $web.ParsedHtml.title.Replace("Bolsa de Madrid - Ficha de ","") } $concsv = $sinespa | ConvertFrom-Csv $concsv | Add-Member @Params [void]$arraylist.Add($concsv) } $EmailFrom = "[email protected]" $EmailTo = $EmailFrom $Subject = "Cotización" $SMTPServer = "smtp.outlook.com" $SMTPClient = New-Object Net.Mail.SmtpClient($SmtpServer, 587) $SMTPClient.EnableSsl = $true $message = New-Object System.Net.Mail.MailMessage $EmailFrom, $EmailTo $message.Subject = $Subject $message.IsBodyHTML = $true $message.Body = foreach($elemento in $arraylist) { $elemento | Select-Object @{n='Título';e={$_.Título}},@{n='fecha';e={$_.fecha}},@{n='hora';e={$_.hora}},@{n='últ';e={$_.últ}},@{n='Volumen';e={$_.Volumen}} | ConvertTo-Html } $SMTPClient.Credentials = New-Object System.Net.NetworkCredential($EmailFrom, "xxx") $SMTPClient.Send($message)
Enviar por mail el precio, la fecha, la hora y el volumen de varias acciones del IBEX 35 en un momento concreto (PowerShell, Mercados y cotizaciones)
Except where otherwise noted, Jesusninoc by Jesús N. is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.