Forum Discussion
lucadelicio
2 years agoImpactful Individual
Extract data from different html page with same structure
Hi everyone, i need to extract data from n html page that have the same structure. To do this from one html page i use this code and everything is ok. HERE THE PBIX FILE: https://we.tl/t-716...
lbendlin
2 years agoSuper User
Your last URL is invalid.
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45W8nQ1MHDyNnUKDLEwUNJRyigpKSi20tcvLy/XS8ovKk7MLEnMyUzMS9TLLNEHC+inlqTpFydnpKYk6iNr1ssoyc2xz0nMS7fNLFGK1YEa7eIS5GZuQKbRUM1YjA4xMDAwNTExtLAwJs7o/KSknMz0xKrM/LxM/dx8oHBJAdwuJNPQ7IoFAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [ISIN = _t, #"URL Html Page" = _t]),
Fetch = (url)=>
let
Source = Web.BrowserContents(url),
#"Extracted Table From Html" = Html.Table(Source, {{"Column1", ".-outside-rl STRONG"}, {"Column2", ".-pb TD + *"}}, [RowSelector=".-pb TR"]),
#"Changed Type" = Table.TransformColumnTypes(#"Extracted Table From Html",{{"Column1", type text}, {"Column2", type text}}),
#"Pivoted Column" = Table.Pivot(#"Changed Type", List.Distinct(#"Changed Type"[Column1]), "Column1", "Column2")
in
#"Pivoted Column",
#"Added Custom" = Table.AddColumn(Source, "Custom", each Fetch([URL Html Page])),
#"Expanded Custom" = Table.ExpandTableColumn(#"Added Custom", "Custom", {"Apertura", "Max oggi", "Min oggi", "Prezzo asta di chiusura", "Numero Contratti", "Controvalore", "Volume totale", "Prezzo di riferimento", "Max Anno", "Min Anno", "Performance 1 mese", "Performance 6 mesi", "Performance da inizio anno", "Performance 1 anno", "Tipo strumento", "Classe", "Codice Alfanumerico", "Codice Isin", "Lotto Minimo", "Commissioni totali annue", "Valuta di Denominazione", "Emittente", "Segmento", "Benchmark", "Stile Benchmark", "Area Benchmark", "Dividendi", "SFDR", "iNAV - Bloomberg Ticker"}, {"Apertura", "Max oggi", "Min oggi", "Prezzo asta di chiusura", "Numero Contratti", "Controvalore", "Volume totale", "Prezzo di riferimento", "Max Anno", "Min Anno", "Performance 1 mese", "Performance 6 mesi", "Performance da inizio anno", "Performance 1 anno", "Tipo strumento", "Classe", "Codice Alfanumerico", "Codice Isin", "Lotto Minimo", "Commissioni totali annue", "Valuta di Denominazione", "Emittente", "Segmento", "Benchmark", "Stile Benchmark", "Area Benchmark", "Dividendi", "SFDR", "iNAV - Bloomberg Ticker"})
in
#"Expanded Custom"