Forum Discussion

gooranga1's avatar
gooranga1
Power Participant
5 years ago
Solved

Using Web connection to get a simple HTML table is very slow

I thought it would be handy and quick to grab some simple data from the web. There is an html table with about 30,000 phone devices supported on google play and I wanted to get that into power bi. It works  but each refresh or step I add takes about 40 minutes. Is this usual or is there something I can switch in power bi to speed it up? Below is the M script I am trying to use.

let
    Source = Web.BrowserContents("https://storage.googleapis.com/play_public/supported_devices.html"),
    #"Extracted Table From Html" = Html.Table(Source, {{"Column1", "TABLE.nice-table > * > TR > :nth-child(1)"}, {"Column2", "TABLE.nice-table > * > TR > :nth-child(2)"}, {"Column3", "TABLE.nice-table > * > TR > :nth-child(3)"}, {"Column4", "TABLE.nice-table > * > TR > :nth-child(4)"}}, [RowSelector="TABLE.nice-table > * > TR"]),
    #"Promoted Headers" = Table.PromoteHeaders(#"Extracted Table From Html", [PromoteAllScalars=true])
in
    #"Promoted Headers"

  

  • Anonymous's avatar
    Anonymous
    5 years ago

    Hi gooranga1,

    It seems like you are trying to get data from the whole web page with html elements.
    When you use html table to get data, it means these requests need to waiting for contents loading then get data from these elements and use M query functions to process and extract corresponding records.

    I think refresh times are spent on data loading and processing. (waiting for underlying rest api processing and load data to web page, get html elements, process on the response html contents)

    In my opinion, I'd like to suggest you contact google support to find out the root rest api and direct get data from these api and processing on these data. It should more quickly than waiting for web page data loading and processing.

    Google Play Developer API 

    Pull data from a REST API Authentication 
    Regards,

    Xiaoxin Sheng

1 Reply

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi gooranga1,

    It seems like you are trying to get data from the whole web page with html elements.
    When you use html table to get data, it means these requests need to waiting for contents loading then get data from these elements and use M query functions to process and extract corresponding records.

    I think refresh times are spent on data loading and processing. (waiting for underlying rest api processing and load data to web page, get html elements, process on the response html contents)

    In my opinion, I'd like to suggest you contact google support to find out the root rest api and direct get data from these api and processing on these data. It should more quickly than waiting for web page data loading and processing.

    Google Play Developer API 

    Pull data from a REST API Authentication 
    Regards,

    Xiaoxin Sheng