What tasks have you struggled to automate in PowerShell?

%3CLINGO-SUB%20id%3D%22lingo-sub-1701853%22%20slang%3D%22en-US%22%3EWhat%20tasks%20have%20you%20struggled%20to%20automate%20in%20PowerShell%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1701853%22%20slang%3D%22en-US%22%3E%3CP%3Eis%20there%20a%20task%20or%20problem%20that%20you%20cannot%20solve%20in%20PowerShell%3F%3CBR%20%2F%3E%3CBR%20%2F%3EPost%20it%20here%20and%20let%20community%20members%20offer%20solutions.%26nbsp%3B%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-LABS%20id%3D%22lingo-labs-1701853%22%20slang%3D%22en-US%22%3E%3CLINGO-LABEL%3EPowerShell%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1702136%22%20slang%3D%22en-US%22%3ERE%3A%20What%20tasks%20have%20you%20struggled%20to%20automate%20in%20PowerShell%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1702136%22%20slang%3D%22en-US%22%3EAnything%20advanced%20involving%20Microsofts%20own%20PowerShell%20modules%20for%20cloud%20management.%20They%20(modules)%20are%20so%20incosistant%20and%20overlapping%20that%20it's%20often%20hard%20to%20know%20what%20module%20to%20use%20for%20more%20advanced%20scenarios%2C%20and%20whether%20the%20time%20spent%20finding%20shortcomings%20should%20be%20used%20on%20just%20writing%20a%20module%20yourself%20instead%20utilizing%20REST%20APIs%20(Microsoft%20Graph%20for%20instance).%20For%20instance%3A%20Risky%20sign-ins%20and%20sing-ins.%20There%20are%20no%20existing%20modules%20that%20work%20well%20for%20pulling%20down%20last%2030%20days%20of%20risky%20sign%20ins%20or%20sign%20ins%20for%20large%20tenants.%20I'm%20speaking%2050%20000%2B%2B%20events%20a%20day.%20MsOnline%2C%20AzureAD%2C%20AzureADPreview%2C%20Microsoft.Graph%20they%20all%20struggle%20hard%20with%20this%20seemingly%20easy%20task.%20Although%20Microsoft%20say%20a%20lot%20of%20modules%20are%20deprecated%2C%20they%20still%20are%20the%20go%20to%20for%20various%20tasks%2C%20this%20is%20very%20confusing.%20MsOnline%20still%20has%20its'%20advantages%20over%20AzureAD.%20And%20new%20incomplete%20modules%20keep%20popping%20up%2C%20Microsoft.Graph%2C%20ExchangeOnlineManagement%2C%20AzureAD%20(still%20not%20equally%20on%20features%20vs.%20MsOnline).%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1702527%22%20slang%3D%22en-US%22%3ERE%3A%20What%20tasks%20have%20you%20struggled%20to%20automate%20in%20PowerShell%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1702527%22%20slang%3D%22en-US%22%3E%3CP%3E%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F176916%22%20target%3D%22_blank%22%3E%40Olav%20R%C3%B8nnestad%20Birkeland%3C%2FA%3E%26nbsp%3B%3CBR%20%2F%3E%3CBR%20%2F%3EThe%20Azure%20PowerShell%20stuff%20definitely%20leaves%20room%20for%20improvement.%20I%20share%20your%20frustrations.%20I%20know%20the%20internal%20teams%20are%20working%20making%20better%20modules.%20This%20is%20an%20excellent%20question%20for%20the%20table%20talk%20today.%26nbsp%3B%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-1705010%22%20slang%3D%22en-US%22%3ERE%3A%20What%20tasks%20have%20you%20struggled%20to%20automate%20in%20PowerShell%3F%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1705010%22%20slang%3D%22en-US%22%3EWeb%20scraping%20is%20challenging%20in%20PowerShell.%3C%2FLINGO-BODY%3E
Occasional Contributor

is there a task or problem that you cannot solve in PowerShell?

Post it here and let community members offer solutions. 

7 Replies
Anything advanced involving Microsofts own PowerShell modules for cloud management. They (modules) are so incosistant and overlapping that it's often hard to know what module to use for more advanced scenarios, and whether the time spent finding shortcomings should be used on just writing a module yourself instead utilizing REST APIs (Microsoft Graph for instance). For instance: Risky sign-ins and sing-ins. There are no existing modules that work well for pulling down last 30 days of risky sign ins or sign ins for large tenants. I'm speaking 50 000++ events a day. MsOnline, AzureAD, AzureADPreview, Microsoft.Graph they all struggle hard with this seemingly easy task. Although Microsoft say a lot of modules are deprecated, they still are the go to for various tasks, this is very confusing. MsOnline still has its' advantages over AzureAD. And new incomplete modules keep popping up, Microsoft.Graph, ExchangeOnlineManagement, AzureAD (still not equally on features vs. MsOnline).

@Olav Rønnestad Birkeland 

The Azure PowerShell stuff definitely leaves room for improvement. I share your frustrations. I know the internal teams are working making better modules. This is an excellent question for the table talk today. 

Web scraping is challenging in PowerShell.

@franklesniak, isn't web scrapping challenging regardless of the tool? :lol:

@thedavecarroll most definitely! "Challenging" was probably not the right adjective - I was being nice.

 

To scrape in PowerShell somewhat-natively, I believe it is easiest to use the Internet Explorer DOM, which makes me die a little inside. It's also not a cross-platform way to do it.

 

I'm not a Python expert, but this is an area where Python seems to really outshine PowerShell.

@franklesniak, have you tried the PowerHTML module by Justin Grote?

@thedavecarroll I hadn't, thanks for the pointer! I'm familiar with the HTML Agility Pack but put investigating it on the backburner because I didn't have the time to figure out how to use it with PowerShell. This module should make this much easier.