tag:blogger.com,1999:blog-61403081182433195682024-03-05T15:31:07.939+09:00carpedm20Machine Learning/Natural Language Processing/Computer Vision
carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.comBlogger95125tag:blogger.com,1999:blog-6140308118243319568.post-31653537921681658832016-01-17T23:42:00.002+09:002016-10-28T06:25:59.028+09:00About me<div class="separator" style="clear: both; text-align: center;">
</div>
<div style="text-align: center;">
<a href="http://carpedm20.github.io/">http://carpedm20.github.io/</a></div>
carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.com0tag:blogger.com,1999:blog-6140308118243319568.post-3989472394230147432015-04-13T15:54:00.002+09:002015-05-07T03:19:45.269+09:00[Flask] All about critics<h1 style="color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 2.25em; line-height: 1.2; margin-bottom: 16px; margin-left: 0px; margin-right: 0px; margin-top: 0px !important; padding-bottom: 0.3em; position: relative;">
<span style="font-weight: normal;"><span style="color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px;">Github : </span></span><span style="color: #333333; font-family: Helvetica Neue, Helvetica, Segoe UI, Arial, freesans, sans-serif;"><span style="font-size: 16px; font-weight: normal; line-height: 25.6000003814697px;"><a href="https://github.com/carpedm20/all-about-critics">https://github.com/carpedm20/all-about-critics</a></span></span></h1>
<h1 style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 2.25em; line-height: 1.2; margin-bottom: 16px; margin-left: 0px; margin-right: 0px; margin-top: 0px !important; padding-bottom: 0.3em; position: relative;">
<span style="color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; font-weight: normal; line-height: 25.6000003814697px;">A Data Visualization of Korean movie cr</span><span style="font-size: small; font-weight: normal;"><span style="color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; line-height: 25.6000003814697px;">itics. </span><a href="http://pail.unist.ac.kr/carpedm20/critic/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">link</a></span></h1>
<h2 style="color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 1.75em; line-height: 1.225; margin-bottom: 16px; margin-top: 1em; padding-bottom: 0.3em; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/all-about-critics#why" id="user-content-why" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; display: block; left: 0px; line-height: 1; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Why?</h2>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px; margin-bottom: 16px;">
Tons of new movies are released every year and the accumulated number of film reviews is increasing. When we are going to choose a movie to watch, we can judge them by diverse preferences such as genre, director or actors.</div>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px; margin-bottom: 16px;">
There mgiht be no doubt that <strong style="box-sizing: border-box;">review</strong> and <strong style="box-sizing: border-box;">star ratings</strong> are two of the most popular qualites and this can be proved by looking at information page of <a href="http://movie.naver.com/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">NAVER movie</a> that star ratings from real audience, critic and user are located right bellow the title of a movie.</div>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px; margin-bottom: 16px;">
<a href="https://raw.githubusercontent.com/carpedm20/all-about-critics/master/contents/naver2.png" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;" target="_blank"><img alt="alt_tag" src="https://raw.githubusercontent.com/carpedm20/all-about-critics/master/contents/naver2.png" style="border: 0px; box-sizing: border-box; max-width: 100%;" /></a></div>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px; margin-bottom: 16px;">
In addition, one of the well-knwon movie recommendation service, <a href="https://watcha.net/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">Watcha</a>, uses star rating for its core recommendation system.</div>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px; margin-bottom: 16px;">
<a href="https://raw.githubusercontent.com/carpedm20/all-about-critics/master/contents/watcha.png" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;" target="_blank"><img src="https://raw.githubusercontent.com/carpedm20/all-about-critics/master/contents/watcha.png" style="border: 0px; box-sizing: border-box; max-width: 100%;" width="70%" /></a></div>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px; margin-bottom: 16px;">
Anyone can post reviews or make star ratings and we usually classify them based on who made it, an ordinary user, or a critic. By the definition on <a href="http://en.wikipedia.org/wiki/Critic" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">Wikipedia</a>, a critic is a person who is professional at an area and his or her publish an opinion and assessments of various forms of creative work such as movie. Critical judgments, whether derived from critical thinking or not, may be positive, negative, or balanced, weighing a combination of factors.</div>
<ol class="task-list" style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px; margin-bottom: 16px; margin-top: 0px; padding: 0px 0px 0px 2em;">
<li style="box-sizing: border-box;"><div style="box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;">
A critic from a user from <a href="http://movie.naver.com/movie/bi/mi/point.nhn?code=45290#pointAfterTab" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">here</a></div>
<div style="box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;">
<a href="https://raw.githubusercontent.com/carpedm20/all-about-critics/master/contents/critic_from_user.png" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;" target="_blank"><img alt="alt_tag" src="https://raw.githubusercontent.com/carpedm20/all-about-critics/master/contents/critic_from_user.png" style="border: 0px; box-sizing: border-box; max-width: 100%;" /></a></div>
</li>
<li style="box-sizing: border-box;"><div style="box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;">
A critic from a critic from <a href="http://movie.naver.com/movie/bi/mi/point.nhn?code=45290#pointExpertTab" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">here</a></div>
<div style="box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;">
<a href="https://raw.githubusercontent.com/carpedm20/all-about-critics/master/contents/critic_from_critic.png" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;" target="_blank"><img alt="alt_tag" src="https://raw.githubusercontent.com/carpedm20/all-about-critics/master/contents/critic_from_critic.png" style="border: 0px; box-sizing: border-box; max-width: 100%;" /></a></div>
</li>
</ol>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px; margin-bottom: 16px;">
Recently, however, lots of questions are made by lots of movie fans that "Are reviews of critics really considerable or not?"</div>
<ol class="task-list" style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px; margin-bottom: 16px; margin-top: 0px; padding: 0px 0px 0px 2em;">
<li style="box-sizing: border-box;"><div style="box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;">
A sharp criticism on critics from <a href="http://movie.naver.com/movie/bi/mi/reviewread.nhn?code=102875&nid=3705815" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">here</a></div>
<div style="box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;">
<a href="https://raw.githubusercontent.com/carpedm20/all-about-critics/master/contents/question1.png" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;" target="_blank"><img alt="alt_tag" src="https://raw.githubusercontent.com/carpedm20/all-about-critics/master/contents/question1.png" style="border: 0px; box-sizing: border-box; max-width: 100%;" /></a></div>
</li>
<li style="box-sizing: border-box;"><div style="box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;">
A disappointed comment on critics from <a href="http://movie.naver.com/movie/bi/mi/basic.nhn?code=130013" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">here</a></div>
<div style="box-sizing: border-box; margin-bottom: 16px; margin-top: 16px;">
<a href="https://raw.githubusercontent.com/carpedm20/all-about-critics/master/contents/question2.png" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;" target="_blank"><img alt="alt_tag" src="https://raw.githubusercontent.com/carpedm20/all-about-critics/master/contents/question2.png" style="border: 0px; box-sizing: border-box; max-width: 100%;" /></a></div>
</li>
</ol>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px; margin-bottom: 16px;">
This is where I started this project. As a movie fan, I statistically compared the patterns of star ratings from ordinary users and critics. To generalized the analysis, I comapred critics of Korean with<a href="http://www.metacritic.com/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">Metacritic</a> and <a href="http://www.rottentomatoes.com/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">Rotten Tomatoes</a>. The result can be conceived as a proof whether skepticism about the quality of critics is right or not.</div>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px; margin-bottom: 16px;">
Now, enjoy yourself :)</div>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px; margin-bottom: 16px;">
<a href="http://pail.unist.ac.kr/carpedm20/critic/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">link</a></div>
<h2 style="color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 1.75em; line-height: 1.225; margin-bottom: 16px; margin-top: 1em; padding-bottom: 0.3em; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/all-about-critics#screenshot" id="user-content-screenshot" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; display: block; left: 0px; line-height: 1; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Screenshot</h2>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px; margin-bottom: 16px;">
<a href="https://raw.githubusercontent.com/carpedm20/all-about-critics/master/contents/demo1.png" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;" target="_blank"><img alt="alt_tag" src="https://raw.githubusercontent.com/carpedm20/all-about-critics/master/contents/demo1.png" style="border: 0px; box-sizing: border-box; max-width: 100%;" /></a><a href="https://raw.githubusercontent.com/carpedm20/all-about-critics/master/contents/demo2.PNG" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;" target="_blank"><img alt="alt_tag" src="https://raw.githubusercontent.com/carpedm20/all-about-critics/master/contents/demo2.PNG" style="border: 0px; box-sizing: border-box; max-width: 100%;" /></a></div>
<h2 style="color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 1.75em; line-height: 1.225; margin-bottom: 16px; margin-top: 1em; padding-bottom: 0.3em; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/all-about-critics#acknowledgement" id="user-content-acknowledgement" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; display: block; left: 0px; line-height: 1; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Acknowledgement</h2>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px; margin-bottom: 16px;">
There is no negative or positive opinion on any specific critics. Data is just a refinement of numbers, nothing else.</div>
<h2 style="color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 1.75em; line-height: 1.225; margin-bottom: 16px; margin-top: 1em; padding-bottom: 0.3em; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/all-about-critics#copyright" id="user-content-copyright" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; display: block; left: 0px; line-height: 1; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Copyright</h2>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px; margin-bottom: 16px;">
Copyright <img align="absmiddle" alt=":copyright:" class="emoji" height="20" src="https://assets-cdn.github.com/images/icons/emoji/unicode/00a9.png" style="border: 0px; box-sizing: border-box; max-width: none;" title=":copyright:" width="20" /> 2015 <a href="http://carpedm20.github.io/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">Kim Tae Hoon</a>.</div>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px;">
The MIT License (MIT)</div>
carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.com0tag:blogger.com,1999:blog-6140308118243319568.post-14828076213274966152015-04-13T15:52:00.003+09:002015-05-07T03:19:36.833+09:00[Flask] VoxOffice<h1 style="color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 2.25em; line-height: 1.2; margin-bottom: 16px; margin-left: 0px; margin-right: 0px; margin-top: 0px !important; padding-bottom: 0.3em; position: relative;">
<span style="font-weight: normal;"><span style="color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px;">Github : </span></span><span style="color: #333333; font-family: Helvetica Neue, Helvetica, Segoe UI, Arial, freesans, sans-serif;"><span style="font-size: 16px; font-weight: normal; line-height: 25.6000003814697px;"><a href="https://github.com/carpedm20/voxoffice">https://github.com/carpedm20/voxoffice</a></span></span></h1>
<h1 style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 2.25em; line-height: 1.2; margin-bottom: 16px; margin-left: 0px; margin-right: 0px; margin-top: 0px !important; padding-bottom: 0.3em; position: relative;">
<span style="font-weight: normal;"><span style="color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px;">A Data Visualization of Box office history. </span><a href="http://pail.unist.ac.kr/carpedm20/vox/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">link</a></span></h1>
<h2 style="color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 1.75em; line-height: 1.225; margin-bottom: 16px; margin-top: 1em; padding-bottom: 0.3em; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/voxoffice#screenshot" id="user-content-screenshot" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; display: block; left: 0px; line-height: 1; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Screenshot</h2>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px; margin-bottom: 16px;">
<a href="https://raw.githubusercontent.com/carpedm20/voxoffice/master/static/main.png" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;" target="_blank"><img alt="alt_tag" src="https://raw.githubusercontent.com/carpedm20/voxoffice/master/static/main.png" style="border: 0px; box-sizing: border-box; max-width: 100%;" /></a><a href="https://raw.githubusercontent.com/carpedm20/voxoffice/master/static/main2.png" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;" target="_blank"><img alt="alt_tag" src="https://raw.githubusercontent.com/carpedm20/voxoffice/master/static/main2.png" style="border: 0px; box-sizing: border-box; max-width: 100%;" /></a><a href="https://raw.githubusercontent.com/carpedm20/voxoffice/master/demo/7.png" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;" target="_blank"><img alt="alt_tag" src="https://raw.githubusercontent.com/carpedm20/voxoffice/master/demo/7.png" style="border: 0px; box-sizing: border-box; max-width: 100%;" /></a></div>
<h1 style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 2.25em; line-height: 1.2; margin: 1em 0px 16px; padding-bottom: 0.3em; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/voxoffice#voxmusic" id="user-content-voxmusic" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; display: block; left: 0px; line-height: 1; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>VoxMusic</h1>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px; margin-bottom: 16px;">
A Data Visualization of Music chart history. <a href="http://pail.unist.ac.kr/carpedm20/music/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">link</a></div>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px; margin-bottom: 16px;">
<a href="https://raw.githubusercontent.com/carpedm20/voxoffice/master/demo/1.png" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;" target="_blank"><img alt="alt_tag" src="https://raw.githubusercontent.com/carpedm20/voxoffice/master/demo/1.png" style="border: 0px; box-sizing: border-box; max-width: 100%;" /></a><a href="https://raw.githubusercontent.com/carpedm20/voxoffice/master/demo/3.png" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;" target="_blank"><img alt="alt_tag" src="https://raw.githubusercontent.com/carpedm20/voxoffice/master/demo/3.png" style="border: 0px; box-sizing: border-box; max-width: 100%;" /></a><a href="https://raw.githubusercontent.com/carpedm20/voxoffice/master/demo/2.png" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;" target="_blank"><img alt="alt_tag" src="https://raw.githubusercontent.com/carpedm20/voxoffice/master/demo/2.png" style="border: 0px; box-sizing: border-box; max-width: 100%;" /></a></div>
<h2 style="color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 1.75em; line-height: 1.225; margin-bottom: 16px; margin-top: 1em; padding-bottom: 0.3em; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/voxoffice#copyright" id="user-content-copyright" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; display: block; left: 0px; line-height: 1; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Copyright</h2>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px; margin-bottom: 16px;">
Copyright <img align="absmiddle" alt=":copyright:" class="emoji" height="20" src="https://assets-cdn.github.com/images/icons/emoji/unicode/00a9.png" style="border: 0px; box-sizing: border-box; max-width: none;" title=":copyright:" width="20" /> 2015 <a href="https://github.com/carpedm20/voxoffice/blob/master/carpedm20.github.io" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">Kim Tae Hoon</a></div>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px;">
The MIT License (MIT)</div>
carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.com0tag:blogger.com,1999:blog-6140308118243319568.post-28390718937737972642015-04-13T15:48:00.003+09:002015-05-07T03:19:26.514+09:00[Python] 컴공아 떠나자<h1 style="color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 2.25em; line-height: 1.2; margin-bottom: 16px; margin-left: 0px; margin-right: 0px; margin-top: 0px !important; padding-bottom: 0.3em; position: relative;">
<span style="color: #333333; font-family: Helvetica Neue, Helvetica, Segoe UI, Arial, freesans, sans-serif;"><span style="font-size: 16px; font-weight: normal; line-height: 25.6000003814697px;">Github : <a href="https://github.com/carpedm20/comgong-abroad">https://github.com/carpedm20/comgong-abroad</a></span></span></h1>
<h1 style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 2.25em; line-height: 1.2; margin-bottom: 16px; margin-left: 0px; margin-right: 0px; margin-top: 0px !important; padding-bottom: 0.3em; position: relative;">
<span style="color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; font-weight: normal; line-height: 25.6000003814697px;">컴공아 떠나자 (a.k.a. Comgong Abroad) is a robot that uploads newest internship and recruit announcements of overseas corporation to Facebook automatically.</span></h1>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px; margin-bottom: 16px;">
Facebook page : <a href="https://www.facebook.com/comgong.abroad" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">link</a></div>
<h2 style="color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 1.75em; line-height: 1.225; margin-bottom: 16px; margin-top: 1em; padding-bottom: 0.3em; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/comgong-abroad#copyright" id="user-content-copyright" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; display: block; left: 0px; line-height: 1; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Copyright</h2>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px; margin-bottom: 16px;">
Copyright <img align="absmiddle" alt=":copyright:" class="emoji" height="20" src="https://assets-cdn.github.com/images/icons/emoji/unicode/00a9.png" style="border: 0px; box-sizing: border-box; max-width: none;" title=":copyright:" width="20" /> 2015 <a href="http://carpedm20.github.io/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">Kim Tae Hoon</a></div>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px; margin-bottom: 16px;">
The MIT License (MIT)</div>
<h2 style="color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 1.75em; line-height: 1.225; margin-bottom: 16px; margin-top: 1em; padding-bottom: 0.3em; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/comgong-abroad#screenshots" id="user-content-screenshots" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; display: block; left: 0px; line-height: 1; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Screenshots</h2>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 25.6000003814697px;">
<b style="background-color: white; color: #414141; font-family: NanumGothic, 'Malgun Gothic', UnDotum, Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 14.5600004196167px; text-align: center;">* 2015.04.17 *</b><br />
<b style="background-color: white; color: #414141; font-family: NanumGothic, 'Malgun Gothic', UnDotum, Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 14.5600004196167px; text-align: center;"><br /></b>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgES7uAMgN4JXNIavmMF3m_N7FVTHB_bduh7tF6V0Z-v1w4EBhBnnhLnTFgsiISDCsM2bxWoUI2UFD866pTuH2-0yRO_kXFltZGK-9376YKvvtARg6FacfR3lsITbMf8Zev-enhhEK4kHen/s1600/screenshot.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgES7uAMgN4JXNIavmMF3m_N7FVTHB_bduh7tF6V0Z-v1w4EBhBnnhLnTFgsiISDCsM2bxWoUI2UFD866pTuH2-0yRO_kXFltZGK-9376YKvvtARg6FacfR3lsITbMf8Zev-enhhEK4kHen/s1600/screenshot.png" height="640" width="607" /></a></div>
<b style="background-color: white; color: #414141; font-family: NanumGothic, 'Malgun Gothic', UnDotum, Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 14.5600004196167px; text-align: center;"><br /></b>
<b style="background-color: white; color: #414141; font-family: NanumGothic, 'Malgun Gothic', UnDotum, Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 14.5600004196167px; text-align: center;"><br /></b>
<b style="background-color: white; color: #414141; font-family: NanumGothic, 'Malgun Gothic', UnDotum, Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 14.5600004196167px; text-align: center;">* 2015.04.13 *</b><br />
<b style="background-color: white; color: #414141; font-family: NanumGothic, 'Malgun Gothic', UnDotum, Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 14.5600004196167px; text-align: center;"><br /></b>
<a href="https://raw.githubusercontent.com/carpedm20/comgong-abroad/master/contents/comgong-abroad-screenshot.PNG" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;" target="_blank"><img alt="screen_shot" src="https://raw.githubusercontent.com/carpedm20/comgong-abroad/master/contents/comgong-abroad-screenshot.PNG" style="border: 0px; box-sizing: border-box; max-width: 100%;" /></a></div>
carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.com0tag:blogger.com,1999:blog-6140308118243319568.post-38584254967895340552014-08-18T19:46:00.003+09:002014-08-18T19:47:26.227+09:00[Python] emoji<h1 style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 2.25em; line-height: 1.2; margin-bottom: 16px; margin-left: 0px; margin-right: 0px; margin-top: 0px !important; padding-bottom: 0.3em; position: relative;">
Emoji</h1>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16.363636016845703px; line-height: 23.272727966308594px; margin-bottom: 16px;">
Emoji is a simple Python module.</div>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16.363636016845703px; line-height: 23.272727966308594px; margin-bottom: 16px;">
This project was inspired by <a href="https://github.com/kyokomi/emoji" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">emoji</a> of <a href="https://github.com/kyokomi/emoji" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">kyokomi</a>.</div>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16.363636016845703px; line-height: 23.272727966308594px; margin-bottom: 16px;">
<a href="https://pypi.python.org/pypi/emoji" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;"><img alt="PyPi version" data-canonical-src="https://pypip.in/v/emoji/badge.png?style=flat" src="https://camo.githubusercontent.com/cc6e90b1b0e0f9e540e1fd701c8b6c4a5e488979/68747470733a2f2f70797069702e696e2f762f656d6f6a692f62616467652e706e673f7374796c653d666c6174" style="border: 0px; box-sizing: border-box; max-width: 100%;" /></a> <a href="https://pypi.python.org/pypi/emoji" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;"><img alt="PyPi downloads" data-canonical-src="https://pypip.in/d/emoji/badge.png?style=flat" src="https://camo.githubusercontent.com/062d67f7dd261d3fab23912f0446ddedbaa8fa0d/68747470733a2f2f70797069702e696e2f642f656d6f6a692f62616467652e706e673f7374796c653d666c6174" style="border: 0px; box-sizing: border-box; max-width: 100%;" /></a> <a href="https://pypi.python.org/pypi/emoji" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;"><img alt="PyPi status" data-canonical-src="https://pypip.in/status/emoji/badge.svg?style=flat" src="https://camo.githubusercontent.com/92888333ac086c97ac52ee20ef8d4342b9e08773/68747470733a2f2f70797069702e696e2f7374617475732f656d6f6a692f62616467652e7376673f7374796c653d666c6174" style="border: 0px; box-sizing: border-box; max-width: 100%;" /></a> <a href="https://pypi.python.org/pypi/emoji" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;"><img alt="PyPi license" data-canonical-src="https://pypip.in/license/emoji/badge.svg?style=flat" src="https://camo.githubusercontent.com/1bf46f0f488cbf028103425c3e70179fc7b7b255/68747470733a2f2f70797069702e696e2f6c6963656e73652f656d6f6a692f62616467652e7376673f7374796c653d666c6174" style="border: 0px; box-sizing: border-box; max-width: 100%;" /></a></div>
<h2 style="color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 1.75em; line-height: 1.225; margin-bottom: 16px; margin-top: 1em; padding-bottom: 0.3em; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/emoji#installation" name="user-content-installation" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; bottom: 0px; box-sizing: border-box; color: #4183c4; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Installation</h2>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16.363636016845703px; line-height: 23.272727966308594px; margin-bottom: 16px;">
To install ndrive, simply:</div>
<pre style="background-color: #f7f7f7; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; box-sizing: border-box; color: #333333; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 13.63636302947998px; line-height: 1.45; margin-bottom: 16px; overflow: auto; padding: 16px; word-wrap: normal;"><code style="background: transparent; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 0px; box-sizing: border-box; display: inline; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; line-height: inherit; margin: 0px; padding: 0px; word-break: normal; word-wrap: normal;">$ pip install emoji
</code></pre>
<h2 style="color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 1.75em; line-height: 1.225; margin-bottom: 16px; margin-top: 1em; padding-bottom: 0.3em; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/emoji#example" name="user-content-example" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; bottom: 0px; box-sizing: border-box; color: #4183c4; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Example</h2>
<pre style="background-color: #f7f7f7; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; box-sizing: border-box; color: #333333; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 13.63636302947998px; line-height: 1.45; margin-bottom: 16px; overflow: auto; padding: 16px; word-wrap: normal;"><code style="background: transparent; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 0px; box-sizing: border-box; display: inline; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; line-height: inherit; margin: 0px; padding: 0px; word-break: normal; word-wrap: normal;">from emoji import emojize
print emojize("Python is :thumbsup:")
print emojize("Do you want some :beer: ?")
</code></pre>
<h2 style="color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 1.75em; line-height: 1.225; margin-bottom: 16px; margin-top: 1em; padding-bottom: 0.3em; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/emoji#demo" name="user-content-demo" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; bottom: 0px; box-sizing: border-box; color: #4183c4; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Demo</h2>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16.363636016845703px; line-height: 23.272727966308594px; margin-bottom: 16px;">
<a href="https://raw.githubusercontent.com/carpedm20/emoji/master/demo/demo.png" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;" target="_blank"><img alt="demo" src="https://raw.githubusercontent.com/carpedm20/emoji/master/demo/demo.png" style="border: 0px; box-sizing: border-box; max-width: 100%;" /></a></div>
<h2 style="color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 1.75em; line-height: 1.225; margin-bottom: 16px; margin-top: 1em; padding-bottom: 0.3em; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/emoji#link" name="user-content-link" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; bottom: 0px; box-sizing: border-box; color: #4183c4; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Link</h2>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16.363636016845703px; line-height: 23.272727966308594px; margin-bottom: 16px;">
<a href="http://www.emoji-cheat-sheet.com/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">Emoji Cheat Sheet</a></div>
<h2 style="color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 1.75em; line-height: 1.225; margin-bottom: 16px; margin-top: 1em; padding-bottom: 0.3em; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/emoji#author" name="user-content-author" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; bottom: 0px; box-sizing: border-box; color: #4183c4; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Author</h2>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16.363636016845703px; line-height: 23.272727966308594px;">
Taehoon Kim / <a href="http://carpedm20.github.io/about/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">@carpedm20</a></div>
carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.com0tag:blogger.com,1999:blog-6140308118243319568.post-7320920126922202432014-08-03T08:44:00.002+09:002014-08-08T17:30:30.238+09:00[Python] korail2<h1 style="border-bottom-color: rgb(221, 221, 221); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 2.5em; line-height: 1.7; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px !important; padding: 0px; position: relative;">
Korail2</h1>
<iframe allowtransparency="true" frameborder="0" height="20" scrolling="0" src="http://ghbtns.com/github-btn.html?user=carpedm20&repo=korail2&type=watch&count=true" width="90"></iframe><iframe allowtransparency="true" frameborder="0" height="20" scrolling="0" src="http://ghbtns.com/github-btn.html?user=carpedm20&repo=korail2&type=follow" width="138"></iframe>
<br />
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 15px; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
Korail (<a href="http://www.letskorail.com/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">www.letskorail.com</a>) wrapper for Python.</div>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 15px; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
This project was inspired from <a href="https://github.com/devxoul/korail" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">korail</a> of <a href="https://github.com/devxoul" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">devxoul</a>.</div>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 15px; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
<a href="https://github.com/devxoul/korail" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">korail</a> is not working anymore becuase of a huge change in Korail API.</div>
<h2 style="color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/korail2#installing" name="user-content-installing" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Installing</h2>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 15px; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
To install korail2, simply:</div>
<pre style="background-color: #f8f8f8; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: #333333; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 13px; line-height: 19px; margin-bottom: 15px; margin-top: 15px; overflow: auto; padding: 6px 10px; word-wrap: normal;"><code style="background: transparent; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: none; box-sizing: border-box; display: inline; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 12px; line-height: inherit; margin: 0px; padding: 0px; word-wrap: normal;">$ pip install korail2
</code></pre>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 15px; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
Or, you can use:</div>
<pre style="background-color: #f8f8f8; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: #333333; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 13px; line-height: 19px; margin-bottom: 15px; margin-top: 15px; overflow: auto; padding: 6px 10px; word-wrap: normal;"><code style="background: transparent; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: none; box-sizing: border-box; display: inline; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 12px; line-height: inherit; margin: 0px; padding: 0px; word-wrap: normal;">$ easy_install korail2
</code></pre>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 15px; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
Or, you can also install manually:</div>
<pre style="background-color: #f8f8f8; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: #333333; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 13px; line-height: 19px; margin-bottom: 15px; margin-top: 15px; overflow: auto; padding: 6px 10px; word-wrap: normal;"><code style="background: transparent; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: none; box-sizing: border-box; display: inline; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 12px; line-height: inherit; margin: 0px; padding: 0px; word-wrap: normal;">$ git clone git://github.com/carpedm20/korail2.git
$ cd korail2
$ python setup.py install
</code></pre>
<h2 style="color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/korail2#using" name="user-content-using" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Using</h2>
<h3 style="box-sizing: border-box; color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 1.5em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/korail2#1-login" name="user-content-1-login" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>1. Login</h3>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 15px; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
First, you need to create a Korail object.</div>
<pre style="background-color: #f8f8f8; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: #333333; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 13px; line-height: 19px; margin-bottom: 15px; margin-top: 15px; overflow: auto; padding: 6px 10px; word-wrap: normal;"><code style="background: transparent; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: none; box-sizing: border-box; display: inline; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 12px; line-height: inherit; margin: 0px; padding: 0px; word-wrap: normal;">>>> from korail2 import Korail
>>> korail = Korail("12345678", YOUR_PASSWORD) # with membership number
>>> korail = Korail("carpedm20@gmail.com", YOUR_PASSWORD) # with email
>>> korail = Korail("010-9964-xxxx", YOUR_PASSWORD) # with phone number
</code></pre>
<h3 style="box-sizing: border-box; color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 1.5em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/korail2#2-search-train" name="user-content-2-search-train" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>2. Search train</h3>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 15px; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
You can search train schedules <code style="background-color: #f8f8f8; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 1px solid rgb(221, 221, 221); box-sizing: border-box; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 12px; margin: 0px; padding: 0px;">search_train</code> method. <code style="background-color: #f8f8f8; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 1px solid rgb(221, 221, 221); box-sizing: border-box; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 12px; margin: 0px; padding: 0px;">search_train</code> method takes these arguments:</div>
<ul class="task-list" style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 15px; line-height: 25.5px; margin: 15px 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">dep : A departure station in Korean ex) '서울'</li>
<li style="box-sizing: border-box;">arr : A arrival station in Korean ex) '부산'</li>
<li style="box-sizing: border-box;">date : (optional) A departure date in <code style="background-color: #f8f8f8; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 1px solid rgb(221, 221, 221); box-sizing: border-box; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 12px; margin: 0px; padding: 0px;">yyyyMMdd</code> format</li>
<li style="box-sizing: border-box;">time : (optional) A departure time in <code style="background-color: #f8f8f8; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 1px solid rgb(221, 221, 221); box-sizing: border-box; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 12px; margin: 0px; padding: 0px;">hhmmss</code> format</li>
<li style="box-sizing: border-box;">train_type: (optional) A type of train<ul class="task-list" style="box-sizing: border-box; margin: 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">00: KTX</li>
<li style="box-sizing: border-box;">01: 새마을호</li>
<li style="box-sizing: border-box;">02: 무궁화호</li>
<li style="box-sizing: border-box;">03: 통근열차</li>
<li style="box-sizing: border-box;">04: 누리로</li>
<li style="box-sizing: border-box;">05: 전체 (기본값)</li>
<li style="box-sizing: border-box;">06: 공학직통</li>
<li style="box-sizing: border-box;">07: KTX-산천</li>
<li style="box-sizing: border-box;">08: ITX-새마을</li>
<li style="box-sizing: border-box;">09: ITX-청춘</li>
</ul>
</li>
</ul>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 15px; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
Below is a sample code of <code style="background-color: #f8f8f8; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 1px solid rgb(221, 221, 221); box-sizing: border-box; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 12px; margin: 0px; padding: 0px;">search_train</code>:</div>
<pre style="background-color: #f8f8f8; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: #333333; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 13px; line-height: 19px; margin-bottom: 15px; margin-top: 15px; overflow: auto; padding: 6px 10px; word-wrap: normal;"><code style="background: transparent; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: none; box-sizing: border-box; display: inline; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 12px; line-height: inherit; margin: 0px; padding: 0px; word-wrap: normal;">>>> dep = '서울'
>>> arr = '동대구'
>>> date = '20140815'
>>> time = '144000'
>>> trains = korail.search_train(dep, arr, date, time)
[[KTX] 8월 3일, 서울~부산(11:00~13:42) [특실:1][일반실:1] 예약가능,
[ITX-새마을] 8월 3일, 서울~부산(11:04~16:00) [일반실:1] 예약가능,
[무궁화호] 8월 3일, 서울~부산(11:08~16:54) [일반실:0] 입석 역발매중,
[ITX-새마을] 8월 3일, 서울~부산(11:50~16:50) [일반실:0] 입석 역발매중,
[KTX] 8월 3일, 서울~부산(12:00~14:43) [특실:1][일반실:1] 예약가능,
[KTX] 8월 3일, 서울~부산(12:30~15:13) [특실:1][일반실:1] 예약가능,
[KTX] 8월 3일, 서울~부산(12:40~15:45) [특실:1][일반실:1] 예약가능,
[KTX] 8월 3일, 서울~부산(12:55~15:26) [특실:1][일반실:1] 예약가능,
[KTX] 8월 3일, 서울~부산(13:00~15:37) [특실:1][일반실:1] 예약가능,
[KTX] 8월 3일, 서울~부산(13:10~15:58) [특실:1][일반실:1] 예약가능]
</code></pre>
<h3 style="box-sizing: border-box; color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 1.5em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/korail2#3-make-a-reservation" name="user-content-3-make-a-reservation" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>3. Make a reservation</h3>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 15px; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
You can get your tickes with <code style="background-color: #f8f8f8; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 1px solid rgb(221, 221, 221); box-sizing: border-box; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 12px; margin: 0px; padding: 0px;">tickets</code> method.</div>
<pre style="background-color: #f8f8f8; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: #333333; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 13px; line-height: 19px; margin-bottom: 15px; margin-top: 15px; overflow: auto; padding: 6px 10px; word-wrap: normal;"><code style="background: transparent; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: none; box-sizing: border-box; display: inline; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 12px; line-height: inherit; margin: 0px; padding: 0px; word-wrap: normal;">>>> trains = korail.search_train(dep, arr, date, time)
>>> seat = korail.reserve(trains[0])
정상처리되었습니다
동일시간대 예약발매내역이 있습니다.
>>> seat
[KTX] 8월 3일, 서울~부산(11:00~:) 16호 6A
</code></pre>
<h3 style="box-sizing: border-box; color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 1.5em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/korail2#4-get-tickets" name="user-content-4-get-tickets" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>4. Get tickets</h3>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 15px; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
You can get your tickes with <code style="background-color: #f8f8f8; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 1px solid rgb(221, 221, 221); box-sizing: border-box; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 12px; margin: 0px; padding: 0px;">tickets</code> method.</div>
<pre style="background-color: #f8f8f8; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: #333333; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 13px; line-height: 19px; margin-bottom: 15px; margin-top: 15px; overflow: auto; padding: 6px 10px; word-wrap: normal;"><code style="background: transparent; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: none; box-sizing: border-box; display: inline; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 12px; line-height: inherit; margin: 0px; padding: 0px; word-wrap: normal;">>>> tickets = k.tickets()
정상발매처리,정상발권처리
>>> tickets
[[KTX] 8월 10일, 동대구~울산(09:26~09:54) => 5호 4A, 13900원]
</code></pre>
<h2 style="color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/korail2#license" name="user-content-license" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a></h2>
<h2 style="color: #333333; font-family: 'Helvetica Neue', Helvetica, Arial, freesans, sans-serif; font-size: 1.75em; line-height: 1.225; margin-bottom: 16px; margin-top: 1em; padding-bottom: 0.3em; position: relative;">
How do I get the Korail API</h2>
<h2 style="color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<ol class="task-list" style="box-sizing: border-box; font-family: 'Helvetica Neue', Helvetica, Arial, freesans, sans-serif; font-size: 16px; font-weight: normal; line-height: 20.479999542236328px; margin-bottom: 16px; margin-top: 0px; padding: 0px 0px 0px 2em;">
<li style="box-sizing: border-box;">Extract Korail apk from mobile phone</li>
<li style="box-sizing: border-box;">Decompile apk using <a href="https://code.google.com/p/dex2jar/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">dex2jar</a></li>
<li style="box-sizing: border-box;">Read a jar code using <a href="http://jd.benow.ca/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">jdgui</a></li>
<li style="box-sizing: border-box;">Edit a smaili code</li>
<li style="box-sizing: border-box;">Recompile a new Korail apk using <a href="https://code.google.com/p/android-apktool/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">apktool</a></li>
<li style="box-sizing: border-box;">Key signing with <code style="background-color: #f7f7f7; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; box-sizing: border-box; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 13.600000381469727px; margin: 0px; padding: 0.2em 0px;">motizen-sign</code></li>
<li style="box-sizing: border-box;">Upload and run a new Korail apk</li>
<li style="box-sizing: border-box;">Capture packets and analyze the API</li>
</ol>
</h2>
<h2 style="color: #333333; font-family: 'Helvetica Neue', Helvetica, Arial, freesans, sans-serif; font-size: 1.75em; line-height: 1.225; margin-bottom: 16px; margin-top: 1em; padding-bottom: 0.3em; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/korail2/#todo" name="user-content-todo" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; bottom: 0px; box-sizing: border-box; color: #4183c4; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Todo</h2>
<h2 style="color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<ol class="task-list" style="box-sizing: border-box; font-family: 'Helvetica Neue', Helvetica, Arial, freesans, sans-serif; font-size: 16px; font-weight: normal; line-height: 20.479999542236328px; margin-bottom: 16px; margin-top: 0px; padding: 0px 0px 0px 2em;">
<li style="box-sizing: border-box;">Distinguish adult and child</li>
<li style="box-sizing: border-box;">Make an option to select special seat or general seat when reserving</li>
<li style="box-sizing: border-box;">Make an option to reserve multiple seats at a time</li>
<li style="box-sizing: border-box;">Implement payment API</li>
</ol>
</h2>
<h2 style="color: #333333; font-family: 'Helvetica Neue', Helvetica, Arial, freesans, sans-serif; font-size: 1.75em; line-height: 1.225; margin-bottom: 16px; margin-top: 1em; padding-bottom: 0.3em; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/korail2/#license" name="user-content-license" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; bottom: 0px; box-sizing: border-box; color: #4183c4; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>License</h2>
<h2 style="color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<div style="box-sizing: border-box; font-family: 'Helvetica Neue', Helvetica, Arial, freesans, sans-serif; font-size: 16px; font-weight: normal; line-height: 20.479999542236328px; margin-bottom: 16px;">
Source codes are distributed under BSD license.</div>
</h2>
<h2 style="color: #333333; font-family: 'Helvetica Neue', Helvetica, Arial, freesans, sans-serif; font-size: 1.75em; line-height: 1.225; margin-bottom: 16px; margin-top: 1em; padding-bottom: 0.3em; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/korail2/#author" name="user-content-author" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; bottom: 0px; box-sizing: border-box; color: #4183c4; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Author</h2>
<h2 style="color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<div style="box-sizing: border-box; font-family: 'Helvetica Neue', Helvetica, Arial, freesans, sans-serif; font-size: 16px; font-weight: normal; line-height: 20.479999542236328px;">
Taehoon Kim / <a href="http://carpedm20.github.io/about/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">@carpedm20</a></div>
</h2>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 15px; line-height: 25.5px; margin-top: 15px;">
</div>
carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.com3tag:blogger.com,1999:blog-6140308118243319568.post-52536601826330190202014-08-02T17:38:00.001+09:002014-08-03T08:47:30.780+09:00[Django] UNIST Auction<h1 style="border-bottom-color: rgb(221, 221, 221); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 2.5em; line-height: 1.7; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px !important; padding: 0px; position: relative;">
UNIST Auction</h1>
<iframe allowtransparency="true" frameborder="0" height="20" scrolling="0" src="http://ghbtns.com/github-btn.html?user=carpedm20&repo=UNIST-auction&type=watch&count=true" width="90"></iframe><iframe allowtransparency="true" frameborder="0" height="20" scrolling="0" src="http://ghbtns.com/github-btn.html?user=carpedm20&repo=UNIST-auction&type=follow" width="138"></iframe>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 15px; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
Auction for UNIST</div>
<h2 style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/UNIST-auction#copyright" name="user-content-copyright" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Copyright</h2>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 15px; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
Copyright <img align="absmiddle" alt=":copyright:" class="emoji" height="20" src="https://assets-cdn.github.com/images/icons/emoji/unicode/00a9.png" style="border: 0px; box-sizing: border-box; max-width: 100%;" title=":copyright:" width="20" /> 2014 Kim Tae Hoon.</div>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 15px; line-height: 25.5px; margin-top: 15px;">
The MIT License (MIT)</div>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif, 'Segoe UI Emoji', 'Segoe UI Symbol'; font-size: 15px; line-height: 25.5px; margin-top: 15px;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHPwygv4lUDrmdZwU6da7_RXSyNO4qBrr1gkkyQA_UlF6NhyphenhyphentU6u82vGzSrmOYeUhg1PEhDBNv9S9QSidThxCD9ExskbApynxTsfVIJdIMex0WATki2SfqatVcYfgfIaWjNVLQXFFB9MzI/s1600/auction.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHPwygv4lUDrmdZwU6da7_RXSyNO4qBrr1gkkyQA_UlF6NhyphenhyphentU6u82vGzSrmOYeUhg1PEhDBNv9S9QSidThxCD9ExskbApynxTsfVIJdIMex0WATki2SfqatVcYfgfIaWjNVLQXFFB9MzI/s1600/auction.png" height="455" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.com0tag:blogger.com,1999:blog-6140308118243319568.post-54177716082864025782014-08-02T11:05:00.003+09:002014-08-14T13:29:12.881+09:00[Python] LINE<h1 style="color: #333333; font-family: 'Helvetica Neue', Helvetica, Arial, freesans, sans-serif; font-size: 2.25em; line-height: 1.2; margin-bottom: 16px; margin-left: 0px; margin-right: 0px; margin-top: 0px !important; padding-bottom: 0.3em; position: relative;">
LINE</h1>
 <iframe allowtransparency="true" frameborder="0" height="20" scrolling="0" src="http://ghbtns.com/github-btn.html?user=carpedm20&repo=line&type=watch&count=true" width="90"></iframe><iframe allowtransparency="true" frameborder="0" height="20" scrolling="0" src="http://ghbtns.com/github-btn.html?user=carpedm20&repo=line&type=follow" width="138"></iframe>
<br/>
<a href="https://pypi.python.org/pypi/line" style="background: rgb(255, 255, 255); box-sizing: border-box; color: #4183c4; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 20.479999542236328px; text-decoration: none;"><img alt="PyPi version" data-canonical-src="https://pypip.in/v/line/badge.png?style=flat" src="https://camo.githubusercontent.com/094cb6a7b1754e5500075e7af40ecc95245f883c/68747470733a2f2f70797069702e696e2f762f6c696e652f62616467652e706e673f7374796c653d666c6174" style="border: 0px; box-sizing: border-box; max-width: 100%;" /></a><a href="https://pypi.python.org/pypi/line" style="background: rgb(255, 255, 255); box-sizing: border-box; color: #4183c4; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 20.479999542236328px; text-decoration: none;"><img alt="PyPi downloads" data-canonical-src="https://pypip.in/d/line/badge.png?style=flat" src="https://camo.githubusercontent.com/518ce287bfe3fac680957de23eed3fd0f1a3b0d2/68747470733a2f2f70797069702e696e2f642f6c696e652f62616467652e706e673f7374796c653d666c6174" style="border: 0px; box-sizing: border-box; max-width: 100%;" /></a><a href="https://pypi.python.org/pypi/line" style="background: rgb(255, 255, 255); box-sizing: border-box; color: #4183c4; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 20.479999542236328px; text-decoration: none;"><img alt="PyPi status" data-canonical-src="https://pypip.in/status/line/badge.svg?style=flat" src="https://camo.githubusercontent.com/41184da1fc8046ae94a04008c2d7dc79030eae0b/68747470733a2f2f70797069702e696e2f7374617475732f6c696e652f62616467652e7376673f7374796c653d666c6174" style="border: 0px; box-sizing: border-box; max-width: 100%;" /></a><a href="https://pypi.python.org/pypi/line" style="background: rgb(255, 255, 255); box-sizing: border-box; color: #4183c4; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16px; line-height: 20.479999542236328px; text-decoration: none;"><img alt="PyPi license" data-canonical-src="https://pypip.in/license/line/badge.svg?style=flat" src="https://camo.githubusercontent.com/c2558e795a372dc4a0fc4efba70f1935224a694c/68747470733a2f2f70797069702e696e2f6c6963656e73652f6c696e652f62616467652e7376673f7374796c653d666c6174" style="border: 0px; box-sizing: border-box; max-width: 100%;" /></a><br />
<div style="box-sizing: border-box; font-family: 'Helvetica Neue', Helvetica, Arial, freesans, sans-serif; font-size: 16px; line-height: 20.479999542236328px; margin-bottom: 16px;">
<div style="box-sizing: border-box; font-weight: normal; margin-bottom: 16px;">
<em style="box-sizing: border-box;">May the LINE be with you...</em></div>
<div style="font-weight: normal;">
The documentation is available at <a href="http://carpedm20.github.io/line/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">here</a></div>
<div style="font-weight: normal;">
<span style="font-size: 1.75em; line-height: 1.225;"><br /></span></div>
<span style="font-size: 1.75em; line-height: 1.225;">Screenshot</span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEji7MKn5kQMUUAYhqqcBqbYcS5_Mm4MUo9kmf9Oy1zY_MSOi3MSlw4CVTRuNKhtBXRFgWhe6Y4MpuV_2RYpf9e7UNIYIIpFTeb4enXbYBZ1A6N3isXw_aB6NEGA9tduERG42pEzacaLN8oK/s1600/%E1%84%89%E1%85%B3%E1%84%8F%E1%85%B3%E1%84%85%E1%85%B5%E1%86%AB%E1%84%89%E1%85%A3%E1%86%BA+2014-08-02+%E1%84%8B%E1%85%A9%E1%84%8C%E1%85%A5%E1%86%AB+10.47.15.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEji7MKn5kQMUUAYhqqcBqbYcS5_Mm4MUo9kmf9Oy1zY_MSOi3MSlw4CVTRuNKhtBXRFgWhe6Y4MpuV_2RYpf9e7UNIYIIpFTeb4enXbYBZ1A6N3isXw_aB6NEGA9tduERG42pEzacaLN8oK/s1600/%E1%84%89%E1%85%B3%E1%84%8F%E1%85%B3%E1%84%85%E1%85%B5%E1%86%AB%E1%84%89%E1%85%A3%E1%86%BA+2014-08-02+%E1%84%8B%E1%85%A9%E1%84%8C%E1%85%A5%E1%86%AB+10.47.15.png" height="400" width="640" /></a></div>
<div style="text-align: center;">
<ul class="task-list" style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, Arial, freesans, sans-serif; font-size: 16px; line-height: 20.479999542236328px; margin-bottom: 16px; margin-top: 0px; padding: 0px 0px 0px 2em; text-align: start;">
</ul>
<h2 style="color: #333333; font-family: 'Helvetica Neue', Helvetica, Arial, freesans, sans-serif; font-size: 1.75em; line-height: 1.225; margin-bottom: 16px; margin-top: 1em; padding-bottom: 0.3em; position: relative; text-align: start;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/line#license" name="user-content-license" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; bottom: 0px; box-sizing: border-box; color: #4183c4; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>License</h2>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, Arial, freesans, sans-serif; font-size: 16px; line-height: 20.479999542236328px; margin-bottom: 16px; text-align: start;">
Source codes are distributed under BSD license.</div>
<h2 style="color: #333333; font-family: 'Helvetica Neue', Helvetica, Arial, freesans, sans-serif; font-size: 1.75em; line-height: 1.225; margin-bottom: 16px; margin-top: 1em; padding-bottom: 0.3em; position: relative; text-align: start;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/line#author" name="user-content-author" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; bottom: 0px; box-sizing: border-box; color: #4183c4; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Author</h2>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, Arial, freesans, sans-serif; font-size: 16px; line-height: 20.479999542236328px; text-align: start;">
Taehoon Kim / <a href="http://carpedm20.github.io/about/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">@carpedm20</a></div>
</div>
carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.com0tag:blogger.com,1999:blog-6140308118243319568.post-12995866102340682902014-06-11T22:09:00.001+09:002014-06-11T22:09:55.335+09:00유니스트 버스 언제와?<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-ftigLI39UGhRjNL16nxHNDbMzpl7rJx6g5kbUqIdao-jFU-P0FHKpR3DrU-kw8Gz2MwLr-yvoUiNNedKA4Vz5p-DortGL7tccBrRFFyP8eZmfviPP5N3uI2GWxwTwDr_31P2YDbAHb-5/s1600/facebook.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-ftigLI39UGhRjNL16nxHNDbMzpl7rJx6g5kbUqIdao-jFU-P0FHKpR3DrU-kw8Gz2MwLr-yvoUiNNedKA4Vz5p-DortGL7tccBrRFFyP8eZmfviPP5N3uI2GWxwTwDr_31P2YDbAHb-5/s1600/facebook.png" height="240" width="640" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhKtoVqq7jT-XxSyyjUd6HhnrI7XZaOx08vqy3pXMeFzHnYMt3JFOiiktb27dREXv05AEyKMV_G_RPIcYACqV7zk-aTJQaV30UQ1eWA_SfCFoLEFtL_BVgj-c04nGmVTkAC_4JUljtqPlKG/s1600/screenshot.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhKtoVqq7jT-XxSyyjUd6HhnrI7XZaOx08vqy3pXMeFzHnYMt3JFOiiktb27dREXv05AEyKMV_G_RPIcYACqV7zk-aTJQaV30UQ1eWA_SfCFoLEFtL_BVgj-c04nGmVTkAC_4JUljtqPlKG/s1600/screenshot.png" height="400" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
Github : <a href="https://github.com/carpedm20/chrome-unist-bus">https://github.com/carpedm20/chrome-unist-bus</a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<br />carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.com0tag:blogger.com,1999:blog-6140308118243319568.post-34677421632202463222014-06-05T21:38:00.001+09:002014-08-25T16:02:38.508+09:00[Django] MovieTag<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEimpuOh_JU8o9lIcptmE9lnkVkJCWuxbnSGO-iWZxP_wnbuZwSPTBRbeYRgO-R5WAOyZH6tc89c33tPvVSJ3idIC1LbT6TiBgI0f3EYCor0WAU9gXwTfYNUWwQl1SVH5LxHqaVZGIBBKI7B/s1600/facebook.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEimpuOh_JU8o9lIcptmE9lnkVkJCWuxbnSGO-iWZxP_wnbuZwSPTBRbeYRgO-R5WAOyZH6tc89c33tPvVSJ3idIC1LbT6TiBgI0f3EYCor0WAU9gXwTfYNUWwQl1SVH5LxHqaVZGIBBKI7B/s1600/facebook.png" height="237" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16.363636016845703px; line-height: 23.272727966308594px; margin-bottom: 16px;">
Find a movie to watch with any tags you want!</div>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16.363636016845703px; line-height: 23.272727966308594px; margin-bottom: 16px;">
Tags are automatically generated with morpheme analysis of big data.</div>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16.363636016845703px; line-height: 23.272727966308594px; margin-bottom: 16px;">
Percentage of positive and negative reviews will be given through deep learning.</div>
<h2 style="color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 1.75em; line-height: 1.225; margin-bottom: 16px; margin-top: 1em; padding-bottom: 0.3em; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/movietag#documentation" name="user-content-documentation" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; bottom: 0px; box-sizing: border-box; color: #4183c4; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Documentation</h2>
<div style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16.363636016845703px; line-height: 23.272727966308594px; margin-bottom: 16px;">
The documentation is available at ???</div>
<h2 style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 1.75em; line-height: 1.225; margin-bottom: 16px; margin-top: 1em; padding-bottom: 0.3em; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/movietag#development-history" name="user-content-development-history" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; bottom: 0px; box-sizing: border-box; color: #4183c4; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Development History</h2>
<ol class="task-list" style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16.363636016845703px; line-height: 23.272727966308594px; margin-bottom: 16px; margin-top: 0px; padding: 0px 0px 0px 2em;">
<li style="box-sizing: border-box;">Plan to make a web service which can search any movie with <strong style="box-sizing: border-box;">tags</strong><ul class="task-list" style="box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding: 0px 0px 0px 2em;">
<li style="box-sizing: border-box;">saw a new feature <strong style="box-sizing: border-box;">Game tag</strong> from <strong style="box-sizing: border-box;">steam</strong></li>
<li style="box-sizing: border-box;">saw a restaurant recommendation service "<a href="http://www.diningcode.com/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">Dining code</a>" using big data (reviews from blogs)</li>
<li style="box-sizing: border-box;">want to find a movie not with a category like <strong style="box-sizing: border-box;">Romance</strong> but with a tag like <strong style="box-sizing: border-box;">first love</strong>,<strong style="box-sizing: border-box;">farewell</strong> etc.</li>
</ul>
</li>
<li style="box-sizing: border-box;">Movie review <strong style="box-sizing: border-box;">parsing</strong><ul class="task-list" style="box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding: 0px 0px 0px 2em;">
<li style="box-sizing: border-box;">save data as <strong style="box-sizing: border-box;">json</strong></li>
</ul>
</li>
<li style="box-sizing: border-box;"><strong style="box-sizing: border-box;">Morpheme</strong> analysis<ul class="task-list" style="box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding: 0px 0px 0px 2em;">
<li style="box-sizing: border-box;">first, used <a href="https://github.com/need4spd/lucene-Korean-Analyzer" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">lucene-korean-analyzer</a></li>
<li style="box-sizing: border-box;">have a weakness that cannot distinguish <strong style="box-sizing: border-box;">predicate</strong> and <strong style="box-sizing: border-box;">uninflected word</strong> and hard to get <strong style="box-sizing: border-box;">word frequencies</strong> from reviews</li>
<li style="box-sizing: border-box;">next, used <a href="https://bitbucket.org/eunjeon/mecab-ko" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">mecab-ko</a> and <a href="https://bitbucket.org/eunjeon/mecab-ko-dic" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">mecab-ko-dic</a></li>
<li style="box-sizing: border-box;">can get details from review like <strong style="box-sizing: border-box;">predicate</strong> and <strong style="box-sizing: border-box;">uninflected word</strong> information D4. Build a DB</li>
<li style="box-sizing: border-box;">to connect with <strong style="box-sizing: border-box;">django</strong>, write a python code that import json data to <strong style="box-sizing: border-box;">SQLite</strong></li>
<li style="box-sizing: border-box;">but too slow file-io and cannot write a multi-thread code because of file lock (estimated time to import all data was 6 days)</li>
<li style="box-sizing: border-box;">change DB to <strong style="box-sizing: border-box;">MySQL</strong></li>
<li style="box-sizing: border-box;">faster file-io and possible to write a multi-thread code (1~2 days)</li>
<li style="box-sizing: border-box;">but sorting a movie with a specific tag was too slow</li>
<li style="box-sizing: border-box;">plan to use <strong style="box-sizing: border-box;">Apache Cassandra</strong>, but found that it has slower read than write from google.</li>
<li style="box-sizing: border-box;">data was json, so used <strong style="box-sizing: border-box;">MongoDB</strong></li>
<li style="box-sizing: border-box;">data import was finished only in a few seconds with <code style="background-color: rgba(0, 0, 0, 0.0392157); border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; box-sizing: border-box; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 13.63636302947998px; margin: 0px; padding: 0.2em 0px;">mongoimport</code> (Assert failure on mongorestore (b.empty()) error occured because of huge json file. so split the data into small files)</li>
<li style="box-sizing: border-box;">DB querying speed was fater than <strong style="box-sizing: border-box;">MySQL</strong> (hooray~)</li>
<li style="box-sizing: border-box;">Conclusion : Text indexing of <strong style="box-sizing: border-box;">MongoDB</strong> make faster speed than raw query of <strong style="box-sizing: border-box;">MySQL</strong> +<strong style="box-sizing: border-box;">Django</strong></li>
</ul>
</li>
<li style="box-sizing: border-box;">Build a web<ul class="task-list" style="box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding: 0px 0px 0px 2em;">
<li style="box-sizing: border-box;">used <strong style="box-sizing: border-box;">Django webframework</strong></li>
<li style="box-sizing: border-box;">Back-end : used Django, <a href="http://south.aeracode.org/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">South</a>, <a href="https://github.com/frankban/django-endless-pagination" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">endless-pagination</a> etc.</li>
<li style="box-sizing: border-box;">Front-end : used jQuery, Bootstrap, <a href="http://okonski.org/twipsy-bootstrap/docs/javascript.html" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">Bootstrap-twipsy</a>, <a href="http://d3js.org/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">D3</a>, <a href="https://github.com/designmodo/Flat-UI" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">Flat-UI</a>, <a href="http://desandro.github.io/masonry/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">jQuery-Masonry</a>,<a href="https://github.com/desandro/imagesloaded" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">imagesloaded</a> etc.</li>
<li style="box-sizing: border-box;">complete <strong style="box-sizing: border-box;">tag search</strong> feature.</li>
<li style="box-sizing: border-box;">developing infinite scroll...</li>
</ul>
</li>
<li style="box-sizing: border-box;">Positive & Negative review<ul class="task-list" style="box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding: 0px 0px 0px 2em;">
<li style="box-sizing: border-box;">with review data and using <strong style="box-sizing: border-box;">Logistic regression</strong> and <strong style="box-sizing: border-box;">Deep learning</strong>, plan to distinguish reviews into positive and negative review.</li>
<li style="box-sizing: border-box;">first, make an adjective and noun list by using morpheme analysis.</li>
<li style="box-sizing: border-box;">star point of review and movie will be used as a <strong style="box-sizing: border-box;">label</strong> in machine learning</li>
</ul>
</li>
</ol>
<h2 style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 1.75em; line-height: 1.225; margin-bottom: 16px; margin-top: 1em; padding-bottom: 0.3em; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/movietag#developement-histroy-korean" name="user-content-developement-histroy-korean" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; bottom: 0px; box-sizing: border-box; color: #4183c4; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Developement Histroy (Korean)</h2>
<ol class="task-list" style="box-sizing: border-box; color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 16.363636016845703px; line-height: 23.272727966308594px; margin-bottom: 16px; margin-top: 0px; padding: 0px 0px 0px 2em;">
<li style="box-sizing: border-box;">영화를 <strong style="box-sizing: border-box;">태그</strong>로 검색하는 서비스를 만들기로 계획<ul class="task-list" style="box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding: 0px 0px 0px 2em;">
<li style="box-sizing: border-box;"><strong style="box-sizing: border-box;">steam</strong>의 게임 태그 라는 새로운 기능을 보게됨</li>
<li style="box-sizing: border-box;">빅데이터(블로그 글)를 이용해 음식점을 추천해 주는 <a href="http://www.diningcode.com/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">다이닝 코드</a> 를 보게됨</li>
<li style="box-sizing: border-box;">로멘스처럼 거대한 카테고라기 아닌 <strong style="box-sizing: border-box;">첫사랑</strong>, <strong style="box-sizing: border-box;">이별</strong> 과 같은 keyword로 영화를 찾고 싶음</li>
</ul>
</li>
<li style="box-sizing: border-box;">영화 리뷰 <strong style="box-sizing: border-box;">파싱</strong><ul class="task-list" style="box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding: 0px 0px 0px 2em;">
<li style="box-sizing: border-box;">json 파일로 저장</li>
<li style="box-sizing: border-box;">json 에서 tag를 {"text": "첫사랑", "freq": 1} 로 저장했으나, 쿼리 낭비를 막기 위해 {"첫사랑": 1} 로 구조 변환</li>
</ul>
</li>
<li style="box-sizing: border-box;"><strong style="box-sizing: border-box;">형태소</strong> 분석<ul class="task-list" style="box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding: 0px 0px 0px 2em;">
<li style="box-sizing: border-box;">처음에는 <a href="https://github.com/need4spd/lucene-Korean-Analyzer" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">lucene-korean-analyzer</a>를 사용</li>
<li style="box-sizing: border-box;">용언, 체언을 구분 못하고, 초기 버전에는 단어의 frequency를 알 방법이 없는 단점이 있음</li>
<li style="box-sizing: border-box;">다음으로 사용한 opensource는 <a href="https://bitbucket.org/eunjeon/mecab-ko" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">mecab-ko</a> 와 <a href="https://bitbucket.org/eunjeon/mecab-ko-dic" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">mecab-ko-dic</a></li>
<li style="box-sizing: border-box;">용언, 체언을 세세하게 분류한 결과가 나오는 등의 장점</li>
</ul>
</li>
<li style="box-sizing: border-box;">DB 구축<ul class="task-list" style="box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding: 0px 0px 0px 2em;">
<li style="box-sizing: border-box;">처음에는 django 프로젝트와 연동을 위해 python 코드로 <strong style="box-sizing: border-box;">SQLite</strong> 에 집어 넣음</li>
<li style="box-sizing: border-box;">DB에 import 하는 속도(file-io)가 너무 느림 & file-io에 lock이 걸려 멀티쓰레드를만들 수 없음 (6일 정도 소요 될 거라 예상)</li>
<li style="box-sizing: border-box;"><strong style="box-sizing: border-box;">MySQL</strong> 로 DB 변경</li>
<li style="box-sizing: border-box;">넣는 속도가 sqlite 보다 월등히 빠르며, 멀티쓰레드로 돌려도 lock 처리를 MySQL이 알아서 해주는 장점 (1~2일 소요)</li>
<li style="box-sizing: border-box;">하지만 특정 tag에 대한 영화들을 tag의 frequency로 정렬하는 속도가 느림.</li>
<li style="box-sizing: border-box;"><strong style="box-sizing: border-box;">Apache Cassandra</strong> 를 사용하려 했으나 짧은 구글링으로 write보다 read가 느리다는 글을 보게됨. read가 월등히 많을것이기 때문에 탈락</li>
<li style="box-sizing: border-box;">파싱 결과가 json이라는 것에 착안해 <strong style="box-sizing: border-box;">MongoDB</strong>를 사용</li>
<li style="box-sizing: border-box;"><code style="background-color: rgba(0, 0, 0, 0.0392157); border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; box-sizing: border-box; font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; font-size: 13.63636302947998px; margin: 0px; padding: 0.2em 0px;">mongoimport</code>를 이용해 몇 초만에 db에 들어감 (json파일이 너무 커서 Assert failure on mongorestore (b.empty()) 오류 발생. 그래서 작게 잘라 넣었음)</li>
<li style="box-sizing: border-box;">DB querying 속도가 월등히 빨라짐 (만세!)</li>
<li style="box-sizing: border-box;">결론 : <strong style="box-sizing: border-box;">MongoDB</strong>의 Text indexing 기능 때문에 raw query가 <strong style="box-sizing: border-box;">MySQL</strong> + <strong style="box-sizing: border-box;">Django</strong> ORM 보다 훨씬 빠른것으로 보인다</li>
</ul>
</li>
<li style="box-sizing: border-box;">Web 구축<ul class="task-list" style="box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding: 0px 0px 0px 2em;">
<li style="box-sizing: border-box;"><strong style="box-sizing: border-box;">Django webframework</strong> 사용 (이번 기회에 <strong style="box-sizing: border-box;">MEAN</strong> stack을 공부하려고 했으나... 빠른 개발을 위해 포기)</li>
<li style="box-sizing: border-box;">Back-end : Django, <a href="http://south.aeracode.org/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">South</a>, <a href="https://github.com/frankban/django-endless-pagination" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">endless-pagination</a> 등 사용</li>
<li style="box-sizing: border-box;">Front-end : jQuery, Bootstrap, <a href="http://okonski.org/twipsy-bootstrap/docs/javascript.html" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">Bootstrap-twipsy</a>, <a href="http://d3js.org/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">D3</a>, <a href="https://github.com/designmodo/Flat-UI" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">Flat-UI</a>, <a href="http://desandro.github.io/masonry/" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">jQuery-Masonry</a>,<a href="https://github.com/desandro/imagesloaded" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; box-sizing: border-box; color: #4183c4; text-decoration: none;">imagesloaded</a> 등 사용</li>
<li style="box-sizing: border-box;">태그 검색 기능 완성</li>
<li style="box-sizing: border-box;">infinite scroll 기능 개발 중...</li>
</ul>
</li>
<li style="box-sizing: border-box;">긍정 부정 리뷰<ul class="task-list" style="box-sizing: border-box; margin-bottom: 0px; margin-top: 0px; padding: 0px 0px 0px 2em;">
<li style="box-sizing: border-box;">파싱한 리뷰 데이터를 이용해 리뷰의 긍정, 부정을 먼저 단일 형용사, 명사와 자주 같이 등장하는 형용사, 명사 pair들을 이용해 <strong style="box-sizing: border-box;">Logistic regression</strong> 을 이용해 본 후에 <strong style="box-sizing: border-box;">Deep learning</strong>을 이용해 분석할 계획</li>
<li style="box-sizing: border-box;">먼저 리뷰를 형태소 분석을 통해서 명사, 형용사 리스트를 만듦</li>
<li style="box-sizing: border-box;">리뷰에 어떤 형용사와 명사가 사용되었는지를 바탕으로 learning 시작</li>
<li style="box-sizing: border-box;">learning시 label은 리뷰의 별점 및 영화의 평균 별점이 사용될 예정</li>
</ul>
</li>
</ol>
<h2 style=" color: #333333; font-family: 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, freesans, sans-serif; font-size: 1.75em; line-height: 1.225; margin-bottom: 16px; margin-top: 1em; padding-bottom: 0.3em; position: relative;">
<a aria-hidden="true" class="anchor" href="https://github.com/carpedm20/movietag#screenshot" name="user-content-screenshot" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; bottom: 0px; box-sizing: border-box; color: #4183c4; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Screenshot</h2>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjH0ROA6SNgOfjUHFR4hQjk3X-H18sUGy8roKjj_6cN1BUlzrupnjBr9F_E_uITK7CEkWzE049ubaD1rd8L_u1GcmcnjGsJNhS1J2DR9IGOauGUWdhkoHdTT0OaUMAlmzm_9BgE-lH5cOfj/s1600/logo_dark.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjH0ROA6SNgOfjUHFR4hQjk3X-H18sUGy8roKjj_6cN1BUlzrupnjBr9F_E_uITK7CEkWzE049ubaD1rd8L_u1GcmcnjGsJNhS1J2DR9IGOauGUWdhkoHdTT0OaUMAlmzm_9BgE-lH5cOfj/s1600/logo_dark.png" height="200" width="200" /></a><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgzbrEp0PZ3NNn3zIadKcNSItj6VjE7ARjC45cxApOaPLLVY99jBChlET6Ze6Y0DUqcGk724gajf_LIZN1ZB2jTqNw0b6af39i86F1yoVZ-OYDqxhix6l1-gDqRkbXrVMmxdfNZtEa8pajK/s1600/logo_red.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgzbrEp0PZ3NNn3zIadKcNSItj6VjE7ARjC45cxApOaPLLVY99jBChlET6Ze6Y0DUqcGk724gajf_LIZN1ZB2jTqNw0b6af39i86F1yoVZ-OYDqxhix6l1-gDqRkbXrVMmxdfNZtEa8pajK/s1600/logo_red.png" height="200" width="200" /></a></div>
<br />
<div style="text-align: center;">
<b>* 2014.06.04 *</b></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg900GqlWUaMxEkacJ6R2V59I_mrf5P9YBEd4td4Vo_goZYyp3THHlrAYz8HCuxaL_CkpJTZFYgUiwtdg9DUzeXTA_C9h0VHMWb4-uhAWNMoAGCOt3XUeThhgfeheP0RsGnH6hhLYvQo7cI/s1600/screenshot.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg900GqlWUaMxEkacJ6R2V59I_mrf5P9YBEd4td4Vo_goZYyp3THHlrAYz8HCuxaL_CkpJTZFYgUiwtdg9DUzeXTA_C9h0VHMWb4-uhAWNMoAGCOt3XUeThhgfeheP0RsGnH6hhLYvQo7cI/s1600/screenshot.png" height="632" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<b>* 2014.06.07 *</b></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiEYGfOR9Lm3tOnHactnaVH9SxdvU1osH-VR30HGzILQn9oNL57plBXoK1CFzIJSONbpn6TIHYO_Ymq2oexrczTuTcS0RsD8G_V2hVkkvRnqBFR00Tzgu5HGlP1URBHA9XA4CZwV0yCP45V/s1600/screenshot4.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiEYGfOR9Lm3tOnHactnaVH9SxdvU1osH-VR30HGzILQn9oNL57plBXoK1CFzIJSONbpn6TIHYO_Ymq2oexrczTuTcS0RsD8G_V2hVkkvRnqBFR00Tzgu5HGlP1URBHA9XA4CZwV0yCP45V/s1600/screenshot4.png" height="528" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgYZLXWGCqftbabXyMfcohVNKgLZDxLPT_FemVYRx6RMu8cTWTKdH53MkQG-8NrbWd0dLa7VX1qEmnC3kt-5nAvEPEfojafj29VyuLhLjCwKR6kRp94XxbAi4x5YgozG9b54-V-duLt7btq/s1600/screenshot2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgYZLXWGCqftbabXyMfcohVNKgLZDxLPT_FemVYRx6RMu8cTWTKdH53MkQG-8NrbWd0dLa7VX1qEmnC3kt-5nAvEPEfojafj29VyuLhLjCwKR6kRp94XxbAi4x5YgozG9b54-V-duLt7btq/s1600/screenshot2.png" height="640" width="475" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjje1zqUW4SLCBRrkhvbVj3RJL4A8AgN0StruxUYpDkY549r53eDsXIoV9S8uuM2LovB3nKFANUS1ymF_OjIarG7SIhJoIdqvG2KwE9FO4eyhXWQ45cq-W3XwAmdMsGU1w-mLPz-Hrnp0Hk/s1600/screenshot3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjje1zqUW4SLCBRrkhvbVj3RJL4A8AgN0StruxUYpDkY549r53eDsXIoV9S8uuM2LovB3nKFANUS1ymF_OjIarG7SIhJoIdqvG2KwE9FO4eyhXWQ45cq-W3XwAmdMsGU1w-mLPz-Hrnp0Hk/s1600/screenshot3.png" height="640" width="439" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
Github : <a href="https://github.com/carpedm20/movietag">https://github.com/carpedm20/movietag</a></div>
<br />carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.com0tag:blogger.com,1999:blog-6140308118243319568.post-41541957797502613102014-06-01T10:52:00.002+09:002014-06-01T12:58:12.292+09:00Ubuntu에서 Ultrasurf 설치 및 Python 에서의 사용<b>- Ubuntu에서 Ultrasurf 설치</b><br />
<br />
1. Wine 설치<br />
<br />
$ sudo add-apt-repository ppa:ubuntu-wine/ppa<br />
$ sudo apt-get update<br />
$ sudo apt-get install wine<br />
<br />
2. Ultrasurf 다운로드 및 Wine 으로 Ultrasurf 실행<br />
<br />
$ wget <a href="http://ultrasurf.us/download/u.zip">http://ultrasurf.us/download/u.zip</a><br />
$ unzip u.zip<br />
$ chmod 777 u1301.exe<br />
$ ./u1301.exe<br />
$ wine u1301.exe &<br />
<br />
ps. fixme:~~ 같은 오류는 무시하면 됨.<br />
<br />
<b>- Python에서 Ultrasurf 이용</b><br />
<b>
</b>
<br />
<pre style="background: rgb(0, 0, 0); color: #f8f8f8; font-family: Consolas, 'Lucida Console', 'DejaVu Sans Mono', Monaco, 'Courier New', monospace; font-size: 0.9333em; line-height: 1.5em; padding: 4px;"><b><span style="color: #e28964;">import</span> urllib
<span style="color: #e28964;">import</span> requests
proxies<span style="color: #e28964;">=</span>{<span style="color: #65b042;">'http'</span>:<span style="color: #65b042;">'http://127.0.0.1:9666'</span>}
<span style="color: #aeaeae; font-style: italic;">#URL you would like to access via Ultrasurf</span>
url <span style="color: #e28964;">=</span> <span style="color: #65b042;">"http://carpedm20.blogspot.com"</span>
<span style="color: #aeaeae; font-style: italic;">#Retrieve webpage at url via ultrasurf</span>
r <span style="color: #e28964;">=</span> urllib.urlopen(url, <span style="color: #3e87e3;">proxies</span><span style="color: #e28964;">=</span>proxies)
r <span style="color: #e28964;">=</span> requests.get(url, <span style="color: #3e87e3;">proxies</span><span style="color: #e28964;">=</span>proxies)</b></pre>
<b>
<br />
<span style="font-size: x-small;">reference : <a href="http://remotalks.blogspot.kr/2013/08/running-ultrasurf-in-ubuntu.html">http://remotalks.blogspot.kr/2013/08/running-ultrasurf-in-ubuntu.html</a></span><br />
</b>carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.com0tag:blogger.com,1999:blog-6140308118243319568.post-15631140941825716812014-05-29T21:13:00.001+09:002014-08-02T10:25:43.156+09:00밥먹기 십오분전 - 유니스트<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEisbekZd4G1UqVqbVMCCGeLQvgN7LY_tGlyDdfmuEVt-OdG2aIP6FTUeBvexUzyhkznH8zplENNwYcSTSBv8tMVNpAvkRLbKp-W2xHWb-irv40WhXVuZDR0D_4ee3xPIWMqYywe5IWjE1uf/s1600/logo3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEisbekZd4G1UqVqbVMCCGeLQvgN7LY_tGlyDdfmuEVt-OdG2aIP6FTUeBvexUzyhkznH8zplENNwYcSTSBv8tMVNpAvkRLbKp-W2xHWb-irv40WhXVuZDR0D_4ee3xPIWMqYywe5IWjE1uf/s1600/logo3.png" height="200" width="200" /></a> <a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0LBaq8HS19LUp4Dc7TZfTQU3kwM1wYbgDWzM32l8PoGnwN6FBNJu2UamIk0hsTwZFSGGHFkcSX_7oht3wfHBFZKYAG6GsjUd6BzD58-_d-WTzZCQbPwSNCMgivEXm3_fpfArqNoWuu0ni/s1600/logo_with_carpedm20.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0LBaq8HS19LUp4Dc7TZfTQU3kwM1wYbgDWzM32l8PoGnwN6FBNJu2UamIk0hsTwZFSGGHFkcSX_7oht3wfHBFZKYAG6GsjUd6BzD58-_d-WTzZCQbPwSNCMgivEXm3_fpfArqNoWuu0ni/s1600/logo_with_carpedm20.png" height="200" width="200" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgjXz7IqWSwCDcAbvtNu3fbg9JxPhs_0o8hyphenhypheni_sUZL1AN1Sy3TFjE2THdUfK6QrVsZzZeK7GCGkhUCBRMoFaJ1Jm93EIYGqb6CgeGpNEG7kU-66vyNEGiyoKfaWSO4IoQn5Btg3DB_AqDmn/s1600/facebook3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgjXz7IqWSwCDcAbvtNu3fbg9JxPhs_0o8hyphenhypheni_sUZL1AN1Sy3TFjE2THdUfK6QrVsZzZeK7GCGkhUCBRMoFaJ1Jm93EIYGqb6CgeGpNEG7kU-66vyNEGiyoKfaWSO4IoQn5Btg3DB_AqDmn/s1600/facebook3.png" height="237" width="640" /></a></div>
<br />
<div style="text-align: center;">
<b>* 2014.05.30 *</b></div>
<div style="text-align: center;">
<b><br /></b></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmunTpCKEyUNStCHQ3igrFghg_jzBJiMljzAq3ka_syu1QzU_4Q4wkw8TGvsdNvqcJCBDBcEkpcjg9nGiWDKau7YjQwpO4bY2BaBaqbFBjtYhxduty3AquGKFFpVatm1IuUJKnO-_0SOIr/s1600/screenshot2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmunTpCKEyUNStCHQ3igrFghg_jzBJiMljzAq3ka_syu1QzU_4Q4wkw8TGvsdNvqcJCBDBcEkpcjg9nGiWDKau7YjQwpO4bY2BaBaqbFBjtYhxduty3AquGKFFpVatm1IuUJKnO-_0SOIr/s1600/screenshot2.png" /></a></div>
<div style="text-align: center;">
<b><br /></b></div>
<div style="text-align: center;">
<b><br /></b></div>
<div style="text-align: center;">
<b>* 2014.05.29 *</b></div>
<div style="text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhDEyEJ-DK2XJw7HAOCPuo-hbQ5vdEBxvMmHHSz-CswflPjn5BxXtJQOrOYvTupT8gaJ-xWPOwFoIdc-_WCNR0b7ljNnaFT5_tHxAzCbxg1_dimJjiCSYL_yOLuhfil4fepprhxm-h042zm/s1600/screenshot.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhDEyEJ-DK2XJw7HAOCPuo-hbQ5vdEBxvMmHHSz-CswflPjn5BxXtJQOrOYvTupT8gaJ-xWPOwFoIdc-_WCNR0b7ljNnaFT5_tHxAzCbxg1_dimJjiCSYL_yOLuhfil4fepprhxm-h042zm/s1600/screenshot.png" height="640" width="539" /></a></div>
<div style="text-align: center;">
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgaVMh0J7g1AAFKOoGWHz0nXCtjXfjh5qjIzUVeG8dQjDgMAi6qzriKtTqZGgmmJXMoq6Wb9-JBxIGEOvXnpS1BiOupLXloihxDO4DPTUU19yoWDHXfw9rLtaGvTsXZ55Pb6-p-wl5X_KXH/s1600/10461347_272318286286326_3047030706738715940_n.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgaVMh0J7g1AAFKOoGWHz0nXCtjXfjh5qjIzUVeG8dQjDgMAi6qzriKtTqZGgmmJXMoq6Wb9-JBxIGEOvXnpS1BiOupLXloihxDO4DPTUU19yoWDHXfw9rLtaGvTsXZ55Pb6-p-wl5X_KXH/s1600/10461347_272318286286326_3047030706738715940_n.png" /></a></div>
<br /></div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
Facebook : <a href="https://www.facebook.com/unistbap">https://www.facebook.com/unistbap</a></div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
Github : <a href="https://github.com/carpedm20/bap-15min-before">https://github.com/carpedm20/bap-15min-before</a></div>
<br />carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.com0tag:blogger.com,1999:blog-6140308118243319568.post-65794554246478470512014-05-22T15:16:00.001+09:002014-05-22T15:26:25.355+09:00콜로세움 - 1 week hackathon<div style="text-align: center;">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzhIZCIXwGbVW9YD732TXejtbiNRm5Sep-mjzn6zLU0yFhtD2TQsZs_o4J2TBtZ4UUvQgLQ5eT7Bng8HkFUKFsekkC2qhNBAsuMQUiP7PpM3oVO6pgXAOJmGxwdxEzG8x-Ptd4pkgLcP3V/s1600/square_logo.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzhIZCIXwGbVW9YD732TXejtbiNRm5Sep-mjzn6zLU0yFhtD2TQsZs_o4J2TBtZ4UUvQgLQ5eT7Bng8HkFUKFsekkC2qhNBAsuMQUiP7PpM3oVO6pgXAOJmGxwdxEzG8x-Ptd4pkgLcP3V/s1600/square_logo.png" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg5FCR80irZ1OHGsuTDtSWM8V1-JTGR6-GXK7l-vFgAweulXNmH7mEbzP5F2EFamzghVbENC0JQKZIiij5yBW9zmMOzErvue-uCwSZMFFRBu59UtWAwokwXGslvAIpeRWA-AAVDYpjArSFd/s1600/screenshot.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg5FCR80irZ1OHGsuTDtSWM8V1-JTGR6-GXK7l-vFgAweulXNmH7mEbzP5F2EFamzghVbENC0JQKZIiij5yBW9zmMOzErvue-uCwSZMFFRBu59UtWAwokwXGslvAIpeRWA-AAVDYpjArSFd/s1600/screenshot.png" height="640" width="624" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
</div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
Github : <a href="https://github.com/carpedm20/colosseum">https://github.com/carpedm20/colosseum</a></div>
carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.com0tag:blogger.com,1999:blog-6140308118243319568.post-60144204934815063302014-05-08T11:55:00.002+09:002014-05-28T14:41:11.984+09:00유니콘 - 유니스트 콘텐츠 공유<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEip0JoQPlJelKAzTYoiAutWb1Q7jVKt354mG7-5ABfLEZYg0-mgn06AI0CMsdYQZCaKEkuSiU6DME-zIAN1eq1Mq-FENvbhI-RxFaTpHMvHv_6hHY1mToowhhC4ZFI2gzVDcaCJbuhEPMTG/s1600/unicon_logo5.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEip0JoQPlJelKAzTYoiAutWb1Q7jVKt354mG7-5ABfLEZYg0-mgn06AI0CMsdYQZCaKEkuSiU6DME-zIAN1eq1Mq-FENvbhI-RxFaTpHMvHv_6hHY1mToowhhC4ZFI2gzVDcaCJbuhEPMTG/s1600/unicon_logo5.png" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhD3Ckdy20pD6hk_12uZiMRFRRaLQM4d_uJpfVCYdvFs4J7N13_bVLekT5H_6jpcSP0HfjSuf0kufozYVV_BcoyoVMjARXI7PZ1JKawuiKXU29IEkNWvflTiyZs459wh9TFHetxElOzXrCt/s1600/logo_final.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhD3Ckdy20pD6hk_12uZiMRFRRaLQM4d_uJpfVCYdvFs4J7N13_bVLekT5H_6jpcSP0HfjSuf0kufozYVV_BcoyoVMjARXI7PZ1JKawuiKXU29IEkNWvflTiyZs459wh9TFHetxElOzXrCt/s1600/logo_final.png" height="175" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<b>- Screenshot -</b></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgaFM7bhZwb_YX_LthJKfmswUCDQKOAjhtQqsVqXCechNP3EtKZ7fM8CVUNohkaGP7bQQoPVxMzeRA2M_Yrj9t6OpeB50VWhpu438x3Qm9HqTc7x1OhX1caUGIBJzrrG2eoCmtom-hODJv-/s1600/screenshot.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgaFM7bhZwb_YX_LthJKfmswUCDQKOAjhtQqsVqXCechNP3EtKZ7fM8CVUNohkaGP7bQQoPVxMzeRA2M_Yrj9t6OpeB50VWhpu438x3Qm9HqTc7x1OhX1caUGIBJzrrG2eoCmtom-hODJv-/s1600/screenshot.png" height="516" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
github : <a href="https://github.com/carpedm20/Unicon">https://github.com/carpedm20/Unicon</a></div>
<br />carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.com0tag:blogger.com,1999:blog-6140308118243319568.post-90343311793047723492014-05-06T11:06:00.002+09:002014-05-23T12:38:43.410+09:00유니스트 내가 전해주까 - 유내전<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgY9mZVfo8jt5cZ50cNi8RdA5ybB1pUfIsFNXNKLcwKAo_eD5J4fhP_bunRV7Ah0Gq0b9dMnB3yOJSfwg9CGamqTIKhq2HRLB7LJIlu3__ofF1XPrgZmDSQEXG1D023J_43mcrK3e63WZGj/s1600/UNIST_FedEx.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgY9mZVfo8jt5cZ50cNi8RdA5ybB1pUfIsFNXNKLcwKAo_eD5J4fhP_bunRV7Ah0Gq0b9dMnB3yOJSfwg9CGamqTIKhq2HRLB7LJIlu3__ofF1XPrgZmDSQEXG1D023J_43mcrK3e63WZGj/s1600/UNIST_FedEx.png" /></a>
<br />
<iframe allowtransparency="true" frameborder="0" height="20" scrolling="0" src="http://ghbtns.com/github-btn.html?user=carpedm20&repo=UNIST-FedEx&type=watch&count=true" width="90"></iframe><iframe allowtransparency="true" frameborder="0" height="20" scrolling="0" src="http://ghbtns.com/github-btn.html?user=carpedm20&repo=UNIST-FedEx&type=follow" width="138"></iframe>
<br />
<h2 style="color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
What is UNIST FedEx</h2>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15.454545021057129px; line-height: 23.18181800842285px; margin-bottom: 15px; margin-top: 15px;">
This is a python code for UNIST FedEx bot.</div>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15.454545021057129px; line-height: 23.18181800842285px; margin-bottom: 15px; margin-top: 15px;">
This is a program that uploads anonymous posts to Facebook page by using google sheet.</div>
<h2 style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<a class="anchor" href="https://github.com/carpedm20/UNIST-FedEx#links" name="user-content-links" style="bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Links</h2>
<ul style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15.454545021057129px; line-height: 23.18181800842285px; margin: 15px 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">Facebook : <a href="https://www.facebook.com/unistfedex" style="box-sizing: border-box; color: #4183c4; text-decoration: none;">https://www.facebook.com/unistfedex</a></li>
<li style="box-sizing: border-box;">Upload posts : <a href="http://goo.gl/8Epbui" style="box-sizing: border-box; color: #4183c4; text-decoration: none;">http://goo.gl/8Epbui</a></li>
</ul>
<h2 style="color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<a class="anchor" href="https://github.com/carpedm20/UNIST-FedEx#copyright" name="user-content-copyright" style="bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Copyright</h2>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15.454545021057129px; line-height: 23.18181800842285px; margin-bottom: 15px; margin-top: 15px;">
Copyright (c) 2014 Kim Tae Hoon</div>
<h2 style="color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<a class="anchor" href="https://github.com/carpedm20/UNIST-FedEx#screenshots" name="user-content-screenshots" style="bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Screenshots</h2>
<div class="separator" style="clear: both; text-align: center;">
* 2014.05.23 *</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiuV63mCKbOm31C4-NUjbGN-btiYDK66pZEzIzWTnkdrgjjJTF4tuCH9hPfVja53ZROl53dzDredKDGLBLTn0b46FgpOxI7T_sK6fEjmRZAp038zXt35JGHArhM0V1IUv1FyCNkLtFHI4CD/s1600/end.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiuV63mCKbOm31C4-NUjbGN-btiYDK66pZEzIzWTnkdrgjjJTF4tuCH9hPfVja53ZROl53dzDredKDGLBLTn0b46FgpOxI7T_sK6fEjmRZAp038zXt35JGHArhM0V1IUv1FyCNkLtFHI4CD/s1600/end.png" height="640" width="527" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
* 2014.05.07 *</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9TQWPLNy1pgbaaoKJVPS3iTRur0mesHFddXttku1j0uyYfLCiVkDJU6PfYSO11SY-j_-_J1YoqlypLDk2NKaODoStwb9ufU4mXMdBzUo4KZnoRuQsS6bhoQZKKIkYLmq_cht8ADoNvlKB/s1600/2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9TQWPLNy1pgbaaoKJVPS3iTRur0mesHFddXttku1j0uyYfLCiVkDJU6PfYSO11SY-j_-_J1YoqlypLDk2NKaODoStwb9ufU4mXMdBzUo4KZnoRuQsS6bhoQZKKIkYLmq_cht8ADoNvlKB/s1600/2.png" height="640" width="636" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
* 2014.05.06 *</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div style="text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZSKiuBFSC-M1WfS3ueAHJf5cM8h272AJ1NSTQYXjqG2pgi2g6FNYnvypEQTPhVhkJUfm6r9wkaVilaDEwZ4gN_a8lHerBhknlWhZBu1iXdXRg_hGTvo2Z-TNm8QDooNqJ9raYK6cF_fef/s1600/UNIST_Dilivery.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZSKiuBFSC-M1WfS3ueAHJf5cM8h272AJ1NSTQYXjqG2pgi2g6FNYnvypEQTPhVhkJUfm6r9wkaVilaDEwZ4gN_a8lHerBhknlWhZBu1iXdXRg_hGTvo2Z-TNm8QDooNqJ9raYK6cF_fef/s1600/UNIST_Dilivery.png" height="628" width="640" /></a><br />
<br />
* Google Docs *<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZVP96ZF6J3uGupYIgT9wh93zYuFGETaeHynbL84_2J4Nv8fNccNVVM_coZx9kbFRRZIlxBYU0sQKL3Fty1fril6idJ4pisZAaeZp_5cwdqQMZnsYSr-Be0EkY2Ap_2kGyT90WPZRQd4jX/s1600/docs.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjZVP96ZF6J3uGupYIgT9wh93zYuFGETaeHynbL84_2J4Nv8fNccNVVM_coZx9kbFRRZIlxBYU0sQKL3Fty1fril6idJ4pisZAaeZp_5cwdqQMZnsYSr-Be0EkY2Ap_2kGyT90WPZRQd4jX/s1600/docs.png" height="640" width="620" /></a></div>
<br /></div>
carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.com0tag:blogger.com,1999:blog-6140308118243319568.post-43069439178504235322014-04-13T11:34:00.003+09:002014-05-08T12:32:22.512+09:00프로젝트 겨태<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcfp4_60WLEk5pxwqWnirDT0Wx1udWM5z_W8cZTZQvXiOxu-gTxDH5umXjXdmvwS3R5wNOCFO0Q_5Z5z1MO6rMYdbVh7XTmExSbhavgVBj4iHRlVWeIzqTnehsGVi7xJCxeTJjzqSvWkGG/s1600/gyutae.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcfp4_60WLEk5pxwqWnirDT0Wx1udWM5z_W8cZTZQvXiOxu-gTxDH5umXjXdmvwS3R5wNOCFO0Q_5Z5z1MO6rMYdbVh7XTmExSbhavgVBj4iHRlVWeIzqTnehsGVi7xJCxeTJjzqSvWkGG/s1600/gyutae.png" height="240" width="640" /></a></div>
<h2 style="color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<a class="anchor" href="https://github.com/carpedm20/Dada-study#objective" name="user-content-objective" style="bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Objective</h2>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15.454545021057129px; line-height: 23.18181800842285px; margin-bottom: 15px; margin-top: 15px;">
Make a next-gen study group</div>
<h2 style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<a class="anchor" href="https://github.com/carpedm20/Dada-study#progress" name="user-content-progress" style="bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Progress</h2>
<ol style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15.454545021057129px; line-height: 23.18181800842285px; margin: 15px 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">Core<ul style="box-sizing: border-box; margin: 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">models<ul style="box-sizing: border-box; margin: 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">study_group</li>
</ul>
</li>
<li style="box-sizing: border-box;">views<ul style="box-sizing: border-box; margin: 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">view_calendar</li>
<li style="box-sizing: border-box;">create_study_group</li>
<li style="box-sizing: border-box;">delete_study_group</li>
<li style="box-sizing: border-box;">join_study_group</li>
<li style="box-sizing: border-box;">view_study_group</li>
</ul>
</li>
</ul>
</li>
<li style="box-sizing: border-box;">Board<ul style="box-sizing: border-box; margin: 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">models<ul style="box-sizing: border-box; margin: 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">board</li>
<li style="box-sizing: border-box;">post</li>
</ul>
</li>
<li style="box-sizing: border-box;">views<ul style="box-sizing: border-box; margin: 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">create_board</li>
<li style="box-sizing: border-box;">view_board_list</li>
<li style="box-sizing: border-box;">create_post</li>
<li style="box-sizing: border-box;">edit_post</li>
<li style="box-sizing: border-box;">delete_post</li>
<li style="box-sizing: border-box;">create_comment</li>
<li style="box-sizing: border-box;">delete_comment</li>
<li style="box-sizing: border-box;">view_post</li>
</ul>
</li>
</ul>
</li>
<li style="box-sizing: border-box;">Event<ul style="box-sizing: border-box; margin: 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">models<ul style="box-sizing: border-box; margin: 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">event</li>
</ul>
</li>
<li style="box-sizing: border-box;">views<ul style="box-sizing: border-box; margin: 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">get_event_as_json</li>
<li style="box-sizing: border-box;">edit_event</li>
<li style="box-sizing: border-box;">create_event</li>
<li style="box-sizing: border-box;">delete_event</li>
<li style="box-sizing: border-box;">finish_event</li>
<li style="box-sizing: border-box;">unfinish_event</li>
</ul>
</li>
</ul>
</li>
<li style="box-sizing: border-box;">School<ul style="box-sizing: border-box; margin: 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">models<ul style="box-sizing: border-box; margin: 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">school</li>
</ul>
</li>
<li style="box-sizing: border-box;">views</li>
</ul>
</li>
<li style="box-sizing: border-box;">Account<ul style="box-sizing: border-box; margin: 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">models<ul style="box-sizing: border-box; margin: 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">student</li>
</ul>
</li>
<li style="box-sizing: border-box;">views<ul style="box-sizing: border-box; margin: 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">sign_in</li>
<li style="box-sizing: border-box;">sign_up</li>
<li style="box-sizing: border-box;">sign_out</li>
<li style="box-sizing: border-box;">follow</li>
</ul>
</li>
</ul>
</li>
<li style="box-sizing: border-box;">Tag<ul style="box-sizing: border-box; margin: 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">models<ul style="box-sizing: border-box; margin: 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">tag</li>
</ul>
</li>
<li style="box-sizing: border-box;">views</li>
</ul>
</li>
<li style="box-sizing: border-box;">File<ul style="box-sizing: border-box; margin: 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">models<ul style="box-sizing: border-box; margin: 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">file -views</li>
</ul>
</li>
</ul>
</li>
</ol>
<h2 style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<a class="anchor" href="https://github.com/carpedm20/Dada-study#to-do" name="user-content-to-do" style="bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>To-do</h2>
<ul style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15.454545021057129px; line-height: 23.18181800842285px; margin: 15px 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">Tag : filter_tag, add_tag, delete_tag</li>
<li style="box-sizing: border-box;">School : school_index, school_study_group</li>
<li style="box-sizing: border-box;">Event : event_complete, event_decomplete</li>
<li style="box-sizing: border-box;">Board : file_upload, file_delete, file_info, edit_comment</li>
<li style="box-sizing: border-box;">Core : add_leader, delete_leader,</li>
</ul>
<h2 style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<a class="anchor" href="https://github.com/carpedm20/Dada-study#screenshot" name="user-content-screenshot" style="bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; line-height: 1; margin-left: -30px; padding-left: 8px; padding-right: 6px; position: absolute; text-decoration: none; top: 115.6960220336914px;"><span class="octicon octicon-link" style="-webkit-font-smoothing: antialiased; box-sizing: border-box; color: black; display: inline-block; font-family: octicons; font-size: 16px; font-weight: normal; line-height: 1;"></span></a>Screenshot</h2>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3pw9g7FTamXwBIxtirq7DzSHbbLgXIFB9ubgyLmXliXHhSA3fbjYREwMmYRsK_pitbGQAlAhuXEL5ln-ZqKQdRC-LxDCMwVeTrf8nDOex4mZkJOlPJ0BSnIqlqpXEVQlV87Hl2y8mbBIh/s1600/1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3pw9g7FTamXwBIxtirq7DzSHbbLgXIFB9ubgyLmXliXHhSA3fbjYREwMmYRsK_pitbGQAlAhuXEL5ln-ZqKQdRC-LxDCMwVeTrf8nDOex4mZkJOlPJ0BSnIqlqpXEVQlV87Hl2y8mbBIh/s1600/1.png" height="406" width="640" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhbauYp79pwTwLq_GEuE0ORyrsl_gHh4BR6y0jfGzpraa6TlSuhVU9bFhyphenhyphenkNrtwYClmB1iCadFI3YXaEvR1ZUt-WhMuOqLAz4mblDCsJUdVqYb3MVpotAf4OkC7NHE6uqpT8NicB9mxy4D8/s1600/2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhbauYp79pwTwLq_GEuE0ORyrsl_gHh4BR6y0jfGzpraa6TlSuhVU9bFhyphenhyphenkNrtwYClmB1iCadFI3YXaEvR1ZUt-WhMuOqLAz4mblDCsJUdVqYb3MVpotAf4OkC7NHE6uqpT8NicB9mxy4D8/s1600/2.png" height="402" width="640" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjnDmIUnn6hmA4RA1l8XbPzdn6PJ_JF84g4SbjtHvJhq-DfzeXBh1horMMAt7Ogtvr7CL8o1K_em0qraZeWFjFyXzqcrmqwB8j5JPGr8CzXfNaw6ZbHpviw4s3tsdnZxKCR86vHZSu-hcms/s1600/3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjnDmIUnn6hmA4RA1l8XbPzdn6PJ_JF84g4SbjtHvJhq-DfzeXBh1horMMAt7Ogtvr7CL8o1K_em0qraZeWFjFyXzqcrmqwB8j5JPGr8CzXfNaw6ZbHpviw4s3tsdnZxKCR86vHZSu-hcms/s1600/3.png" height="414" width="640" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTI291QSC2lhO6pchfq4CWmgChCVo1CB000E0QEEl_IPbIQ3BpetzyjAVlHzybWYIgo2VHwIEUjv3DPP6qsN6sXNgHr9cUHA2cFQAHnAle4NY20S_SEIe9xMWwz6LlZ9gBCgqqlgx8026A/s1600/4.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTI291QSC2lhO6pchfq4CWmgChCVo1CB000E0QEEl_IPbIQ3BpetzyjAVlHzybWYIgo2VHwIEUjv3DPP6qsN6sXNgHr9cUHA2cFQAHnAle4NY20S_SEIe9xMWwz6LlZ9gBCgqqlgx8026A/s1600/4.png" height="402" width="640" /></a></div>
<br />
<br />
<div style="text-align: center;">
Github : <a href="https://github.com/carpedm20/gyutae">https://github.com/carpedm20/gyutae</a></div>
<div style="text-align: center;">
<br /></div>
<div style="text-align: center;">
Heroku : <a href="http://gyutae.herokuapp.com/">http://gyutae.herokuapp.com/</a></div>
carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.com0tag:blogger.com,1999:blog-6140308118243319568.post-49463394207087239502014-03-19T13:57:00.002+09:002014-04-01T10:33:40.324+09:00쉽게 쓰여진 Django<div style="text-align: center;">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOmax0rMz4sIET00eNgFeGnekjts6YDkNDuVwHf2wuvzrDoTmkdS3AAHJo7NIOpsaIMoi5KbbhgqPkLmNnvblg8ZieBJuFLNvQd1N_VhsWe-CI1ncKAzhjlaKophHRUgWWOK_vz6g0L8NF/s1600/easilyWrittenDjango.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOmax0rMz4sIET00eNgFeGnekjts6YDkNDuVwHf2wuvzrDoTmkdS3AAHJo7NIOpsaIMoi5KbbhgqPkLmNnvblg8ZieBJuFLNvQd1N_VhsWe-CI1ncKAzhjlaKophHRUgWWOK_vz6g0L8NF/s1600/easilyWrittenDjango.png" height="480" width="640" /></a></div>
<br />
Github : <a href="https://github.com/carpedm20/Easily-written-Django">https://github.com/carpedm20/Easily-written-Django</a><br />
<br />
<iframe allowfullscreen="" frameborder="0" height="486" marginheight="0" marginwidth="0" scrolling="no" src="http://www.slideshare.net/slideshow/embed_code/32473577?rel=0" style="border-width: 1px 1px 0; border: 1px solid #CCC; margin-bottom: 5px; max-width: 100%;" width="597"> </iframe> </div>
<div style="margin-bottom: 5px;">
<div style="text-align: center;">
<strong> <a href="https://www.slideshare.net/carpedm20/django-32473577" target="_blank" title="쉽게 쓰여진 Django">쉽게 쓰여진 Django</a> </strong> from <strong><a href="http://www.slideshare.net/carpedm20" target="_blank">Tae Hoon Kim</a></strong> </div>
</div>
carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.com0tag:blogger.com,1999:blog-6140308118243319568.post-85327803301554799022014-03-18T23:55:00.002+09:002014-03-19T00:01:04.487+09:00영화 서비스에 대한 생각<div style="text-align: center;">
<iframe allowfullscreen="" frameborder="0" height="486" marginheight="0" marginwidth="0" scrolling="no" src="http://www.slideshare.net/slideshow/embed_code/32447808?rel=0" style="border-width: 1px 1px 0; border: 1px solid #CCC; margin-bottom: 5px; max-width: 100%;" width="597"> </iframe> </div>
<div style="margin-bottom: 5px;">
<div style="text-align: center;">
<strong> <a href="https://www.slideshare.net/carpedm20/ss-32447808" target="_blank" title="영화 서비스에 대한 생각">영화 서비스에 대한 생각</a> </strong> from <strong><a href="http://www.slideshare.net/carpedm20" target="_blank">Tae Hoon Kim</a></strong> <br />
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
언젠가 완성할 MovieDuk에 대한 생각.</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
ps. 개인적인 의견을 강조하기 위해 movie.naver와 watcha에서 조금 부족해 보이는 부분을 극대화 시킨 경우가 없잖아 있습니다.</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
ps2. 발표 자료내에 있는 모든 아이디어의 저작권은 저한테 있습니다만, 증명할 방법은 생각이 안나네요.<br />
<br />
ps3. <a href="http://movieduk.herokuapp.com/">http://movieduk.herokuapp.com/</a><br />
<br />
ps4. <a href="https://github.com/carpedm20/movieduk">https://github.com/carpedm20/movieduk</a><br />
<br />
ps5. <a href="https://github.com/carpedm20/movieduk2">https://github.com/carpedm20/movieduk2</a></div>
</div>
</div>
carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.com0tag:blogger.com,1999:blog-6140308118243319568.post-79136340877177171892014-02-21T20:37:00.001+09:002014-06-07T19:19:35.076+09:00[Javascript] random-wall<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjiIfKOcQ4JBhHoyoQpLjxqQnnzK_cs9y4vklWExmO-aIVxX_oXDjI0ZPBUWzHfadwBQ9ZbjephDHpe969JsD5DMtMatDyHxK0RPamt5udHD8xrJqUw4idn3cvQgxY9FzYK9vDR03LlOKtf/s1600/logo.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjiIfKOcQ4JBhHoyoQpLjxqQnnzK_cs9y4vklWExmO-aIVxX_oXDjI0ZPBUWzHfadwBQ9ZbjephDHpe969JsD5DMtMatDyHxK0RPamt5udHD8xrJqUw4idn3cvQgxY9FzYK9vDR03LlOKtf/s1600/logo.png" height="240" width="640" /></a></div>
<br />
<h1 style="border-bottom-color: rgb(221, 221, 221); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 2.5em; line-height: 1.7; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px !important; padding: 0px; position: relative;">
random-wall</h1>
<h1 id="random-wall" style="color: #444444; font-family: Arvo, 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 30px; line-height: 36px; margin: 0px; outline: 0px; text-rendering: optimizelegibility;">
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; font-weight: normal; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
A jQuery plugin that randomly changes background-image of an element.</div>
</h1>
<iframe allowtransparency="true" frameborder="0" height="20" scrolling="0" src="http://ghbtns.com/github-btn.html?user=carpedm20&repo=random-wall&type=watch&count=true" width="90"></iframe><iframe allowtransparency="true" frameborder="0" height="20" scrolling="0" src="http://ghbtns.com/github-btn.html?user=carpedm20&repo=random-wall&type=follow" width="138"></iframe>
<br />
<h2 style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<a class="anchor" href="https://github.com/carpedm20/random-wall#what-is-random-wall" name="what-is-random-wall" style="bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>What is random-wall?</h2>
<h1 style="color: #444444; font-family: Arvo, 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 30px; line-height: 36px; margin: 0px; outline: 0px; text-rendering: optimizelegibility;">
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; font-weight: normal; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
Parse a wallpaper webpage (<a href="http://www.reddit.com/r/wallpapers/" style="box-sizing: border-box; color: #4183c4; text-decoration: none;">http://www.reddit.com/r/wallpapers/</a>) and get a url of randomly selected image. You can set <code style="background-color: #f8f8f8; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 1px solid rgb(221, 221, 221); box-sizing: border-box; display: inline-block; font-family: Consolas, 'Liberation Mono', Courier, monospace; font-size: 12px; line-height: 1.3; margin: 0px; max-width: 100%; overflow: auto; padding: 0px; vertical-align: middle; white-space: nowrap;">delay_time</code> to change a background-image without a new page load. If not, <code style="background-color: #f8f8f8; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 1px solid rgb(221, 221, 221); box-sizing: border-box; display: inline-block; font-family: Consolas, 'Liberation Mono', Courier, monospace; font-size: 12px; line-height: 1.3; margin: 0px; max-width: 100%; overflow: auto; padding: 0px; vertical-align: middle; white-space: nowrap;">random-wall</code> will only change a background-image only when a page is reloaded.</div>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; font-weight: normal; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
See a live demo <a href="http://carpedm20.github.io/randomwall/" style="box-sizing: border-box; color: #4183c4; text-decoration: none;">here</a>;</div>
</h1>
<h2 style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<a class="anchor" href="https://github.com/carpedm20/random-wall#installation" name="installation" style="bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Installation</h2>
<h1 style="color: #444444; font-family: Arvo, 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 30px; line-height: 36px; margin: 0px; outline: 0px; text-rendering: optimizelegibility;">
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; font-weight: normal; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
To use, download the minified library into your javascripts directory. jquery.random-wall.js is also available unminimized.</div>
</h1>
<h2 style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<a class="anchor" href="https://github.com/carpedm20/random-wall#usage" name="usage" style="bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Usage</h2>
<h1 style="color: #444444; font-family: Arvo, 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 30px; line-height: 36px; margin: 0px; outline: 0px; text-rendering: optimizelegibility;">
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; font-weight: normal; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
Include jQuery and random-wall into your HTML.</div>
<div class="highlight highlight-html" style="background-color: white; box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; font-weight: normal; line-height: 25.5px;">
<pre style="background-color: #f8f8f8; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 1px solid rgb(221, 221, 221); box-sizing: border-box; font-family: Consolas, 'Liberation Mono', Courier, monospace; font-size: 13px; line-height: 19px; margin-bottom: 15px; margin-top: 15px; overflow: auto; padding: 6px 10px; word-wrap: normal;"><span class="nt" style="box-sizing: border-box; color: navy;"><script </span><span class="na" style="box-sizing: border-box; color: teal;">src=</span><span class="s" style="box-sizing: border-box; color: #dd1144;">"jquery.min.js"</span><span class="nt" style="box-sizing: border-box; color: navy;">></script></span>
<span class="nt" style="box-sizing: border-box; color: navy;"><script </span><span class="na" style="box-sizing: border-box; color: teal;">src=</span><span class="s" style="box-sizing: border-box; color: #dd1144;">"jquery.random-wall.min.js"</span><span class="nt" style="box-sizing: border-box; color: navy;">></script></span>
</pre>
</div>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; font-weight: normal; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
You should have a div field to change a background-image.</div>
<div class="highlight highlight-html" style="background-color: white; box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; font-weight: normal; line-height: 25.5px;">
<pre style="background-color: #f8f8f8; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 1px solid rgb(221, 221, 221); box-sizing: border-box; font-family: Consolas, 'Liberation Mono', Courier, monospace; font-size: 13px; line-height: 19px; margin-bottom: 15px; margin-top: 15px; overflow: auto; padding: 6px 10px; word-wrap: normal;"><span class="nt" style="box-sizing: border-box; color: navy;"><div</span> <span class="na" style="box-sizing: border-box; color: teal;">id=</span><span class="s" style="box-sizing: border-box; color: #dd1144;">"random-wall"</span> <span class="nt" style="box-sizing: border-box; color: navy;">/></span> <span class="nt" style="box-sizing: border-box; color: navy;"></div></span>
</pre>
</div>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; font-weight: normal; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
Now, attach the plugin to the text field.</div>
<div class="highlight highlight-html" style="background-color: white; box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; font-weight: normal; line-height: 25.5px;">
<pre style="background-color: #f8f8f8; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 1px solid rgb(221, 221, 221); box-sizing: border-box; font-family: Consolas, 'Liberation Mono', Courier, monospace; font-size: 13px; line-height: 19px; margin-bottom: 15px; margin-top: 15px; overflow: auto; padding: 6px 10px; word-wrap: normal;"><span class="nt" style="box-sizing: border-box; color: navy;"><script></span>
<span class="nx" style="box-sizing: border-box;">$</span><span class="p" style="box-sizing: border-box;">(</span><span class="s2" style="box-sizing: border-box; color: #dd1144;">"#random-wall"</span><span class="p" style="box-sizing: border-box;">).</span><span class="nx" style="box-sizing: border-box;">randomwall</span><span class="p" style="box-sizing: border-box;">({</span>
<span class="nx" style="box-sizing: border-box;">delay_time</span><span class="o" style="box-sizing: border-box; font-weight: bold;">:</span> <span class="mi" style="box-sizing: border-box; color: #009999;">0</span><span class="p" style="box-sizing: border-box;">,</span> <span class="c1" style="box-sizing: border-box; color: #999988; font-style: italic;">// default: 0 miliseconds (optional)</span>
<span class="p" style="box-sizing: border-box;">});</span>
<span class="nt" style="box-sizing: border-box; color: navy;"></script></span>
</pre>
</div>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; font-weight: normal; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
or you can set your own image links.</div>
<div class="highlight highlight-html" style="background-color: white; box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; font-weight: normal; line-height: 25.5px;">
<pre style="background-color: #f8f8f8; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 1px solid rgb(221, 221, 221); box-sizing: border-box; font-family: Consolas, 'Liberation Mono', Courier, monospace; font-size: 13px; line-height: 19px; margin-bottom: 15px; margin-top: 15px; overflow: auto; padding: 6px 10px; word-wrap: normal;"><span class="nt" style="box-sizing: border-box; color: navy;"><script></span>
<span class="nx" style="box-sizing: border-box;">$</span><span class="p" style="box-sizing: border-box;">(</span><span class="s2" style="box-sizing: border-box; color: #dd1144;">"#random-wall"</span><span class="p" style="box-sizing: border-box;">).</span><span class="nx" style="box-sizing: border-box;">randomwall</span><span class="p" style="box-sizing: border-box;">({</span>
<span class="nx" style="box-sizing: border-box;">image_list</span><span class="o" style="box-sizing: border-box; font-weight: bold;">:</span> <span class="p" style="box-sizing: border-box;">[</span><span class="s1" style="box-sizing: border-box; color: #dd1144;">'http://i.imgur.com/CiAvVQL.jpg'</span><span class="p" style="box-sizing: border-box;">,</span>
<span class="s1" style="box-sizing: border-box; color: #dd1144;">'http://i.imgur.com/qC5Nprs.jpg'</span><span class="p" style="box-sizing: border-box;">,</span>
<span class="s1" style="box-sizing: border-box; color: #dd1144;">'http://i.imgur.com/fckzvp1.jpg'</span><span class="p" style="box-sizing: border-box;">,</span>
<span class="s1" style="box-sizing: border-box; color: #dd1144;">'http://i.imgur.com/od4QZ8C.jpg'</span><span class="p" style="box-sizing: border-box;">]</span> <span class="c1" style="box-sizing: border-box; color: #999988; font-style: italic;">// use only these images (optional)</span>
<span class="p" style="box-sizing: border-box;">});</span>
<span class="nt" style="box-sizing: border-box; color: navy;"></script></span>
</pre>
</div>
</h1>
<h2 style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<a class="anchor" href="https://github.com/carpedm20/random-wall#todo" name="todo" style="bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Todo</h2>
<h1 style="margin: 0px; outline: 0px; text-rendering: optimizelegibility;">
<ul style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; font-weight: normal; line-height: 25.5px; margin: 15px 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">Add more image link sources (working on imgur).</li>
</ul>
</h1>
<h2 style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
Screenshot</h2>
<h1 style="margin: 0px; outline: 0px; text-rendering: optimizelegibility;">
<div>
</div>
</h1>
<h1 style="margin: 0px; outline: 0px; text-rendering: optimizelegibility;">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXxt2lKJJu4z-DO2ESeT5BIYLbWGkV_bL8vw9m8Iv7d0EibRmNDncPOSryF4g03jwk5uTSzlZ7RbmFBLe1bhyphenhyphenfEBPJCghoVh9e8-0e2OQ4h2Z20sxXFKxzfPasOZKX4hWYPY0iw0BHenWc/s1600/random-wall.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiXxt2lKJJu4z-DO2ESeT5BIYLbWGkV_bL8vw9m8Iv7d0EibRmNDncPOSryF4g03jwk5uTSzlZ7RbmFBLe1bhyphenhyphenfEBPJCghoVh9e8-0e2OQ4h2Z20sxXFKxzfPasOZKX4hWYPY0iw0BHenWc/s1600/random-wall.png" height="460" width="640" /></a></div>
<div>
<span style="color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif;"><span style="font-size: 15.454545021057129px; font-weight: normal; line-height: 25.5px;"><br /></span></span></div>
</h1>
<h2 style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<a class="anchor" href="https://github.com/carpedm20/random-wall#author" name="author" style="bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Author</h2>
<h1 style="color: #444444; font-family: Arvo, 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 30px; line-height: 36px; margin: 0px; outline: 0px; text-rendering: optimizelegibility;">
<ul style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; font-weight: normal; line-height: 25.5px; margin: 15px 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">Kim Tae Hoon, <a href="http://carpedm20.us.to/" style="box-sizing: border-box; color: #4183c4; text-decoration: none;">blog</a>.</li>
</ul>
</h1>
<h2 style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<a class="anchor" href="https://github.com/carpedm20/random-wall#license" name="license" style="bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>License</h2>
<h1 style="color: #444444; font-family: Arvo, 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 30px; line-height: 36px; margin: 0px; outline: 0px; text-rendering: optimizelegibility;">
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; font-weight: normal; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
Copyright (c) 2014 Kim Tae Hoon</div>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; font-weight: normal; line-height: 25.5px; margin-top: 15px;">
Licensed under the MIT License.</div>
</h1>
<h1>
</h1>
carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.com2tag:blogger.com,1999:blog-6140308118243319568.post-15574293115594771402014-01-26T13:01:00.004+09:002014-02-24T19:01:47.195+09:00[Python] ndrive<div class="separator" style="box-sizing: border-box; clear: both; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px; text-align: left;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiUZeJt7eflU5vREs_R-w4Yfv-_24Zkhx0uuAEcxIbn4ugLqM7sDJWTzAeI494Rlpl3ZDxrVsFmuC-TXnHu3QG2muCiQ3CsSQMaCmnFocOijD78xStpzA0BvoN_NArl8lxNcOCyI4pM-LF6/s1600/ndrive.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiUZeJt7eflU5vREs_R-w4Yfv-_24Zkhx0uuAEcxIbn4ugLqM7sDJWTzAeI494Rlpl3ZDxrVsFmuC-TXnHu3QG2muCiQ3CsSQMaCmnFocOijD78xStpzA0BvoN_NArl8lxNcOCyI4pM-LF6/s1600/ndrive.png" /></a></div>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
</div>
<iframe allowtransparency="true" frameborder="0" height="20" scrolling="0" src="http://ghbtns.com/github-btn.html?user=carpedm20&repo=ndrive&type=watch&count=true" width="90"></iframe><iframe allowtransparency="true" frameborder="0" height="20" scrolling="0" src="http://ghbtns.com/github-btn.html?user=carpedm20&repo=ndrive&type=follow" width="138"></iframe>
<br />
<div style="-webkit-text-stroke-width: 0px; box-sizing: border-box; color: #333333; font-size-adjust: none; font-stretch: normal; font: 15.45px/23.18px Helvetica, arial, freesans, clean, sans-serif; letter-spacing: normal; margin: 15px 0px; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;">
ndrive is a python wrapper for Naver Ndrive</div>
<div style="-webkit-text-stroke-width: 0px; box-sizing: border-box; color: #333333; font-size-adjust: none; font-stretch: normal; font: 15.45px/23.18px Helvetica, arial, freesans, clean, sans-serif; letter-spacing: normal; margin: 15px 0px; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;">
Below is the sample code to use ndrive module in python</div>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
<pre style="-ms-word-wrap: normal; -webkit-text-stroke-width: 0px; background-color: #f8f8f8; border-radius: 3px; border: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: #333333; font-size-adjust: none; font-stretch: normal; font: 13px/19px Consolas, "Liberation Mono", Courier, monospace; letter-spacing: normal; margin: 15px 0px; overflow: auto; padding: 6px 10px; text-indent: 0px; text-transform: none; word-spacing: 0px;"><code style="-ms-word-wrap: normal; background-color: transparent; border-radius: 3px; border: currentColor; box-sizing: border-box; display: inline; font-family: Consolas, "Liberation Mono", Courier, monospace; font-size: 12px; line-height: inherit; margin: 0px; padding: 0px; vertical-align: middle; white-space: pre;">>>> from ndrive import Ndrive
>>> n = Ndrive()
>>> n.login("YOUR_ID","YOUR_PASSWORD")
>>> n.uploadFile("FILE_NAME")
</code></pre>
</div>
<h2 style="-webkit-text-stroke-width: 0px; border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; cursor: text; font-size-adjust: none; font-stretch: normal; font: bold 2em/1.7 Helvetica, arial, freesans, clean, sans-serif; letter-spacing: normal; margin: 1em 0px 15px; padding: 0px; position: relative; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;">
<a class="anchor" href="https://github.com/carpedm20/ndrive#installation" name="installation" style="bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Installation</h2>
<div style="-webkit-text-stroke-width: 0px; border-top-color: currentColor; border-top-style: none; border-top-width: 0px; box-sizing: border-box; color: #333333; font-size-adjust: none; font-stretch: normal; font: 15.45px/23.18px Helvetica, arial, freesans, clean, sans-serif; letter-spacing: normal; margin: 15px 0px; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;">
To install ndrive, simply:</div>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
<pre style="-ms-word-wrap: normal; -webkit-text-stroke-width: 0px; background-color: #f8f8f8; border-radius: 3px; border: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: #333333; font-size-adjust: none; font-stretch: normal; font: 13px/19px Consolas, "Liberation Mono", Courier, monospace; letter-spacing: normal; margin: 15px 0px; overflow: auto; padding: 6px 10px; text-indent: 0px; text-transform: none; word-spacing: 0px;"><code style="-ms-word-wrap: normal; background-color: transparent; border-radius: 3px; border: currentColor; box-sizing: border-box; display: inline; font-family: Consolas, "Liberation Mono", Courier, monospace; font-size: 12px; line-height: inherit; margin: 0px; padding: 0px; vertical-align: middle; white-space: pre;">$ pip install ndrive
</code></pre>
</div>
<div style="-webkit-text-stroke-width: 0px; box-sizing: border-box; color: #333333; font-size-adjust: none; font-stretch: normal; font: 15.45px/23.18px Helvetica, arial, freesans, clean, sans-serif; letter-spacing: normal; margin: 15px 0px; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;">
Or, you can use:</div>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
<pre style="-ms-word-wrap: normal; -webkit-text-stroke-width: 0px; background-color: #f8f8f8; border-radius: 3px; border: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: #333333; font-size-adjust: none; font-stretch: normal; font: 13px/19px Consolas, "Liberation Mono", Courier, monospace; letter-spacing: normal; margin: 15px 0px; overflow: auto; padding: 6px 10px; text-indent: 0px; text-transform: none; word-spacing: 0px;"><code style="-ms-word-wrap: normal; background-color: transparent; border-radius: 3px; border: currentColor; box-sizing: border-box; display: inline; font-family: Consolas, "Liberation Mono", Courier, monospace; font-size: 12px; line-height: inherit; margin: 0px; padding: 0px; vertical-align: middle; white-space: pre;">$ easy_install ndrive
</code></pre>
</div>
<div style="-webkit-text-stroke-width: 0px; box-sizing: border-box; color: #333333; font-size-adjust: none; font-stretch: normal; font: 15.45px/23.18px Helvetica, arial, freesans, clean, sans-serif; letter-spacing: normal; margin: 15px 0px; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;">
Or, you can also install manually:</div>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
<pre style="-ms-word-wrap: normal; -webkit-text-stroke-width: 0px; background-color: #f8f8f8; border-radius: 3px; border: 1px solid rgb(221, 221, 221); box-sizing: border-box; color: #333333; font-size-adjust: none; font-stretch: normal; font: 13px/19px Consolas, "Liberation Mono", Courier, monospace; letter-spacing: normal; margin: 15px 0px; overflow: auto; padding: 6px 10px; text-indent: 0px; text-transform: none; word-spacing: 0px;"><code style="-ms-word-wrap: normal; background-color: transparent; border-radius: 3px; border: currentColor; box-sizing: border-box; display: inline; font-family: Consolas, "Liberation Mono", Courier, monospace; font-size: 12px; line-height: inherit; margin: 0px; padding: 0px; vertical-align: middle; white-space: pre;">$ git clone https://github.com/carpedm20/ndrive.git
$ cd ndrive-master
$ python setup.py install
</code></pre>
</div>
<h2 style="-webkit-text-stroke-width: 0px; border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; cursor: text; font-size-adjust: none; font-stretch: normal; font: bold 2em/1.7 Helvetica, arial, freesans, clean, sans-serif; letter-spacing: normal; margin: 1em 0px 15px; padding: 0px; position: relative; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;">
<a class="anchor" href="https://github.com/carpedm20/ndrive#documentation" name="documentation" style="bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Documentation</h2>
<div style="-webkit-text-stroke-width: 0px; border-top-color: currentColor; border-top-style: none; border-top-width: 0px; box-sizing: border-box; color: #333333; font-size-adjust: none; font-stretch: normal; font: 15.45px/23.18px Helvetica, arial, freesans, clean, sans-serif; letter-spacing: normal; margin: 15px 0px; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;">
The documentation is available at<span class="Apple-converted-space"> </span><a href="http://carpedm20.github.io/ndrive/" style="box-sizing: border-box; color: #4183c4; text-decoration: none;">http://carpedm20.github.io/ndrive/</a></div>
<h2 style="-webkit-text-stroke-width: 0px; border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; cursor: text; font-size-adjust: none; font-stretch: normal; font: bold 2em/1.7 Helvetica, arial, freesans, clean, sans-serif; letter-spacing: normal; margin: 1em 0px 15px; padding: 0px; position: relative; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;">
<a class="anchor" href="https://github.com/carpedm20/ndrive#to-do" name="to-do" style="bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>To-do</h2>
<div style="border-top-color: currentColor; border-top-style: none; border-top-width: 0px; box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
<ol style="-webkit-text-stroke-width: 0px; box-sizing: border-box; color: #333333; font-size-adjust: none; font-stretch: normal; font: 15.45px/23.18px Helvetica, arial, freesans, clean, sans-serif; letter-spacing: normal; margin: 15px 0px; padding: 0px 0px 0px 30px; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;">
<li style="box-sizing: border-box;">Implement all APIs</li>
<li style="box-sizing: border-box;">command-line tool</li>
</ol>
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi4J6jIBkZoDb18k_qYq7NCUvWXKNcxU4Xif-a_ZAzL97RdBHt9J257i-R_RwcuXmwq5WHmKSLbcA3vS2SL5imHMt7r1nNbyAoFu4TuRF1Em7gQ3tjPbuG6WJ14l3QAM5itCmgmfYfLWGes/s1600/cmd2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi4J6jIBkZoDb18k_qYq7NCUvWXKNcxU4Xif-a_ZAzL97RdBHt9J257i-R_RwcuXmwq5WHmKSLbcA3vS2SL5imHMt7r1nNbyAoFu4TuRF1Em7gQ3tjPbuG6WJ14l3QAM5itCmgmfYfLWGes/s1600/cmd2.png" height="640" width="468" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgRq3Uv5EIdFCKpl_DGpyXTN9JAm1C1ejNGn5sF7F6uunehObMEHxchFMpLGZ87rDn83frG7mFRhu1ERq6OigAIFXo5-CwX_gvmdcjnN5g05tCysAz5JobPUaj3bBcBgd8gFm0I7rIULgRm/s1600/ndrive_cmd.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"></a><br /></div>
<h2 style="-webkit-text-stroke-width: 0px; border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; cursor: text; font-size-adjust: none; font-stretch: normal; font: bold 2em/1.7 Helvetica, arial, freesans, clean, sans-serif; letter-spacing: normal; margin: 1em 0px 15px; padding: 0px; position: relative; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;">
<a class="anchor" href="https://github.com/carpedm20/ndrive#copyright" name="copyright" style="bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Copyright</h2>
<div style="-webkit-text-stroke-width: 0px; border-top-color: currentColor; border-top-style: none; border-top-width: 0px; box-sizing: border-box; color: #333333; font-size-adjust: none; font-stretch: normal; font: 15.45px/23.18px Helvetica, arial, freesans, clean, sans-serif; letter-spacing: normal; margin-bottom: 0px !important; margin-left: 0px; margin-right: 0px; margin-top: 15px; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;">
Copyright © 2014 Kim Tae Hoon.</div>
carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.com0tag:blogger.com,1999:blog-6140308118243319568.post-31434170454628224582014-01-25T13:47:00.001+09:002014-01-26T13:07:12.836+09:00[JavaScript] jsSolar<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div style="text-align: center;">
<iframe frameborder="0" height="820px" scrolling="no" src="http://carpedm20.github.io/solar/" style="border: 0;" width="640"></iframe><br />
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhMRo2rbpp2aKpTnzIV4ect5VeVsL_Y0colKkiapV-xa4NJsfGxM1W_a8IfBxCMyawr4hUtYwWhVaGMlvaCq6BgHfKt5hZopESjO8ZeqBaAOgNm6AUoQpDFatbVKu85H4kauL_cICAZ8Ap9/s1600/solar2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhMRo2rbpp2aKpTnzIV4ect5VeVsL_Y0colKkiapV-xa4NJsfGxM1W_a8IfBxCMyawr4hUtYwWhVaGMlvaCq6BgHfKt5hZopESjO8ZeqBaAOgNm6AUoQpDFatbVKu85H4kauL_cICAZ8Ap9/s1600/solar2.png" height="640" width="580" /></a></div>
<br />
<br />
Github : <a href="https://github.com/carpedm20/jsSolar">https://github.com/carpedm20/jsSolar</a><br />
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; line-height: 23.18181800842285px; margin-bottom: 15px; margin-top: 15px;">
</div>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; line-height: 23.18181800842285px; margin-top: 15px;">
Copyright (c) 2013 Kim Tae Hoon</div>
carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.com0tag:blogger.com,1999:blog-6140308118243319568.post-47135781844605191782013-12-04T17:29:00.000+09:002013-12-22T14:18:19.272+09:00[python] Scrapy - 네이버 영화 파싱<br />
<span style="background-color: white; color: #333333; font-family: 'Lucida Sans', Verdana, Helvetica, 'Bitstream Vera Sans', sans-serif; font-size: 14.399999618530273px;"><a href="http://scrapy.org/">Scrapy</a> is a fast high-level screen scraping and <b>web crawling framework,</b> used to crawl websites and extract structured data from their pages. It can be used for a wide range of purposes, from data mining to monitoring and automated testing.</span><br />
<span style="background-color: white; color: #333333; font-family: 'Lucida Sans', Verdana, Helvetica, 'Bitstream Vera Sans', sans-serif; font-size: 14.399999618530273px;"><br /></span>
<span style="color: #333333; font-family: Lucida Sans, Verdana, Helvetica, Bitstream Vera Sans, sans-serif;"><span style="font-size: 14.399999618530273px;">Scrapy documentation : </span></span><a href="http://doc.scrapy.org/en/0.20/">http://doc.scrapy.org/en/0.20/</a><br />
<br />
<br />
공식 페이지의 설명에서 볼 수 있듯이 Scrapy는 python 기반의 파싱 프레임워크다.<br />
<br />
Scrapy를 알기 전에는 urllib2와 beatifulsoup로 파싱을 해 왔으나, Scrapy를 쓰면 훨씬 빠른 속도로 crawling을 할 수 있었다.<br />
<br />
<br />
자세한 정보는 공식 튜토리얼을 통해서 얻을 수 있으며, Scrapy를 사용하기 위해서는 lxml, OpenSSL이 필요하다.<br />
<br />
Installation : <a href="http://doc.scrapy.org/en/latest/intro/install.html">http://doc.scrapy.org/en/latest/intro/install.html</a><br />
<br />
Tutorial : <a href="http://doc.scrapy.org/en/latest/intro/tutorial.html#crawling">http://doc.scrapy.org/en/latest/intro/tutorial.html#crawling</a><br />
<br />
<br />
간단하게 프로젝트를 시작하는 방법을 설명해 보면,<br />
<br />
<pre style="background-color: whitesmoke; border-bottom-left-radius: 4px; border-bottom-right-radius: 4px; border-top-left-radius: 4px; border-top-right-radius: 4px; border: 1px solid rgb(204, 204, 204); box-sizing: border-box; margin-bottom: 12px; padding: 11.5px; word-break: break-all; word-wrap: break-word;"><code class="python" style="background-color: transparent; border-bottom-left-radius: 4px; border-bottom-right-radius: 4px; border-top-left-radius: 4px; border-top-right-radius: 4px; border: 0px; box-sizing: border-box; padding: 0px;"><span style="font-family: Monaco, Menlo, Consolas, Courier New, monospace;"><span style="line-height: 17.600000381469727px; white-space: pre-wrap;">scrapy startproject scrapy_sample</span></span><span style="font-family: Monaco, Menlo, Consolas, Courier New, monospace;"><span style="line-height: 1.428571429; white-space: pre-wrap;">
</span></span><span style="font-family: Monaco, Menlo, Consolas, Courier New, monospace;"><span style="line-height: 17.600000381469727px; white-space: pre-wrap;">cd scrapy_sample</span><span style="line-height: 1.428571429; white-space: pre-wrap;">
</span></span><span style="font-family: Monaco, Menlo, Consolas, Courier New, monospace;"><span style="line-height: 17.600000381469727px; white-space: pre-wrap;">vi scrapy_sample/spiders/spider.py</span></span></code></pre>
<div>
<div style="orphans: 2; text-align: -webkit-auto; widows: 2;">
로 새로운 프로젝트를 하나 만들고, spider.py 파일을 만든다.</div>
<div style="orphans: 2; text-align: -webkit-auto; widows: 2;">
<br />
<br />
Scrapy 공식 홈페이지에 나와있는 example 소스는 아래와 같다.<br />
<br />
<pre class="brush: js">from scrapy.spider import BaseSpider
from scrapy.selector import HtmlXPathSelector
from scrapy.item import Item, Field
class Website(Item): // parse 된 정보를 저장할 class
name = Field() // Field()에는 숫자와 string 모두 저장할 수 있음
description = Field()
url = Field()
class DmozSpider(BaseSpider):
name = "dmoz" // spider의 이름을 나타낸다
allowed_domains = ["dmoz.org"] // dmoz.org 이외의 redirect는 무시된다.
start_urls = [
"http://www.dmoz.org/Computers/Programming/Languages/Python/Books/",
"http://www.dmoz.org/Computers/Programming/Languages/Python/Resources/",
] // start_urls 안에 들어있는 url이 parse 된다
def parse(self, response):
hxs = HtmlXPathSelector(response)
// css selector 문법을 통해 dom element 를 찾을 수 있다.
sites = hxs.select('//ul[@class="directory-url"]/li')
items = []
for site in sites:
item = Website()
item['name'] = site.select('a/text()').extract()
item['url'] = site.select('a/@href').extract()
item['description'] = site.select('text()').re('-\s([^\n]*?)\\n')
items.append(item)
return items
</pre>
<br /></div>
<div style="orphans: 2; text-align: -webkit-auto; widows: 2;">
이후 project 의 root 디렉토리에서 아래와 같은 명령어를 입력하면 된다.<br />
<br />
<pre style="background-color: whitesmoke; border-bottom-left-radius: 4px; border-bottom-right-radius: 4px; border-top-left-radius: 4px; border-top-right-radius: 4px; border: 1px solid rgb(204, 204, 204); box-sizing: border-box; margin-bottom: 12px; orphans: auto; padding: 11.5px; widows: auto; word-break: break-all; word-wrap: break-word;"><code class="python" style="background-color: transparent; border-bottom-left-radius: 4px; border-bottom-right-radius: 4px; border-top-left-radius: 4px; border-top-right-radius: 4px; border: 0px; box-sizing: border-box; padding: 0px;"><span style="font-family: Monaco, Menlo, Consolas, Courier New, monospace;"><span style="line-height: 17.600000381469727px; white-space: pre-wrap;">scrapy crwal dmoz // spiders 폴더 내에 있는 소스 코드 중 dmoz를 이름으로 가지고 있는 spider를 실행
scrapy crawl dmoz -o some.json -t json 2> result.txt // item을 json형태로 txt 파일에 저장
rm result.txt // 크롤 하기 전에 result.txt는 매번 지워주어야 함
scrapy shell spider.py // scrapy를 shell 형태로 실행
scrapy shell "http://www.dmoz.org/Computers/Programming/Languages/Python/Books/"</span></span></code></pre>
<br />
selector 에 대한 정보는<br />
<br />
<a href="http://doc.scrapy.org/en/latest/topics/selectors.html" style="text-align: -webkit-auto;">http://doc.scrapy.org/en/latest/topics/selectors.html</a><br />
<br />
여기서 찾을 수 있다.<br />
<br />
<br />
Scrapy에 대한 한국어 문서가 없어서 제대로된 사용법을 찾는데 시간이 조금 걸렸지만,<br />
<br />
다른분들은 이 글을 읽으시고 시간낭비를 하지 않으시길 바란다.<br />
<br />
<br />
아래의 예제는 네이버 영화 정보를 파싱하는 spider다.<br />
<br />
영화 제목과 개봉시기, 장르 등의 정보를 파싱하며 위에 나온 명령어들을 사용하면 쉽게 json 파일을 얻을 수 있을 것이다.<br />
<br />
<br /></div>
</div>
<div style="orphans: 2; text-align: -webkit-auto; widows: 2;">
<pre class="brush: js">__author__ = 'carpedm20'
__date__ = '2013.11.14'
from scrapy.spider import BaseSpider
from scrapy.selector import HtmlXPathSelector
from scrapy.http.request import Request
from scrapy.item import Item, Field
import sys, os
class ScrapyItem(Item):
title = Field()
url = Field()
year = Field()
open1 = Field() # 2013
open2 = Field() # 06.12
country = Field()
genre = Field()
form = Field()
grade = Field()
YEAR = "2015"
START_PAGE = 10 # 0
START_PAGE = 0 # 0
MAX_LOOP = 4 #-1
MAX_LOOP = -1 #-1
PMOD = True
PMOD = False
print "==================="
print YEAR
print "==================="
url = "http://movie.naver.com/movie/sdb/browsing/bmovie.nhn?year="+YEAR+"&page=" + str(START_PAGE)
index = start_page = START_PAGE
old_index = -1
old_title = ""
loop = 0
pmod = PMOD
max_loop = MAX_LOOP
class ScrapyOrgSpider(BaseSpider):
name = "naver"
allowed_domains = ["movie.naver.com"]
start_urls = [url]
def parse(self, response):
global start_page, index, loop, old_title, pmod, max_loop
hxs = HtmlXPathSelector(response)
items = []
loop += 1
next_page = ["http://movie.naver.com/movie/sdb/browsing/bmovie.nhn?year="+YEAR+"&page="+str(loop + start_page)]
if max_loop != -1:
if loop >= max_loop:
next_page = []
posts = hxs.select("//ul[@class='directory_list']/li")
title = posts[0].select("a/text()")[0].extract()
if old_title == title and loop > 2:
next_page = []
else:
old_title = title
if not not next_page:
yield Request(next_page[0], self.parse)
#posts = hxs.select("//tr")
count = 0
print "[ " + str(loop) + " ] index : " + str(index) + ", len(posts) : " + str(len(posts))
for post in posts:
try:
title = post.select("a/text()")[0].extract()
if pmod: print " [ " + str(count) + " ] TITLE : " + title
url = post.select("a/@href")[0].extract()
if pmod: print " [ " + str(count) + " ] URL : " + url
year = post.select("ul[@class='detail']/li/a")[0].select("b/text()")[0].extract()
if pmod: print " [ " + str(count) + " ] YEAR : " + year
open1 = ""
open2 = ""
country = ""
genre = ""
form = ""
grade = ""
open_count = 0
lis = post.select("ul[@class='detail']/li/a")
for li in lis:
h = li.select('@href')[0].extract()
href = h[h.find('&')+1:h.rfind('=')]
if pmod: print " [*] HREF : " + href
if href == '?year':
if pmod: print " [-] HREF SKIP : " + h
continue
if href == 'open' and open_count == 0:
open1 = li.select('text()')[0].extract()
open_count += 1
if pmod: print " [*] open1 : " + open1
elif href == 'open' and open_count == 1:
try:
open2 = li.select('text()')[0].extract()
if pmod: print " [*] open2 : " + open2
except:
z = 123
elif href == 'nation':
country = li.select('text()')[0].extract()
if pmod: print " [*] country : " + country
elif href == 'genre':
genre = li.select('text()')[0].extract()
if pmod: print " [*] genre : " + genre
elif href == 'form':
form = li.select('text()')[0].extract()
if pmod: print " [*] form : " + form
elif href == 'grade':
grade = li.select('text()')[0].extract()
if pmod: print " [*] grade : " + grade
else:
print " [^] Found NEW href : " + h
return
count += 1
except Exception as e:
#for frame in traceback.extract_tb(sys.exc_info()[2]):
# fname,lineno,fn,text = frame
# print "Error in %s on line %d" % (fname, lineno)
exc_type, exc_obj, exc_tb = sys.exc_info()
fname = os.path.split(exc_tb.tb_frame.f_code.co_filename)[1]
print(exc_type, fname, exc_tb.tb_lineno)
#for e in sys.exc_info():
# print e
continue
item = ScrapyItem()
item["title"] = title
item["url"] = url
item["year"] = year
item["open1"] = open1
item["open2"] = open2
item["country"] = country
item["genre"] = genre
item["form"] = form
item["grade"] = grade
items.append(item)
for item in items:
yield item
old_index = index
index += count</pre>
</div>
<br />
ps.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWwt1b08pHlLghEFYWT2HUJEH9taX8I6pKezOsfbpj21lo_QYd6Sh2MhTqAODbME0-oedy8n3LjR1FSr9kTSXqdROOvFiMQvw3Iz2oUqK_BdUluzmmLY7RrqbGK79JOmAkMZ2BrMg70JBn/s1600/movieduk.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="536" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWwt1b08pHlLghEFYWT2HUJEH9taX8I6pKezOsfbpj21lo_QYd6Sh2MhTqAODbME0-oedy8n3LjR1FSr9kTSXqdROOvFiMQvw3Iz2oUqK_BdUluzmmLY7RrqbGK79JOmAkMZ2BrMg70JBn/s640/movieduk.png" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="text-align: start;">무비덕 : </span><a href="http://carpedm20.blogspot.kr/2013/11/movieduk.html" style="text-align: start;">http://carpedm20.blogspot.kr/2013/11/movieduk.html</a></div>
carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.com6tag:blogger.com,1999:blog-6140308118243319568.post-44522012314335774372013-12-03T22:51:00.001+09:002013-12-04T18:55:04.856+09:00왓챠 (Watcha) api 분석<br />
<a href="http://watcha.net/">왓챠</a>는 유저의 평가를 바탕으로 영화를 추천해주는 웹 서비스다.<br />
<br />
왓챠를 분석하게 된 이유는 유한개의 DB를 가지고 있는 서비스에서<br />
<br />
모든 영화를 평가했을때 어떻게 될까 라는 단순한 호기심이 생겼었기 때문이다.<br />
<br />
사실 웹 사이트 api 분석이라기 보다는 json 둘러보기 정도가 더 정확한듯 하다.<br />
<br />
<br />
MySQL을 사용하고는 있으나 웹 프레임 워크(루비온레일즈)를 사용하고 있기 때문에 sql injection를 기대하진 않았다.<br />
<br />
또한 왓챠의 멤버 중에서 보안 실력이 뛰어난 분이 계시기 때문에 큰 문제는 없을거란걸 알았다.<br />
<br />
<br />
가장 핵심인 '영화 추천' 부분은 무한 스크롤 기능을 통해 서버에 request를<br />
<br />
<a href="http://watcha.net/api/movies/recommend?ref=wall&count=8&more=true">http://watcha.net/api/movies/recommend?ref=wall&count=8&more=true</a><br />
<br />
와 같은 주소로 전송하고 json 형태로 받아오게 된다.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFCSvRF1yMMtEzMTD4WzPg3EtphfFXmp7AbrazTg-T5ZXnDarWKxDfG3U3eUgdnis7BgpRVQ_E-pwjjKjTPsOQ8d5gSlnUsetgkxFNyeDmGMZn2BWUCiFe_BMTR1yN6CcGgoJN6smJLcve/s1600/json.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="524" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFCSvRF1yMMtEzMTD4WzPg3EtphfFXmp7AbrazTg-T5ZXnDarWKxDfG3U3eUgdnis7BgpRVQ_E-pwjjKjTPsOQ8d5gSlnUsetgkxFNyeDmGMZn2BWUCiFe_BMTR1yN6CcGgoJN6smJLcve/s640/json.png" width="640" /></a></div>
<br />
<br />
count를 증가시키면 데이터를 더 받아올 수는 있지만 위의 request로는 20개가 최대인것 같다.<br />
<br />
하지만<br />
<br />
<a href="http://watcha.net/api/movies?type=eval&count=900&more=true&page=">http://watcha.net/api/movies?type=eval&count=900&more=true&page=</a><br />
<br />
와 같은 형태로 request를 보내면 900개의 데이터를 볼 수 있었다.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPjyFsjdgSgOr73ITaHnxgYGZYlKu8gzCCeL876AjiNFmUfyxhn2Zf5Q_oTTAgT7XF6HdwqIi6NX1x0DFNePA2RZYckLTom9BNVTcakaMMDdzM398HT8ykOlMudMeqQPLbHvtgROhvQmyN/s1600/json2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhPjyFsjdgSgOr73ITaHnxgYGZYlKu8gzCCeL876AjiNFmUfyxhn2Zf5Q_oTTAgT7XF6HdwqIi6NX1x0DFNePA2RZYckLTom9BNVTcakaMMDdzM398HT8ykOlMudMeqQPLbHvtgROhvQmyN/s1600/json2.png" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<br />
그리고 구글링을 통해서<br />
<br />
<a href="http://watcha.net/movies/detail/18681%E2%80%8E">http://watcha.net/movies/detail/18681</a><br />
<br />
와 같은 형태로 영화 정보를 얻을 수 있다는 사실을 알 수 있었다.<br />
<br />
이를 통해 watcha에 저장된 모든 영화의 id와 hash된 id를 얻을 수 있었다.<br />
<br />
<br />
다행이도 지금은 위의 url이 막힌것처럼 보이며,<br />
<br />
<a href="http://watcha.net/api/movie/mp0dx6">http://watcha.net/api/movie/mp0dx6</a><br />
<br />
와 같이 숫자가 아닌 hash화된 id를 통해서 영화 정보를 얻어온다.<br />
<br />
<br />
그리고 비슷한 영화를 추천할 때는<br />
<br />
<a href="http://watcha.net/api/movies/similar/mvf3t1?count=10">http://watcha.net/api/movies/similar/mvf3t1?count=10</a><br />
<br />
와 같은 request를 보내게 된다.<br />
<br />
<br />
영화 검색시에는<br />
<span style="orphans: 2; text-align: -webkit-auto; widows: 2;"><br /></span>
<span style="orphans: 2; text-align: -webkit-auto; widows: 2;"><a href="http://watcha.net/search.json?query=%20&page=1">http://watcha.net/search.json?query=%20&page=1</a></span><br />
<span style="orphans: 2; text-align: -webkit-auto; widows: 2;"><br /></span>
<span style="orphans: 2; text-align: -webkit-auto; widows: 2;">와 같이 request를 보내며 javascript 로 공백을 검색하는것을 막아 뒀지만,</span><br />
<span style="orphans: 2; text-align: -webkit-auto; widows: 2;"><br /></span>
<span style="orphans: 2; text-align: -webkit-auto; widows: 2;"><br /></span>
<a href="http://watcha.net/search.json?query=+">http://watcha.net/search.json?query=+</a> 와 같은 형태로 우회할 수 있다.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjyjBcsIEDJaNZcO-2RRy8RQvTq4OaMFRINUrz-asnQKEHOSXYz6o-uDwAufVPK9NEZYtr4BmtiRJufMRoVh4mvthZ2ExQV5LHDX9C5T54uu1MF0D9rP38BImFDTp-hokRXUPZRqYSuKkon/s1600/json3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjyjBcsIEDJaNZcO-2RRy8RQvTq4OaMFRINUrz-asnQKEHOSXYz6o-uDwAufVPK9NEZYtr4BmtiRJufMRoVh4mvthZ2ExQV5LHDX9C5T54uu1MF0D9rP38BImFDTp-hokRXUPZRqYSuKkon/s1600/json3.png" /></a></div>
<br />
그래서 watcha가 가지고 있는 영화 DB의 갯수가 대략 6만개 정도라고 예상했다.<br />
<br />
<br />
네이버의 DB가 약 9만개인 점을 생각한다면 적다고 생각했지만, 네이버와 달리<br />
<br />
드라마 정보가 적기 때문이라고 생각했다.<br />
<br />
<br />
대충 소스를 짜서 돌려본 결과 아래와 같은 계정을 만들 수 있었고,<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh2mRnegmQc41REWqgGqm0vfftYLW8HViczU5hPuD2L4obLNBOe51zQ9-EurbLBNobj99gta0gU5urSjajp3xb_zx0qkNccRJKFp9WvwRxAZXzpy5b1RAOEyri_wZD5ghXXnB4A2IjCWcGi/s1600/loading2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="441" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh2mRnegmQc41REWqgGqm0vfftYLW8HViczU5hPuD2L4obLNBOe51zQ9-EurbLBNobj99gta0gU5urSjajp3xb_zx0qkNccRJKFp9WvwRxAZXzpy5b1RAOEyri_wZD5ghXXnB4A2IjCWcGi/s640/loading2.jpg" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
무한 로딩</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhliYZfwXq6TvbuR9sy_-WyA8rEOYWNFheaVvf_8FMe3UYyFBQkJ0hUf_trht8j7R3RwhWrqbzlUH0FhNvveg9Ob6Z5CFFOZnF7MK_Tgxv4b6Mse5H5-tBO0VERpHQ-5wEQ_Z56Zovq4ata/s1600/no_recommend.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="441" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhliYZfwXq6TvbuR9sy_-WyA8rEOYWNFheaVvf_8FMe3UYyFBQkJ0hUf_trht8j7R3RwhWrqbzlUH0FhNvveg9Ob6Z5CFFOZnF7MK_Tgxv4b6Mse5H5-tBO0VERpHQ-5wEQ_Z56Zovq4ata/s640/no_recommend.jpg" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
추천하는 영화가 없음</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgL5Lozhp_v9NgOvMOD2myvSaYKC5Sphmby_rbmbzYfZRzWMI54Ai6PKZg_-NPYXvU_1_rcr1CQkz1cmhKi9AxjCKejmVkAOTtNrn3ynBy2ckOcDVfT6WWTAVWZmZ07k5wyDAUhfucSdEpa/s1600/what.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="441" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgL5Lozhp_v9NgOvMOD2myvSaYKC5Sphmby_rbmbzYfZRzWMI54Ai6PKZg_-NPYXvU_1_rcr1CQkz1cmhKi9AxjCKejmVkAOTtNrn3ynBy2ckOcDVfT6WWTAVWZmZ07k5wyDAUhfucSdEpa/s640/what.jpg" width="640" /></a></div>
<br />
위와 같이 평소에 보지 못했던 새로운 메세지를 볼 수 있었다 :)<br />
<br />
( 하지만 페이지 로딩 시간은 상당히 길어졌다 )<br />
<br />
<br />
쿼리를 바꿔보면 새로운 쿼리를 찾을 수 도 있을것 같지만, 호기심은 해결되었으니 더 둘러보지는 않았다.<br />
<br />
<br />
나는 이 글을 통해 왓챠가 보안에 취약하다는 것을 말하려고 하는 것은 아니다.<br />
<br />
단지, 평소에 즐겨 쓰던 서비스였기 때문에 애정이 많이 가지만,<br />
<br />
DB가 생각했던것보다 많이 공개되어 있어서 조금 조심할 필요가 있다고 생각된다.<br />
<br />
<br />
사실 웹 개발에 대한 지식이 부족해서 어떻게 개선할 수 있을지는 잘 모르겠다..<br />
<br />
<br />
마지막으로 다른분들은 이런 <b>잉여짓</b>을 하지 않기를 바란다...<br />
<br />carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.com1tag:blogger.com,1999:blog-6140308118243319568.post-62683114294329524662013-12-03T21:50:00.002+09:002013-12-03T21:57:15.932+09:00[Python] Twitter hacking<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;">The title is somewhat attractive but I'm not (maybe can't) going to talk about hacking the Twitter server.</span><br />
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;">As you know, <a href="https://twitter.com/">Twitter</a> is a well known social network and lots of people use Twitter openly and share his or others information through Twitter.</span><br />
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;">But some people use their account privately, which means they use Twitter to communicate with his friends.</span><br />
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;">These people tends to make mistake like twit his personal information on Twitter.</span><br />
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;"><br /></span>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhzu8C2MzR_1hXpml9VgfJES7d3bQXncVZBAzKxApRnPGQsf2SlCSSbqALqXvh47Jw7k2XOpe4u1yH0eyATtzzgiXBFHirA1RGKDKrF2vl0gMGbygzwXpTOD1UTMzkbk2O8gyAS5obuqcGy/s1600/twitter.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><span style="font-family: inherit;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhzu8C2MzR_1hXpml9VgfJES7d3bQXncVZBAzKxApRnPGQsf2SlCSSbqALqXvh47Jw7k2XOpe4u1yH0eyATtzzgiXBFHirA1RGKDKrF2vl0gMGbygzwXpTOD1UTMzkbk2O8gyAS5obuqcGy/s400/twitter.jpg" width="331" /></span></a></div>
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;">So, I want to show you how easily people can be hacked through Twitter.</span><br />
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;">I took this experiment few months ago and I could get 1560 different phone numbers in one week...</span><br />
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;"><br /></span>
<b><span style="font-family: inherit;">DO NOT USE THIS FOR REAL HACKING!</span></b><br />
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;">Just be careful when you use SNS or internet.</span><br />
<br />
<br />
<ol style="background-color: #f8f8f8; color: #acacac; font-family: Consolas, Menlo, Monaco, 'Lucida Console', 'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace, serif; font-size: 12px; line-height: 21px; margin: 0px; padding: 0px 0px 0px 48px;">
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="co1" style="color: grey; font-style: italic;"># -*- coding:utf-8 -*-</span></div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="kw1" style="color: #ff7700; font-weight: bold;">import</span> <span class="kw3" style="color: crimson;">time</span></div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="kw1" style="color: #ff7700; font-weight: bold;">from</span> twitter <span class="kw1" style="color: #ff7700; font-weight: bold;">import</span> *</div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="kw1" style="color: #ff7700; font-weight: bold;">import</span> <span class="kw3" style="color: crimson;">re</span></div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="kw1" style="color: #ff7700; font-weight: bold;">import</span> MySQLdb</div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
</div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
DB_NAME <span class="sy0" style="color: #66cc66;">=</span> <span class="st0" style="color: darkslateblue;">'twitter'</span></div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
DB_TABLE <span class="sy0" style="color: #66cc66;">=</span> <span class="st0" style="color: darkslateblue;">'phone'</span></div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="co1" style="color: grey; font-style: italic;"># tid bigint(20), name varchar(20), text text, number bigint(20)</span></div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
DB_ID <span class="sy0" style="color: #66cc66;">=</span> <span class="st0" style="color: darkslateblue;">'carpedm20'</span></div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
DB_PASS <span class="sy0" style="color: #66cc66;">=</span> <span class="st0" style="color: darkslateblue;">' '</span></div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
</div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
db <span class="sy0" style="color: #66cc66;">=</span> MySQLdb.<span class="me1">connect</span><span class="br0">(</span>host<span class="sy0" style="color: #66cc66;">=</span><span class="st0" style="color: darkslateblue;">""</span><span class="sy0" style="color: #66cc66;">,</span> <span class="kw3" style="color: crimson;">user</span><span class="sy0" style="color: #66cc66;">=</span>DB_ID<span class="sy0" style="color: #66cc66;">,</span> db<span class="sy0" style="color: #66cc66;">=</span>DB_NAME<span class="sy0" style="color: #66cc66;">,</span> passwd<span class="sy0" style="color: #66cc66;">=</span>DB_PASS<span class="sy0" style="color: #66cc66;">,</span> port<span class="sy0" style="color: #66cc66;">=</span><span class="nu0" style="color: orangered;">3306</span><span class="br0">)</span></div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
cur <span class="sy0" style="color: #66cc66;">=</span> db.<span class="me1">cursor</span><span class="br0">(</span><span class="br0">)</span></div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
</div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
OAUTH_TOKEN <span class="sy0" style="color: #66cc66;">=</span> <span class="st0" style="color: darkslateblue;">''</span></div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
OAUTH_SECRET <span class="sy0" style="color: #66cc66;">=</span> <span class="st0" style="color: darkslateblue;">''</span></div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
CONSUMER_KEY <span class="sy0" style="color: #66cc66;">=</span> <span class="st0" style="color: darkslateblue;">''</span></div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
CONSUMER_SECRET <span class="sy0" style="color: #66cc66;">=</span> <span class="st0" style="color: darkslateblue;">''</span></div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
</div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
t <span class="sy0" style="color: #66cc66;">=</span> Twitter<span class="br0">(</span> auth<span class="sy0" style="color: #66cc66;">=</span>OAuth<span class="br0">(</span>OAUTH_TOKEN<span class="sy0" style="color: #66cc66;">,</span> OAUTH_SECRET<span class="sy0" style="color: #66cc66;">, </span>CONSUMER_KEY<span class="sy0" style="color: #66cc66;">,</span> CONSUMER_SECRET<span class="br0">) </span>)</div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
</div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
findNum <span class="sy0" style="color: #66cc66;">=</span> <span class="kw3" style="color: crimson;">re</span>.<span class="kw2" style="color: green;">compile</span><span class="br0">(</span>r<span class="st0" style="color: darkslateblue;">'regular expression for phone number'</span><span class="br0">)</span></div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
</div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="kw1" style="color: #ff7700; font-weight: bold;">while</span> <span class="nu0" style="color: orangered;">1</span>:</div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="kw1" style="color: #ff7700; font-weight: bold;">print</span> <span class="st0" style="color: darkslateblue;">"= start at "</span> + <span class="kw3" style="color: crimson;">time</span>.<span class="me1">ctime</span><span class="br0">(</span><span class="br0">)</span> + <span class="st0" style="color: darkslateblue;">" ="</span></div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
output <span class="sy0" style="color: #66cc66;">=</span> t.<span class="me1">search</span>.<span class="me1">tweets</span><span class="br0">(</span>q<span class="sy0" style="color: #66cc66;">=</span><span class="st0" style="color: darkslateblue;">"010"</span><span class="sy0" style="color: #66cc66;">,</span>lang<span class="sy0" style="color: #66cc66;">=</span><span class="st0" style="color: darkslateblue;">'ko'</span><span class="sy0" style="color: #66cc66;">,</span>count<span class="sy0" style="color: #66cc66;">=</span><span class="st0" style="color: darkslateblue;">'100'</span><span class="br0">)</span></div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="kw1" style="color: #ff7700; font-weight: bold;">print</span> output<span class="br0">[</span><span class="st0" style="color: darkslateblue;">'search_metadata'</span><span class="br0">]</span><span class="br0">[</span><span class="st0" style="color: darkslateblue;">'count'</span><span class="br0">]</span></div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
</div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="kw1" style="color: #ff7700; font-weight: bold;">for</span> s <span class="kw1" style="color: #ff7700; font-weight: bold;">in</span> output<span class="br0">[</span><span class="st0" style="color: darkslateblue;">'statuses'</span><span class="br0">]</span>:</div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
tid <span class="sy0" style="color: #66cc66;">=</span> s<span class="br0">[</span><span class="st0" style="color: darkslateblue;">'id'</span><span class="br0">]</span></div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
name <span class="sy0" style="color: #66cc66;">=</span> s<span class="br0">[</span><span class="st0" style="color: darkslateblue;">'user'</span><span class="br0">]</span><span class="br0">[</span><span class="st0" style="color: darkslateblue;">'name'</span><span class="br0">]</span>.<span class="me1">encode</span><span class="br0">(</span><span class="st0" style="color: darkslateblue;">'utf-8'</span><span class="br0">)</span></div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
text <span class="sy0" style="color: #66cc66;">=</span> s<span class="br0">[</span><span class="st0" style="color: darkslateblue;">'text'</span><span class="br0">]</span>.<span class="me1">replace</span><span class="br0">(</span><span class="st0" style="color: darkslateblue;">"'"</span><span class="sy0" style="color: #66cc66;">,</span><span class="st0" style="color: darkslateblue;">""</span><span class="br0">)</span>.<span class="me1">encode</span><span class="br0">(</span><span class="st0" style="color: darkslateblue;">'utf-8'</span><span class="br0">)</span></div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
number <span class="sy0" style="color: #66cc66;">=</span> findNum.<span class="me1">findall</span><span class="br0">(</span>s<span class="br0">[</span><span class="st0" style="color: darkslateblue;">'text'</span><span class="br0">]</span><span class="br0">)</span></div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
upload_time <span class="sy0" style="color: #66cc66;">=</span> s<span class="br0">[</span><span class="st0" style="color: darkslateblue;">'created_at'</span><span class="br0">]</span>.<span class="me1">encode</span><span class="br0">(</span><span class="st0" style="color: darkslateblue;">'utf-8'</span><span class="br0">)</span></div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
</div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="kw1" style="color: #ff7700; font-weight: bold;">if</span> number <span class="kw1" style="color: #ff7700; font-weight: bold;">is</span> <span class="br0">[</span><span class="br0">]</span>:</div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="kw1" style="color: #ff7700; font-weight: bold;">continue</span></div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
</div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
query <span class="sy0" style="color: #66cc66;">=</span> <span class="st0" style="color: darkslateblue;">"SELECT * FROM "</span>+DB_TABLE+<span class="st0" style="color: darkslateblue;">" WHERE tid="</span>+<span class="kw2" style="color: green;">str</span><span class="br0">(</span>tid<span class="br0">)</span></div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
cur.<span class="me1">execute</span><span class="br0">(</span>query<span class="br0">)</span></div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
</div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="kw1" style="color: #ff7700; font-weight: bold;">if</span> cur.<span class="me1">fetchone</span><span class="br0">(</span><span class="br0">)</span> <span class="sy0" style="color: #66cc66;">!=</span> <span class="kw2" style="color: green;">None</span>:</div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="kw1" style="color: #ff7700; font-weight: bold;">continue</span></div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
</div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="kw1" style="color: #ff7700; font-weight: bold;">for</span> n <span class="kw1" style="color: #ff7700; font-weight: bold;">in</span> number:</div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
query <span class="sy0" style="color: #66cc66;">=</span> <span class="st0" style="color: darkslateblue;">"INSERT INTO "</span>+DB_TABLE+<span class="st0" style="color: darkslateblue;">" (`tid`,`name`,`text`,`number`,`time`) VALUES("</span>+<span class="kw2" style="color: green;">str</span><span class="br0">(</span>tid<span class="br0">)</span>+<span class="st0" style="color: darkslateblue;">",'"</span>+name+<span class="st0" style="color: darkslateblue;">"','"</span>+text+<span class="st0" style="color: darkslateblue;">"','"</span>+<span class="kw2" style="color: green;">str</span><span class="br0">(</span>n<span class="br0">)</span>+<span class="st0" style="color: darkslateblue;">"','"</span>+upload_time+<span class="st0" style="color: darkslateblue;">"');"</span></div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="kw1" style="color: #ff7700; font-weight: bold;">print</span> query</div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
</div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="kw1" style="color: #ff7700; font-weight: bold;">try</span>:</div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
cur.<span class="me1">execute</span><span class="br0">(</span>query<span class="br0">)</span></div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
db.<span class="me1">commit</span><span class="br0">(</span><span class="br0">)</span></div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="kw1" style="color: #ff7700; font-weight: bold;">except</span>:</div>
</li>
<li class="li1" style="-webkit-user-select: none;"><div class="de1" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="kw1" style="color: #ff7700; font-weight: bold;">print</span> <span class="st0" style="color: darkslateblue;">"ERROR : "</span> + query</div>
</li>
<li class="li2" style="-webkit-user-select: none;"><div class="de2" style="-webkit-user-select: text; background-color: white; border-left-color: rgb(204, 204, 204); border-left-style: solid; border-left-width: 1px; color: black; margin: 0px 0px 0px -7px; padding: 0px 5px; position: relative; vertical-align: top;">
<span class="kw3" style="color: crimson;">time</span>.<span class="me1">sleep</span><span class="br0">(</span><span class="nu0" style="color: orangered;">30</span><span class="br0">)</span></div>
</li>
</ol>
carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.com0tag:blogger.com,1999:blog-6140308118243319568.post-59755249089384273622013-12-02T21:08:00.001+09:002015-04-17T01:17:20.069+09:00컴공아 일하자 (Comgong Job)<div class="separator" style="clear: both; text-align: center;">
</div>
<h1 style="border-bottom-color: rgb(221, 221, 221); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 2.5em; line-height: 1.7; margin-bottom: 15px; margin-left: 0px; margin-right: 0px; margin-top: 0px !important; padding: 0px; position: relative;">
Comgong Job</h1>
<iframe allowtransparency="true" frameborder="0" height="20" scrolling="0" src="http://ghbtns.com/github-btn.html?user=carpedm20&repo=comgong-job&type=watch&count=true" width="100"></iframe><iframe allowtransparency="true" frameborder="0" height="20" scrolling="0" src="http://ghbtns.com/github-btn.html?user=carpedm20&repo=comgong-job&type=follow" width="138"></iframe>
<br />
<h2 style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<a class="anchor" href="https://github.com/carpedm20/comgong-job/blob/master/README.md#what-is-comgong-job" name="what-is-comgong-job" style="bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>What is Comgong Job</h2>
<div style="border-top: 0px; box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
This is a python code for Comgong Job bot.</div>
<div style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
This is a program that uploads newest internship and recruit announcements to facebook automatically.</div>
<h2 style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<a class="anchor" href="https://github.com/carpedm20/comgong-job/blob/master/README.md#links" name="links" style="bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Links</h2>
<ul style="box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; line-height: 25.5px; margin: 15px 0px; padding: 0px 0px 0px 30px;">
<li style="box-sizing: border-box;">Facebook : <a href="https://www.facebook.com/comgong.job" style="box-sizing: border-box; color: #4183c4; text-decoration: none;">https://www.facebook.com/comgong.job</a></li>
<li style="box-sizing: border-box;">Mailing list : <a href="http://comgong.us.to/" style="box-sizing: border-box; color: #4183c4; text-decoration: none;">http://comgong.us.to</a></li>
</ul>
<h2 style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<a class="anchor" href="https://github.com/carpedm20/comgong-job/blob/master/README.md#copyright" name="copyright" style="bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Copyright</h2>
<div style="border-top: 0px; box-sizing: border-box; color: #333333; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 15px; line-height: 25.5px; margin-bottom: 15px; margin-top: 15px;">
Copyright (c) 2013 Kim Tae Hoon</div>
<h2 style="border-bottom-color: rgb(238, 238, 238); border-bottom-style: solid; border-bottom-width: 1px; box-sizing: border-box; color: #333333; cursor: text; font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 2em; line-height: 1.7; margin: 1em 0px 15px; padding: 0px; position: relative;">
<a class="anchor" href="https://github.com/carpedm20/comgong-job/blob/master/README.md#screenshots" name="screenshots" style="bottom: 0px; box-sizing: border-box; color: #4183c4; cursor: pointer; display: block; left: 0px; margin-left: -30px; padding-left: 30px; padding-right: 6px; position: absolute; text-decoration: none; top: 0px;"></a>Screenshots</h2>
<div class="separator" style="border-top: 0px; clear: both; text-align: center;">
<br /></div>
<div class="separator" style="border-top: 0px; clear: both; text-align: center;">
<b>* 2015.04.17 *</b></div>
<div class="separator" style="border-top: 0px; clear: both; text-align: center;">
<b><br /></b></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhu4_gXHwwtmd0MOy_OR0asmdqWPAur6aBgQXjogVB1q1J0w1l2XEjspd7jkdGlAIfNPFOxKIO56UisQlu6vUxXwtDV6nHxxIXunC9loBLkxGgnz44C0txGshZrK1sfSTdCNx4P45o5LJlx/s1600/%E1%84%89%E1%85%B3%E1%84%8F%E1%85%B3%E1%84%85%E1%85%B5%E1%86%AB%E1%84%89%E1%85%A3%E1%86%BA+2015-04-17+%E1%84%8B%E1%85%A9%E1%84%8C%E1%85%A5%E1%86%AB+1.16.25.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhu4_gXHwwtmd0MOy_OR0asmdqWPAur6aBgQXjogVB1q1J0w1l2XEjspd7jkdGlAIfNPFOxKIO56UisQlu6vUxXwtDV6nHxxIXunC9loBLkxGgnz44C0txGshZrK1sfSTdCNx4P45o5LJlx/s1600/%E1%84%89%E1%85%B3%E1%84%8F%E1%85%B3%E1%84%85%E1%85%B5%E1%86%AB%E1%84%89%E1%85%A3%E1%86%BA+2015-04-17+%E1%84%8B%E1%85%A9%E1%84%8C%E1%85%A5%E1%86%AB+1.16.25.png" height="640" width="600" /></a></div>
<div class="separator" style="border-top: 0px; clear: both; text-align: center;">
<b><br /></b></div>
<div class="separator" style="border-top: 0px; clear: both; text-align: center;">
<b><br /></b></div>
<div class="separator" style="border-top: 0px; clear: both; text-align: center;">
<b>* 2014.05.31 *</b></div>
<div class="separator" style="border-top: 0px; clear: both; text-align: center;">
<b><br /></b></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiUa4lnIYjH4-FiNHDdHfNxmbFLB1751JcEGRzsqhm_3B-h0_bqOMH3NLQfVPBMEDPK7XufLCLMx3g0pZP5VpgvNMQngc1QZVMornovTRVaXYZwwM0ca9fc5rWhTAbvmPdv6tm5csnAAhJ/s1600/screenshot.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhiUa4lnIYjH4-FiNHDdHfNxmbFLB1751JcEGRzsqhm_3B-h0_bqOMH3NLQfVPBMEDPK7XufLCLMx3g0pZP5VpgvNMQngc1QZVMornovTRVaXYZwwM0ca9fc5rWhTAbvmPdv6tm5csnAAhJ/s1600/screenshot.png" /></a></div>
<div class="separator" style="border-top: 0px; clear: both; text-align: center;">
<b><br /></b></div>
<div class="separator" style="border-top: 0px; clear: both; text-align: center;">
<b><br /></b></div>
<div class="separator" style="border-top: 0px; clear: both; text-align: center;">
<b>* 2013.12.05 *</b></div>
<div class="separator" style="border-top: 0px; clear: both; text-align: center;">
<br /></div>
<div class="separator" style="border-top: 0px; clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTkobwomx5xraXVkEZIHTGUCfdTWdzpCXqA-XTsV14dr8KOFDghyphenhyphenLnnk6leqF1NHSvfLf7vrMxCggcWSBiR-edtsYtydVFHl3jFttpBcerYerFoT-CfxPJGelmIM00PF4W0PD0FcMzztlm/s1600/com.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTkobwomx5xraXVkEZIHTGUCfdTWdzpCXqA-XTsV14dr8KOFDghyphenhyphenLnnk6leqF1NHSvfLf7vrMxCggcWSBiR-edtsYtydVFHl3jFttpBcerYerFoT-CfxPJGelmIM00PF4W0PD0FcMzztlm/s640/com.jpg" height="640" width="546" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCupllA2kcdWSBDVdwqYp7fy9tuFwjymVcym_-0-A7PZqQSzF3HgKk37C14yYhR9KEMRJiG3DrYEK1vyHp_eWvC-brKFs9NUx1gMc-6nfYvFrnTH3_uQWkufaCFGgz17D2AukNaTDg10sf/s1600/cs_email_screenshot.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCupllA2kcdWSBDVdwqYp7fy9tuFwjymVcym_-0-A7PZqQSzF3HgKk37C14yYhR9KEMRJiG3DrYEK1vyHp_eWvC-brKFs9NUx1gMc-6nfYvFrnTH3_uQWkufaCFGgz17D2AukNaTDg10sf/s1600/cs_email_screenshot.png" height="440" width="640" /></a></div>
carpedm20http://www.blogger.com/profile/16894116120629525860noreply@blogger.com0