Skip to content

Instantly share code, notes, and snippets.

@Kyeongrok
Created November 24, 2017 14:48
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Kyeongrok/e964758e5249a0a271821feaf0c4c5f8 to your computer and use it in GitHub Desktop.
Save Kyeongrok/e964758e5249a0a271821feaf0c4c5f8 to your computer and use it in GitHub Desktop.
function myFunction() {
  // 1. 새로 만든 구글 스프레드시트의 인터넷 주소(URL)를 지정
  var url = "https://docs.google.com/spreadsheets/d/1aRz9Jp5-LH-ocqPz03CgagYFns-rOE9MLp_-fHfBHTE/edit#gid=1721336146";
  var spredSheet = SpreadsheetApp.openByUrl(url);
  
  // 2. 날짜 생성하기
  var d = new Date();
  var targetName = Utilities.formatDate( d, 'GMT', 'yyyyMMdd');
  
  // 3. 원본/대상 시트 준비
  var baseSheet = spredSheet.getSheetByName("base");
  var targetSheet = createSheet(spredSheet, targetName, 0);

  var statement = '=IMPORTXML("http://www.r114.com/z/real/m_detail.asp?only=0&m_=5&g_=&type_m=m&addr1=%BC%AD%BF%EF%C6%AF%BA%B0%BD%C3&addr2=%B0%AD%B3%B2%B1%B8&addr3=%BF%AA%BB%EF%B5%BF&type_g=A&type_cd=03%5E05%5E&mpl=15000&mph=16000&SF_PKVal=6&SF_Size=0&sort=desc&order=%B8%C5%B8%C5%B0%A1&rNumber=5791&lst=ml&mkind=30&aptcode=G01011350800030&mulcode=30BB0F25607876&housingtype=77.77&areasize=00023&sizetype=D","//*[@id=\'wrap\']/div[5]/div[3]/div[1]/div[2]/div[3]/dl[1]/dd/span")';
  // 4. ImportFeed 함수 다시 실행
  baseSheet.getRange('a1:e1').setValue("");
  
  baseSheet.getRange(1,1).setFormula(statement);
  baseSheet.getRange(1,1).copyTo(baseSheet.getRange('A2'), {contentsOnly: true});
  baseSheet.getRange(1,1).setValue("가격");
  
  // 5. 받아온 값을 시트에 출력
  // 복사 대상 범위 설정(A1:B21)
  var rangeToCopy = baseSheet.getRange('a1:d10');
  
  // 복사 시작 셀 지정(A1)
  var targetToCopy = targetSheet.getRange('A1');
  rangeToCopy.copyTo(targetToCopy);
}

function createSheet(spredSheet, sheetName, index) {
  var sheet = spredSheet.getSheetByName(sheetName);
  if (sheet == null) {
    spredSheet.insertSheet(sheetName, index);
    sheet = spredSheet.getSheetByName(sheetName);
  }
return sheet;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment