[내배캠/TIL(5/2)]웹개발 플러스 3주차

손홍서·2022년 5월 2일
0

WEB

목록 보기
4/5

day11(5/2) TIL

day11 느낀점

재미있고 유용한 api들은 참 많은 것 같다. 나도 적절한 곳에서 다양한 api를 사용해서 구현을 해보고싶은 욕심이 생긴다.

웹 스크래핑(web scraping)

웹 페이지에서 우리가 원하는 부분의 데이터를 수집해 오는 것을 뜻한다.

cf. 웹 크롤링은 자동화해 주기적으로 웹 상에서 페이지를 돌아다니면서 분류/색인하고 업데이트된 부분을 찾는 등의 일을 하는 것을 말한다.

웹 스크래핑과 웹 크롤링의 차이는 다음 링크를 통해 더 자세히 알 수 있다.
https://dzone.com/articles/web-scraping-vs-web-crawling-whats-the-difference

selenium

동적인 웹페이지를 스크래핑할 때는 셀레니움을 사용하여 웹페이지를 브라우저에 띄운 후 소스코드를 가져오는 방법을 써야한다.
셀레니움을 사용하기위해 크롬브라우저 버전과 일치하는 크롬드라이브를 다운 받아 프로젝트에 넣어주어여한다.

driver = webdriver.Chrome('./chromedriver')  # 드라이버를 실행


url = "https://www.~~~"

driver.get(url)  # 드라이버에 해당 url의 웹페이지를 띄움
sleep(5)  # 페이지가 로딩되는 동안 5초 간 기다림

req = driver.page_source  # html 정보를 가져옴

sleep(10)

driver.quit()  # 정보를 가져왔으므로 드라이버는 꺼줌.

soup = BeautifulSoup(req, 'html.parser')  # 가져온 정보를 beautifulsoup으로 파싱

네이버 지도 API

https://navermaps.github.io/maps.js.ncp/docs/tutorial-2-Getting-Started.html

사실 네이버 지도 api같은 경우는 공식 문서 보기가 정말 좋다.
아마 나중에 필요하다면 공식문서를 꼼꼼히 보고 더 잘 활용하자.

특정포트 찾아 닫기

특정 포트 PID 알아내기
sudo lsof -i :5000
특정포트 닫기
sudo kill -9 PID

맥북을 사용할때 5000포트를 이미 사용중이라는 오류가 나온다.
이때는 위의 명령어를 사용해서 포트를 죽여도 다시 살아난다.

그때는 AirPlay 수신 모드를 꺼주면 된다.

pymongo

이미 존재하는 Key를 없애고 싶을 때 => $unset

{
  "id" : 0,
  "name" : "hongseo",
  "description" : "jjang"
}

{
  "id" : 0,
  "name" : "hongseo"
}

db.collection_name.update({ "id": 0 }, { $unset : { "description" : False } })
profile
Hello World!!

0개의 댓글