뿌띠뿌
70
2019-02-16 12:50:01
13
1435

이런 어플 만들기 힘들까요?


전 세계의 임대 건물을 모아놓은 어플을 만들고자 하는데요

국내에는 직방이나 다방 같은 어플이 있는데 외국에는 없는것 같아서 만드려고 합니다

그런데 각 나라마다의 임대건물에 대한 정보를 어떻게 구해야 할지 모르겠어요

아시는분 계시나요?

-2
0
  • 댓글 13

  • ....
    2019-02-16 13:01:58 작성 2019-02-16 13:02:35 수정됨

    직방, 다방에 나오는 건물들은 모두 컨텍한 부동산에서 제공해준 건물입니다

    외국 건물도 컨택해야합니다

    에어비앤비와 비슷하겠네요


    앱은 만들 수 있지만

    컨택이 어렵습니다

    0
  • 뿌띠뿌
    70
    2019-02-16 13:11:16

    아하 그렇군요 친절한 답변 감사드립니다!

    궁금한게 더 있는데요 해외의 부동산 사이트에 있는 정보를 빼서 어플에 넣을수도 있나요?

    0
  • ....
    2019-02-16 13:17:55
    정보를 가져오는 것은 합의하에 가능합니다
    합의하에 된 것이 아니면 법적으로 고소 들어올 수 있습니다

    1
  • 뿌띠뿌
    70
    2019-02-16 13:29:43

    그렇군요 꼭 합의를 해야겠네요

    궁금한게 또 생겼는데요

    제가 API 하는 용어를 들었는데 대충 스크래핑이랑 비슷한것 같더라구요

    두개의 차이점이 뭔가요?

    궁금합니다

    0
  • 뿌띠뿌
    70
    2019-02-16 13:48:00

    아하 그렇군요 감사합니다

    그렇다면 혹시 웹사이트에 있는 부동산 정보를 빼다 어플에 넣을때 합의해야하잖아요 그때 합의금 같은것을 줘야 하나요? 준다면 얼마나 줘야하는지 궁금합니다

    0
  • ....
    2019-02-16 14:13:43
    컨택이 앱이 좋다고 되는 것이 아니라
    갑의 위치가 되어야 잘 되는 것도 있습니다
    0
  • jja
    2k
    2019-02-16 19:49:05

    o2o의핵심은 기술이 아니지요...

    0
  • 초무쿤
    2k
    2019-02-17 02:55:03

    jsoup 사용하시면 JSON형태로 제공되는 API가 없어도 HTML 파싱으로 구현 가능합니다.

    문제는 사이트를 찾는게 문제지요.

    되도록이면 문제 안생기게 공개된 기관에서 스크래핑 하는게 좋으실듯 합니다.

    근데 미국부동산이라. ㅎㅎ; 사이트 찾는게 힘드실듯.

    JSON형태의 정형화된 데이타가 없으면 아래처럼 HTML 파싱해서 값 뽑아오는겁니다.

    아래는 구글파이낸스 HTML 화면에서 시세정보 뽑아내는건데....

    // start retrieving
    Document doc = Jsoup.connect("https://finance.google.com/finance/historical")
    		.data("q",indiceId)
    		.data("startdate", sdfyyyyMMdd.format(startDate))
    		.data("enddate", sdfyyyyMMdd.format(endDate))
    		.data("start","0")
    		.data("num","200")
    		.get();
    Elements trs = doc.select("table.historical_price tbody tr");
    if(trs == null || trs.text().length() < 1) {
    	break;
    }
    for(Element tr : trs) {
    	Elements tds = tr.getElementsByTag("td");
    	if(tds != null && !tds.isEmpty()){
    		try {
    			Date baseDate = sdfMMMdyyyy.parse(tds.get(0).text().trim());
    			String openValue = tds.get(1).text().trim().replaceAll(",", "");
    			String closeValue = tds.get(4).text().trim().replaceAll(",", "");
    			String highValue = tds.get(2).text().trim().replaceAll(",", "");
    			String lowValue = tds.get(3).text().trim().replaceAll(",", "");
    			IndiceValue indiceValue = new IndiceValue();
    			indiceValue.setIndiceId(indiceId);
    			indiceValue.setBaseDate(baseDate);
    			indiceValue.setOpenValue(new BigDecimal(openValue));
    			indiceValue.setCloseValue(new BigDecimal(closeValue));
    			indiceValue.setHighValue(new BigDecimal(highValue));
    			indiceValue.setLowValue(new BigDecimal(lowValue));
    			indiceValueList.add(indiceValue);
    		}catch(Exception e) {
    			LOG.warn(e.getMessage(), e);
    		}
    	}
    }


    0
  • 로그인을 하시면 댓글을 등록할 수 있습니다.