앗 지금 발견한 커밋 메시지 오타...!(puppetee't') 보기 불편하니깐 고쳐야겠다.
엥 git push --force
하니깐 날짜가 reword한 기점으로 다 오늘이 됐네...
당연한 결과임 (출처)
이것도 불편한데...
다시 되돌릴 방법 찾으러 떠납니다.
왔습니다.
push --force
말고는 별다른 방법이 없는 것 같다.
별안간 6월 2일에 2, 3, 4 단원 다 공부한 사람이 되느냐...
아니면 작은 커밋 메시지 오타를 내는 사람이 되느냐...
뭔가 잔디 심는 것도 영향을 미친 것 같긴한데, 아깝지만 오타를 용납할 수 없으니 git reset --hard
을 하지 않겠다!
<오늘의 교훈>
- 커밋 메시지를 push 하기 전
git log
로 오타를 확인하자.push --force
는 왠만해서 쓰지 말자.
협업할 때 쓸 경우push --force-with-lease
옵션을 쓰자
그래서 puppeteer가 무엇이냐면,
python에 자동화 라이브러리인 selenium이 있다면, node에는 puppeteer가 있다!
puppeteer가 (꼭두각시와 같은) 인형을 놀리는 사람을 뜻하는 단어라서 개인적으로 selenium보다 하는 일을 더 직관적으로 네이밍하지 않았나 싶다.
위 xlsx 결과물은 puppeteer로 [각 링크를 접속] 👉 [접속한 페이지의 평점 태그에 접근]을 자동화한 뒤, 해당 데이터를 파싱한 뒤 새로운 파일을 생성한 것이다.
코드를 굳이 올릴 필요는 없다고 생각하지만,
혹시나 코드가 궁금한 사람은 여기로!
The User-Agent request header is a characteristic string that lets servers and network peers identify the application, operating system, vendor, and/or version of the requesting user agent. (출처)
서버와 네트워크 관련인들이 접속한 유저의 애플리케이션, 운영 체제, 공급 업체, 요청하는 유저에이전트의 버전을 식별하게 하는 특정 문자열이다.
확인하는 방법에는 여러가지가 있겠지만은,
(구글에 'userAgent check'이라고 검색하기만 해도 된다)
조금 더 개발자스러운 방법은 다음과 같다.
개발자 도구 console에 navigator.userAgent
로 확인하기
아무 유효한 request의 header 확인하기(network 탭>Headers 탭에서 가장 아래에 위치)
관련해서 나중에 조금 더 읽어볼 것!
브라우저의 사용자 에이전트는 왜 이렇게 복잡하게 생겼을까?
네이버 영화가 서비스 종료가 되고(무슨 말이야), 강의에서 태그 클래스를 찾는 방식이 말짱 도루묵이 되어 버렸기 때문에 내가 직접 DOM에 접근하여 클래스를 찾아야 하고, 심지어 네이버 통합 검색 결과로 떨어져 아예 없는 태그에 접근하는 경우도 있었다.
처음에는 강의가 업데이트 되지 않아서 태그를 찾고 확인하는 데에 시간이 정말 오래 걸려 아쉬웠지만 사실 실무나 내가 직접 웹 크롤링을 하는 간접 경험을 한 것 같아 오히려 좋았다.