MaruCrawler.vol1.egg

MaruCrawler.vol2.egg

MaruCrawler.vol3.egg


* 본 블로그 관리자는 프로그램이나 소스코드를 사용 및 악용하여 발생하는 문제에 대해 어떠한 책임도 지지 않습니다.


오랜만의 릴리즈인데다 좀 크게 변한것도 있어 (겉으로 티는 안나지만) 2.00으로 버전업하였습니다.


변한 내용은 ( http://shelter-of-halfelf.tistory.com/21 ) 참고...


그 외에도 댓글로 특정 만화가 다운받아지지 않는다고 하여 처리하였습니다.

단순한 URL 인코딩 문제였던 것으로 보입니다.


 사용법은 전과 거의 동일하지만, 만화 id를 입력하기 전에 메뉴가 하나 생겼습니다. 단순히 만화를 다운받으려면 1번을, 기존에 다운받은 만화를 업데이트하려면 2번을 누르고 엔터쳐주시면 됩니다. 만화를 다운받는 것이 완료되면 프로그램은 자동으로 종료되며, 업데이트는 현재 마루마루에 올라온 에피소드 중 없는 것을 자동으로 찾아서 다운받는 것이기 때문에 최신 에피소드가 업데이트되거나 기존 에피소드를 삭제 후 돌리면 해당 에피소드를 자동으로 다운로드합니다.


아, 그리고 2.00버전부터 프로그램 소스를 공개하기로 결정했습니다.

Github : https://github.com/KiririnLover/MaruCrawler
참고하시면 되겠습니다.


버그는 댓글로 부탁드립니다~

블로그 이미지

HalfElf

평범하게 직장 다니는 IT업계 종사자. 디자인은 못하더라도 개발은 하고 싶어!

,


한 반년 가까이 잠수타다가(...) 돌아왔습니다.


일때문에 바쁜것도 맞긴 하지만 이걸 계속해서 의미가 있나 싶기도 하고 한동안 업데이트도 못했기에 댓글로 욕먹진 않았을까 싶기도 해서 들어오는걸 피했었네요.


여전히 안막히고 잘 사용되고 있는 것 같아 다행입니다.


MaruCrawler 1.XX 버전은 사실 실력도 부족한 상태에서 조잡하게 설계해서 만들었기 때문에 상당히 불안정하고 불편한 프로그램이었습니다.


곧 공개할 MaruCrawler 2.X 버전에서 바뀔 점을 몇가지 적고 마치겠습니다.


- Multi-thread 방식에서 Multi-process로 전환

 이 말을 이해할 사람이 몇이나 될지 모르겠지만 (컴퓨터 전공이시라면 아실 겁니다) 우선 설명드리자면, 이 MaruCrawler를 만드는데 사용한 Python이라는 언어는 Threading의 효율이 무척이나 떨어집니다. 따라서 효율적인 분산 처리를 위해서는 Multi-process를 사용하는 것이 좋습니다. 이번에 대규모로 개편하면서 공유 메모리를 사용하여 Task Queue를 만들고 이를 이용해 Multi-process를 구현했습니다.

 이로 인해 속도 및 안정성이 비약적으로 상승했습니다.


- Python 2.7에서 Python 3.6으로 언어 변경

 프로그래밍에 사용한 Python 2.7 을 Python 3.6으로 변경하였습니다. 아실 분은 아시겠지만 Python 2.7와 Python 3.6은 문법은 거의 같다시피 하지만 유니코드 지원 등 여러 모로 다른 점이 많습니다.

 이로 인해 유니코드 처리 등이 편해져 버그 발생율이 감소하였습니다.


- Logging 기능 추가

 기존에는 콘솔창에 메시지만 떠서 어떻게 저에게 제보해야 할지 모르겠다는 분들이 계셨습니다. 이번에는 Python의 logging 모듈을 이용하여 에러나 메시지 발생 시 가능한 전부 로깅하도록 하였으므로 버그가 났을 경우 대략적인 상황과 함께 logs 폴더 내부의 로그 파일을 제 메일로 보내주시면 간단하게 문제 해결에 큰 도움이 됩니다.


- 프로그램 소스 공개

지금은 아직 공개할 수 없지만 곧 프로그램을 공개하면서 프로그램 소스도 함께 공개할 예정입니다. Github을 사용하여 공개할 예정이며 라이센스는 CC BY-NC 3.0 입니다.

 라이센스에 관한 자세한 내용은 여기를 참고하시기 바랍니다.



사실 위 항목 중 마지막 소스 공개만 제외하고는 이미 전부 구현된 상태입니다. 맘같아선 더 개발하고 자고 싶지만 출근시간도 있고 하니 이만 적고 자러 가야겠네요 (._.

가능한 빨리 돌아올 수 있도록 노력하겠습니다.



* 댓글 하나하나 다 읽어보고 있습니다. 격려하고 감사 표하는 댓글 정말 힘이 됩니다. 감사합니다.

블로그 이미지

HalfElf

평범하게 직장 다니는 IT업계 종사자. 디자인은 못하더라도 개발은 하고 싶어!

,

HalfElf_MaruCrawler (1.43 ver.).z01

HalfElf_MaruCrawler (1.43 ver.).z02

HalfElf_MaruCrawler (1.43 ver.).zip


* 본 블로그 관리자는 프로그램이나 소스코드를 사용 및 악용하여 발생하는 문제에 대해 어떠한 책임도 지지 않습니다.


[ 업데이트 내용 ]


+ 특정 에피소드의 몇 장만 받아지고 이후 전부 다운받아지지 않는 문제를 해결했습니다.


+ 특정 에피소드가 통째로 받아지지 않는 문제를 해결했습니다.

=> 만화 자체가 404 에러로 마루마루 서버측의 문제가 있는 상태였습니다. 같은 문제가 발생할 경우 해당 에피소드를 스킵하고 다운로드를 계속 진행하도록 개선해 두었습니다.


[ 사용법 ]

(클릭하면 커집니다)


 만화 ID의 경우 업데이트된 한 화가 아니라 전 화가 모두 나와 있는 주소에서 찾으셔야 합니다.


http://shelter-of-halfelf.tistory.com/19

여기서 말씀드린 업데이트 내용은 대규모 개편작업이 필요하기 때문에 버전 2로 업그레이드하면서 반영될 것으로 보입니다.


 버그가 발견되면 댓글이나 방명록 등으로 제보 바랍니다.

모두 새해 복 많이 받으세요~

블로그 이미지

HalfElf

평범하게 직장 다니는 IT업계 종사자. 디자인은 못하더라도 개발은 하고 싶어!

,