220509_TIL_TIL, 유튜브, ajax에서 $(this) 사용

설탕유령·2022년 5월 9일
0
post-custom-banner

[TIL]

TIL는 사막에 꽃아둔 깃발과 같다.
오늘밤이 지나면 내 발자취는 사라지지만,
꽃아둔 이정표는 남아 지나온 길을 돌아 보게 된다.

[bs4]

유튜브는 데이터를 트리 구조로 전송 후, 스크립트로 재 조합하고 가공한다.
그 처리 시간이 길어 bs4로 크롤링 시 제대로된 html 구조로 받아오기 힘들다.
스크립트가 전부 실행되고 가져오도록 대기를 하거나, 아니면 html 처리가 안된 텍스트 데이터를 가져와 직접 추출하는 방안이 있다.

[ajax]

Ajax 사용시 success 내부에서 $(this) 형식으로 접근시 오류가 발생한 사항이 있었음
Ajax에서 success시 response를 반환해 주는데, 이때 this에 지정되는 타겟이 response으로 바뀌기 때문, 외부에서 var을 통해 접근을 하고 다시 접근시 오류가 해결 됨

var target = $('.className').find('.className2');
target.each(function(){
  var link = $(this).find('img').attr("alt");
  var span = $(this).find('span');
  $.ajax({
    type: "POST",
    url: "/main",
    data: {
      link: link
    },
    success: function (response) {
      span.text(response['datas']);
    }
  })
})
profile
달콤살벌
post-custom-banner

0개의 댓글