The ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM.
Get registeredEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends September 15. Request your voucher.
Hi everyone, I'm looking to create a report that queries multiple different pages of a website. I'm hoping I'll be able to combine them into a single query, rather than creating new data sources for each one. For example, I've used the code below in the past to query multiple sharepoint libraries:
let
Source = Table.Combine(
{
SharePoint.Tables("https://sharepoint.intranet.name/", [Implementation="2.0", ViewMode="All"]),
SharePoint.Tables("https://sharepoint.intranet.name/", [Implementation="2.0", ViewMode="All"])
}
),
Is there an equivalent I can use to combine multiple web pages into a single query? Here's the query I have for a single page:
let
Source = Web.BrowserContents("website address goes here"),
#"Extracted Table From Html" = Html.Table(Source, {{"Column1", ".table TD + *"}, {"Column2", ".badge"}, {"Column3", ".hidden-sm + .hidden-xs + *"}, {"Column4", ".subject"}, {"Column5", ".hidden-xs .label:nth-child(1)"}, {"Column6", ".hidden-xs .label:nth-child(2)"}, {"Column7", ".hidden-sm:nth-child(3)"}, {"Column8", ".hidden-xs TR"}, {"Column9", ".hidden-sm .label:nth-child(1)"}, {"Column10", ".hidden-sm .label:nth-child(2)"}, {"Column11", ".badge *"}, {"Column12", ".hidden-xs .label:nth-child(3)"}, {"Column13", ".hidden-sm .label:nth-child(3)"}, {"Column14", ".hidden-xs + A *"}}, [RowSelector=".table TD + *"])
in
#"Extracted Table From Html"
Solved! Go to Solution.
Thanks so much for your help @amitchandak , I found the answer here in the end! https://www.youtube.com/watch?v=VkDpwSGWPmk
thanks for this, @amitchandak. I have a related issue - my report has many sources, so I'd like to combine using
Source = #shared,
#"Converted to Table" = Record.ToTable(Source),
Combining the queries using the approach you outline above works, but combining the same queires using the #shared approach results in a blank table in the front end (the table renders as expected in the back end)
back end
front end
I've tried numerous settings, nothing seems to work.
Any advice gratefully received!
If you want to refresh this query you will need to switch to Web.Contents instead of Browsercontents, just FYI
Thanks so much for your help @amitchandak , I found the answer here in the end! https://www.youtube.com/watch?v=VkDpwSGWPmk
@MichaelHutchens , Create mutiple code like
Source1 = <Code>
Source2 = <Code>
I usually get them in different queries and then put code in one place
then you can use append code
combine = Table.Combine(Source1, Source2, Source3)
in
combine
Also, refer
https://datachant.com/2016/06/27/cursor-based-pagination-power-query/
Code merge example
Merge Queries, Why not Merge the code: https://youtu.be/YOFs39RCPfQ
User | Count |
---|---|
65 | |
61 | |
60 | |
53 | |
27 |
User | Count |
---|---|
181 | |
88 | |
70 | |
48 | |
46 |