본문 바로가기

전체 글

특정 url 웹을 bs4로 크롤링하고 그것을 몽고디비에 저장하기 문제점 제목의 과정이 잠깐 이해가 잘 되지 않았다. 시도해 본것 코드를 살펴보았다. 해결책 구조는 간단하다. 웹에서 url을 입력하고 '기록하기'를 누르면 function posting()이 실행된다. 그러면 입력한 url이 파이썬 서버로 가고 서버에서는 그 url을 bs4로 파싱해서 meta 태그들을 변수에 넣는다. 그 변수를 이용해 pymongo로 몽고디비에 집어넣는다. 해당 코드는 아래와 같다. python @app.route("/movie", methods=["POST"]) def movie_post(): url_receive = request.form['url_give'] comment_receive = request.form['comment_give'] star_receive = request.. 더보기
beautiful soup 4 : <html> 로부터 파싱하여 도출된 리스트는 또다른 리스트로 파싱되지 않는다. 문제점 bs4로 곡순위 웹페이지를 파싱했고, 아래 코드로 들이 모인 리스트를 도출해 내었다. 하나의 에는 50위권 안에 들어온 노래의 정보가 담겨 있다. trs = soup.select('#body-content > div.newest-list > div > table > tbody > tr') 나는 그이후 또다시 아래 코드로 trs 라는 리스트로부터 노래제목을 도출해 내려고 하였다. title = trs.select_one('td.info > a.title.ellipsis').text.strip(); 하지만 그건 불가능했다. 시도해본 것 그래서 잘 작동하는 비슷한 코드를 살펴보았다. 결론은 list 로부터 노래제목을 도출하려면 반복문 안에 넣어서 하나하나 접근해야 한다는 것이었다. 아래 코드처럼 만들면.. 더보기
자바스크립트 forEach() 문제점 자바스크립트 fetch 메소드 안에 있는 forEach() 메소드를 이해하고자 한다. 시도한 것 fetch 메소드는 url에서 데이터를 가져와 개발자가 사용할 수 있게 만들어 준다. 그렇게 '가공' 된 데이터에 forEach() 또한 적용할 수 있다. 자바스크립트 forEach() 메소드는 배열의 각 요소들에 대해서 함수를 실행하고 그 값을 리턴한다. 예를 들면 아래와 같다. rows 에 들어있는 영화 데이터 하나하나(a)마다 아래 코드를 실행하므로 html에 영화데이터들이 순서대로 붙게 된다. fetch("http://spartacodingclub.shop/web/api/movie").then(res => res.json()).then(data => { let rows = data['movies.. 더보기
fetch의 활용 문제점 fetch 자체를 이해하지 못했다. 시도해 본 것 fetch() 를 인터넷에서 들여다 보았다. fetch()는 데이터를 가져와서 클라이언트 측에서 사용할 수 있게 만드는 자바스크립트 내장함수라고 할 수 있다. 에서 사용할 수 있게 만드는 도구이다. fetch("http://spartacodingclub.shop/sparta_api/seoulair") .then((res) => res.json()) .then((data) => { let rows = data['RealtimeCityAir']['row'] $('#names-q1').empty() rows.forEach((a) => { let gu_name = a['MSRSTE_NM']; let gu_mise = a['IDEX_MVL']; let te.. 더보기