Google Sheet use Importxml error could not fetch url

10,905
  • You want to retrieve the price like 55,500₽ from the URL of https://tarkov-market.com/item/Pack_of_sugar and put to a cell on Google Spreadsheet.

I could understand like this. If my understanding is correct, how about this answer?

Issue and workaround:

Unfortunately, IMPORTXML cannot be used for this situation. Because IMPORTXML is used like =IMPORTXML("https://tarkov-market.com/item/Pack_of_sugar","//*"), an error like the value cannot be retrieved from the URL occurs. So in this case, as a workaround, I would like to propose to use Google Apps Script as a custom function. When Google Apps Script is used, the value can be retrieved.

Sample script:

Please copy and paste the following script to the container-bound script of the Spreadsheet. And please put =sampleFormula() to a cell. By this, the value can be put to the cell.

function sampleFormula() {
  const url = "https://tarkov-market.com/item/Pack_of_sugar";
  const html = UrlFetchApp.fetch(url).getContentText();
  return html.match(/price:(.+?)<\/title>/)[1].trim();
}
Result:

enter image description here

Note:

  • This script is for your question. So when this script is used for other URL and scenes, an error might occur. Please be careful this.

References:

Share:
10,905
armusk
Author by

armusk

Updated on June 04, 2022

Comments

  • armusk
    armusk almost 2 years

    I want to get price data on this website (https://tarkov-market.com/item/Pack_of_sugar)

    But it doesn't work

    =IMPORTXML("https://tarkov-market.com/item/Pack_of_sugar","//*[@id='__layout']/div/div[1]/div/div[4]/div[1]/div[2]/div[1]/div[2]")