모바일 오유 바로가기
http://m.todayhumor.co.kr
분류 게시판
베스트
  • 베스트오브베스트
  • 베스트
  • 오늘의베스트
  • 유머
  • 유머자료
  • 유머글
  • 이야기
  • 자유
  • 고민
  • 연애
  • 결혼생활
  • 좋은글
  • 자랑
  • 공포
  • 멘붕
  • 사이다
  • 군대
  • 밀리터리
  • 미스터리
  • 술한잔
  • 오늘있잖아요
  • 투표인증
  • 새해
  • 이슈
  • 시사
  • 시사아카이브
  • 사회면
  • 사건사고
  • 생활
  • 패션
  • 패션착샷
  • 아동패션착샷
  • 뷰티
  • 인테리어
  • DIY
  • 요리
  • 커피&차
  • 육아
  • 법률
  • 동물
  • 지식
  • 취업정보
  • 식물
  • 다이어트
  • 의료
  • 영어
  • 맛집
  • 추천사이트
  • 해외직구
  • 취미
  • 사진
  • 사진강좌
  • 카메라
  • 만화
  • 애니메이션
  • 포니
  • 자전거
  • 자동차
  • 여행
  • 바이크
  • 민물낚시
  • 바다낚시
  • 장난감
  • 그림판
  • 학술
  • 경제
  • 역사
  • 예술
  • 과학
  • 철학
  • 심리학
  • 방송연예
  • 연예
  • 음악
  • 음악찾기
  • 악기
  • 음향기기
  • 영화
  • 다큐멘터리
  • 국내드라마
  • 해외드라마
  • 예능
  • 팟케스트
  • 방송프로그램
  • 무한도전
  • 더지니어스
  • 개그콘서트
  • 런닝맨
  • 나가수
  • 디지털
  • 컴퓨터
  • 프로그래머
  • IT
  • 안티바이러스
  • 애플
  • 안드로이드
  • 스마트폰
  • 윈도우폰
  • 심비안
  • 스포츠
  • 스포츠
  • 축구
  • 야구
  • 농구
  • 바둑
  • 야구팀
  • 삼성
  • 두산
  • NC
  • 넥센
  • 한화
  • SK
  • 기아
  • 롯데
  • LG
  • KT
  • 메이저리그
  • 일본프로야구리그
  • 게임1
  • 플래시게임
  • 게임토론방
  • 엑스박스
  • 플레이스테이션
  • 닌텐도
  • 모바일게임
  • 게임2
  • 던전앤파이터
  • 마비노기
  • 마비노기영웅전
  • 하스스톤
  • 히어로즈오브더스톰
  • gta5
  • 디아블로
  • 디아블로2
  • 피파온라인2
  • 피파온라인3
  • 워크래프트
  • 월드오브워크래프트
  • 밀리언아서
  • 월드오브탱크
  • 블레이드앤소울
  • 검은사막
  • 스타크래프트
  • 스타크래프트2
  • 베틀필드3
  • 마인크래프트
  • 데이즈
  • 문명
  • 서든어택
  • 테라
  • 아이온
  • 심시티5
  • 프리스타일풋볼
  • 스페셜포스
  • 사이퍼즈
  • 도타2
  • 메이플스토리1
  • 메이플스토리2
  • 오버워치
  • 오버워치그룹모집
  • 포켓몬고
  • 파이널판타지14
  • 배틀그라운드
  • 기타
  • 종교
  • 단어장
  • 자료창고
  • 운영
  • 공지사항
  • 오유운영
  • 게시판신청
  • 보류
  • 임시게시판
  • 메르스
  • 세월호
  • 원전사고
  • 2016리오올림픽
  • 2018평창올림픽
  • 게시판찾기
  • 게시물ID : computer_69009
    작성자 : Ksana (가입일자:2011-09-19 방문횟수:1326)
    추천 : 6
    조회수 : 2755
    IP : 190.178.***.34
    댓글 : 0개
    등록시간 : 2012/12/18 08:29:49
    http://todayhumor.com/?computer_69009 모바일
    파이썬 강좌? 네이버 웹툰 저장하기 #1

    네이버 웹툰 저장하기



    파이썬(Python)을 이용한 실습의 일환으로 네이버 웹툰을 PC에 자동 저장하는 스크립트를 만들어볼까 합니다. 파이썬을 간단하게 공부해보고 싶으신 분들을 대상으로 문서를 작성합니다. 윈도우 환경에 파이썬 2.7을 기반으로 하여 프로그램을 설명하도록 하겠습니다.

     

    주의 사항!
    사실 고민을 많이 했습니다. 저작권이 걸린 매체를 가지고 물의를 일으키지는 않을까 해서요.

    분명히 밝힙니다. 본 문서는 python을 파이썬을 학습에 조금이나마 도움을 주기 위한 목적으로만 작성되었습니다. 수집한 각 웹툰은 저작권이 허용하는 범위 안에서만 이용하십시오. 웹툰의 감상은 웹사이트를 통해 하시기 바랍니다. 이 문서를 보시는 분들의 상식을 믿겠습니다.



    1. 웹페이지의 주소 분석하기


    1.1. 웹페이지 주소 들어가보기

    원하는 작품의 원하는 회차를 저장하기 위해서는 먼저 주소 체계에 대한 지식이 있어야 합니다. 그러므로 우선 본 장에서는 웹페이지의 주소에 대한 설명을 하고자 합니다. 설명이 장황해질 수 있으므로 최대한 간결하게 설명하고 넘어가도록 하겠습니다.

    우선 웹툰 홈페이지에서 원하는 웹툰을 선택해야겠죠. 우선 웹브라우저를 열어 웹툰을 하나 선택하세요. 그럼 가장 먼저 웹브라우저의 주소를 자세히 살펴보도록 할까요? 아마 주소는 이렇게 시작할 겁니다.

    http://comic.naver.com/webtoon/detail.nhn?titleId= ...



    1.2. 주소의 각 부분에 대한 설명

    이 주소를 좀 더 자세히 분석하면 다음과 같이 나눌 수 있습니다.

     

    - http:// 부분:                      http

    - comic.naver.com 부분:        도메인 네임

    - /webtoon/detail.nhn 부분:   문서 경로

    - ?titleId=… 부분:                 GET 변수/값 목록


    그럼 각 부분에 대한 간단한 설명하도록 하지요.


    1.2.1 http

    http:// 는 웹브라우저를 통해 http(Hyper Text Transfer Protocol)를 사용하겠다는 의미입니다. 웹페이지 주소를 나열할 때 주로 사용되므로 이제는 이것이 매우 낯선 단어는 아니라고 생각합니다. http와 같은 '프로토콜'에 대한 자세한 설명은 생략하겠습니다. 웹페이지를 열 때 필요한 부분이라고 생각하시면 됩니다.

     

    1.2.2. 도메인 네임

    comic.naver.com 또한 별 설명이 필요없을 겁니다. 우리는 naver.com에 접속하고 싶다는 의미이죠.

     

     

    1.2.3 문서 경로

    /webtoon/detail.nhn은 클라이언트가 서버에게 무엇을 원하는지를 설명하는 문장입니다. 이를 사람과의 대화로 비유하자면 이렇습니다.

       -  PC(클라이언트): 서버야, 너 /webtoon 디렉토리에서 detail.nhn 이라는 파일 좀 보내줘
       - 서버: 어 알았어, 기다려봐. (파일을 찾아 있다면) 응 여기 detail.nhn이라는 파일이 있네 전송한다. (파일이 없다면)응? 네가 말한 파일은 내가 가지고 있지 않아!

    1.2.4. GET 변수/값 목록

    ?titleId=… 부분은 쉽게 말해 서버의 detail.nhn이 전달하는 내용은 사용자의 요청에 따라 능동적으로 변할 수 있기 때문에 필요한 부분입니다. 여러분들은 각 웹툰을 감상할 때 만화의 내용은 다르지만 웹페이지의 디자인은 달라지지 않는 것을 보셨지요?

    각 만화마다, 각 작품마다 웹페이지를 제작해야 한다면 웹페이지의 수가 너무 많아질 것입다. 이렇게 산만하게 수가 늘어나면 관리하기도 쉽지 않겠죠.

     

    사실 '마음의 소리'와 '신과 함께' 만화의 내용은 각기 다르지겠만, 사실 웹페이지의 디자인 자체가 일일이 달라져야 할 필요는 없습니다. 그래서 문서를 제작할 때 변하는 부분과 변하지 않는 부분을 구분지어서 변하는 부분은 클라이언트가 요청할 때마다 동적으로 만들어서 보여주게 됩니다. 그러면 문서 하나로도 수백 수천개의 비슷한 부류의 문서를 커버할 수 있습니다.

    서버는 공통적인 부분은 '템플릿'으로 저장합니다. 그리고 변동되는 부분에 대해서는 클라이언트가 필요할 때 만들어서 전송합니다. ?titleId=…는 바로 그 변동되는 부분이 어떻게 처리되어야 하는지 알려주는 스위치 같은 역할을 합니다. 이 문자열은 보통 물음표(?)로 시작하고 '&' 기호로 구분합니다.

    그러므로 물음표 뒤의 문자열을 &로 나누게 되면, 대략

        titleId=XXXXXX
        no=XX (혹은 seq=XX)

    이렇게 나눠질 것입니다. 그리고 각각 나눠진 문자열은 재차 등호(=)로 나눌 수 있습니다. 등호 좌측의 문자열은 '변수(variable)', 등호 우측의 문자열은 '값(value)'입니다.

    웹브라우저에서 서로 다른 작품들/다른 회차에 접속해서 값이(간혹 변수가) 어떻게 바뀌는지 확인해보세요. 또 전혀 다른 웹페이지들에 접속해서 물음표 뒤에 나오는 변수와 값들을 살펴보세요. 이렇게 웹페이지 주소에 클라이언트가 요청에 필요한 요소들을 같이 보내는 것을 'GET' 방식이라고 말합니다.

     

     

    2. 결론

    이 장의 결론입니다. 만화를 보기 위해서는 'GET' 방식으로 comic.naver.com에 접속하여 '/webtoon/detail.nhn'을 요청해야 합니다. 이 때 만화 작품 구분을 위해서는 'titleId'라는 변수와 작품마다 미리 정해진 값을, 만화 회차를 구분하기 위해서는 'no'(혹은 'seq')라는 변수와 회차 값을 적어서 보내야 합니다.

    (사실 이렇게 동작하기까지 서버와 우리의 피씨, 즉 클라이언트 사이에 수많은 규약과 데이터가 밑바탕으로 깔려 있어야 합니다. 하지만 그런 자세한 사항을 일일이 알 필요는 없구요, 추상적으로 클라이언트가 '요청(request)'하면 서버는 그 요청에 따라 클라이언트에 '응답(response)'한다고 생각하시면 됩니다.)
     


    이 게시물을 추천한 분들의 목록입니다.
    [1] 2012/12/18 09:03:47  210.183.***.244  구차니  168644
    [2] 2012/12/18 09:26:57  110.70.***.95  시골푸마  311792
    [3] 2012/12/18 10:02:46  203.244.***.24  miri  30844
    [4] 2012/12/18 11:28:44  218.49.***.98  깜냥되는놈  226194
    [5] 2012/12/18 13:45:18  221.148.***.184  Hacktivist  212841
    [6] 2013/05/14 13:38:31  114.111.***.249  꼼울  2414
    푸르딩딩:추천수 3이상 댓글은 배경색이 바뀝니다.
    (단,비공감수가 추천수의 1/3 초과시 해당없음)

    죄송합니다. 댓글 작성은 회원만 가능합니다.

    번호 제 목 이름 날짜 조회 추천
          컴퓨터 게시판 여행가이드(흔한닉네임님 외 다수 참여)
    366429
    인텔 스카이레이크 i5 - 6500 아직 현역인가요? 문도박사 19/08/25 13:37 43 0
    366428
    조립 pc 고장 증상 관련하여 자문 구합니다. [1] 어쩌다그랬누 19/08/25 12:24 46 0
    366427
    유튜브감상용 노트북 추전좀 부탁드릴께요 본삭금 [2] 본인삭제금지 봄사랑물고빨고 19/08/25 00:11 59 1
    366426
    R9 290x 고장내버린.ssul [2] 바보멍냥이 19/08/24 16:09 196 2
    366425
    모니터가 갑자기 나갔어요ㅠ [2] !ㅇㅅㅇ! 19/08/24 14:49 101 1
    366423
    컴퓨터 견적 봐주세요. [10] 본인삭제금지 KameraAction 19/08/23 23:26 310 1
    366422
    컴퓨터 견적좀 봐주세요 [2] 펌글베스트금지베오베금지본인삭제금지외부펌금지 QandA 19/08/23 22:08 167 1
    366421
    친누나 생일때 사줄꺼 [1] 바보멍냥이 19/08/23 19:19 208 1
    366420
    도와주세요 ㅠ 컴터 조립을 했는데 오류가 떠요 [4] 본인삭제금지 chessile 19/08/23 18:53 151 1
    366419
    윈10 기본 앱이 실행이 안되요 ㅠ [2] 본인삭제금지 미모가일치얼짱 19/08/23 18:00 110 1
    366418
    긴급 메인보드 구합니다. gigabyte H310N 1.0 버젼 peterlee 19/08/23 13:16 133 0
    366417
    조텍 GTX760 익스트림 골드 에디션 바보멍냥이 19/08/23 12:43 199 0
    366416
    ㅠㅠ컴퓨터 수리만 전문으로 하는 업체 추천 좀 해주세요 [9] 인조오리18호 19/08/23 10:01 205 1
    366415
    NVMe 소켓에 SATA M.2가 장착되도 사용할 수 있나요??? [2] 잿빛인생 19/08/22 22:51 221 0
    366413
    대용량 파일 복사 프로그램 추천 - FastCopy 창작글 나기사 19/08/22 21:10 178 0
    366412
    컴퓨터 부품좀 봐주세요 [4] goaWl 19/08/22 20:19 211 0
    366411
    눈팅하면서 견적짜봤습니다~ 잘 짠건지 조언 한번만 부탁드립니다~! [8] 베스트금지베오베금지본인삭제금지 랔멬 19/08/22 18:21 202 1
    366410
    100 만원대 컴 짜 봤는데요... 조언좀 구합니다. [7] 베스트금지베오베금지본인삭제금지 춘곤중 19/08/22 14:46 277 1
    366409
    컴퓨터 견적한번 짜봤어요 (게임용:배그 170만원대) [2] 베스트금지베오베금지본인삭제금지 이크에크이크 19/08/22 13:46 197 1
    366408
    50~60만원 정도의 노트북 고르고 있는데 평가좀 해주세요 [1] 창작글 무선이어폰 19/08/22 13:29 147 0
    366407
    19년형 Lg그램 15인치 샀는데 인케이스 맥북15인치 파우치랑 호환 본인삭제금지 우엉차는냉침 19/08/22 12:09 152 1
    366406
    저는 이 사양으로 앞으로 5년더 쓸 생각 [3] 바보멍냥이 19/08/22 01:46 387 0
    366405
    아이스크림 바보멍냥이 19/08/22 01:46 184 2
    366404
    이정도 사면 12년정도 씁니까?? [8] PanicY 19/08/21 22:51 472 0
    366403
    도와주세요 컴이 미쳤어요 컨트롤키! [3] 19/08/21 19:32 215 0
    366402
    건축학과 학생 데스크탑 견적 맞춰주시면 감사하겠습니다ㅠ 당당나나귀귀 19/08/21 19:05 134 0
    366401
    게이밍 노트북 추천 부탁드립니다! 본인삭제금지 Gomputer 19/08/21 17:43 124 1
    366400
    노트북 램교환 질문입니다..ㅜㅜ [2] 이게뭐야정말 19/08/21 10:43 164 0
    366399
    컴 조립 질문입니다 [2] 우옹 19/08/21 10:21 163 0
    366398
    컴퓨터 본체 수명은 평균적으로 어느정도나 될까요? [10] 본인삭제금지 엘른 19/08/21 05:39 423 1
    [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [다음10개▶]
    단축키 운영진에게 바란다(삭제요청/제안) 운영게 게시판신청 자료창고 보류 개인정보취급방침 청소년보호정책