beautifulsoup 크롤링 예제

당신이 BeautifulSoup을 사용하고 요청하는 경우 당신은 당신의 자신의 모든 작업을 수행할 필요가 – 당신은 처음부터 크롤링 시스템을 구축해야합니다. .parent 특성을 통해 요소의 부모에 액세스할 수 있습니다. 예제 „세 자매“ 문서에서 태그는 태그의 부모입니다. 나는 필터의 종류에 몇 가지 예를 준, 그러나 여기에 몇 가지 더 있습니다 : 당신이 그것에 익숙하지 않은 경우, 아름다운 수프 문서는 뿐만 아니라 시작하는 데 도움이 좋은 예를 많이 가지고있다. 아름다운 수프는 두 개의 NavigableString 또는 태그 개체가 동일한 HTML 또는 XML 태그를 나타낼 때 동일하다고 말합니다. 이 예제에서는 두 <b> 태그가 개체 트리의 다른 부분에 살고 있더라도 „<b>pizza</b>„처럼 보이기 때문에 동일하게 처리됩니다. 그것은 이상한 나라의 앨리스에서 이야기의 일부입니다 : 웹 스크래핑의 인기있는 사용은 항공권, 콘서트 등과 같은 온라인 거래를 검색하는 것입니다. 예를 들어 파이썬 스크립트는 티켓 판매가 온라인 상태가 되면 웹 사이트를 긁어내고 봇을 사용하여 최상의 티켓을 구입할 수 있습니다. 스크립트는 분당 여러 요청을 생성할 수 있으므로 사람보다 훨씬 빠르고 효율적으로 이 작업을 수행할 수 있습니다. 사용자 에이전트는 사용 중이던 스크레이퍼에 대한 자세한 정보에 대한 링크와 같은 정보를 제공할 수 있습니다. 스크레이퍼에 대한 페이지에는 사용 중인 정보, 크롤링중인 IP 주소 및 봇이 문제를 일으키는 경우 연락할 수 있는 방법이 포함될 수 있습니다.</p> <p>요청도 크롤러가 아니므로 요청에는 기능이 없습니다. 그것은 단지 당신이 BeautifulSoup 또는 이와 유사한 사용할 수 있도록 서버에서 데이터를 읽습니다. 때로는 문서가 주로 UTF-8에 있지만 (다시) 마이크로 소프트 스마트 따옴표와 같은 Windows-1252 문자가 포함되어 있습니다. 이 경우 웹 사이트에 여러 소스의 데이터가 포함될 때 발생할 수 있습니다. UnicodeDammit.detwingle()를 사용하여 이러한 문서를 순수 UTF-8로 전환할 수 있습니다. 간단한 예는 다음과 같습니다: 또한 웹 사이트에서 귀하를 식별하고 질문이 있는 경우 후속 조치를 취할 수 있도록 이름과 이메일이 있는 헤더를 긁어내는 것이 좋습니다. Python 요청 라이브러리와 함께 사용할 수 있는 헤더의 예는 다음과 같습니다: HTMLFormatter 또는 XMLFormatter 하위 클래스지정하면 출력을 더 많이 제어할 수 있습니다. 예를 들어, 아름다운 수프는 기본적으로 모든 태그의 속성을 정렬합니다: 이제 데이터에 대한 몇 가지 분석을 수행할 수 있습니다. 예를 들어 정규식과 Series.str.extract 메서드를 사용하여 숫자 온도 값을 가져올 수 있습니다. 여기에서, 당신은 당신의 선택의 다른 웹 사이트를 스크랩하려고 할 수 있습니다. 질문이 있는 경우, 아래에 댓글 섹션에 게시하십시오.</p> <p>formatter=없음을 전달하면 아름다운 수프는 출력시 문자열을 전혀 수정하지 않습니다. 이것은 가장 빠른 옵션, 하지만 그것은 이러한 예제에서와 같이 잘못 된 HTML/XML생성 아름 다운 수프이어질 수 있습니다.: 이후 우리는 아름 다운 수프와 웹 스크래핑에 대해 배울 수 이 프로젝트를 하 고 있을 거 야, 우리는 사이트에서 너무 많은 데이터를 가져올 필요가 없습니다. 따라서 우리가 스크레이핑하려는 아티스트 데이터의 범위를 제한해 보겠습니다. </p> </div><!-- .entry-content --> <footer class="entry-meta"> Dieser Eintrag wurde veröffentlicht in Allgemein. Lesezeichen auf den <a href="http://godsofwien.com/?p=6290" rel="Lesezeichen">Permanentlink</a>. </footer><!-- .entry-meta --> </article><!-- #post-## --> <nav class="navigation post-navigation" role="navigation"> <h1 class="screen-reader-text">Artikel-Navigation</h1> <div class="nav-links"> <div class="nav-previous"><a href="http://godsofwien.com/?p=6289" rel="prev"><span class="meta-nav screen-reader-text">« Voriger Beitrag</span></a></div> <div class="nav-next"><a href="http://godsofwien.com/?p=6291" rel="next"><span class="meta-nav screen-reader-text">Nächster Beitrag »</span></a></div> </div><!-- .nav-links --> </nav><!-- .navigation --> </main><!-- #main --> </div><!-- #primary --> </div><!-- #content --> </div><!-- .page-wrapper --> <div class="bottom-wrapper has-sidebar"> <div class="trigger-wrapper clear"> <a href="#" class="widgets-trigger closed" title="Widgets"> <span class="fa fa-angle-up"><span class="screen-reader-text">Widgets</span></span> </a> </div><!-- .trigger-wrapper --> <div id="widgets-wrapper" class="bottom-panel hide"> <div id="secondary" role="complementary" class="clear"> <div id="top-sidebar-one" class="widget-area" role="complementary"> <aside id="search-2" class="widget widget_search"><form role="search" method="get" class="search-form" action="http://godsofwien.com/"> <label> <span class="screen-reader-text">Suche nach:</span> <input type="search" class="search-field" placeholder="Suche …" value="" name="s"> </label> <input type="submit" class="search-submit" value="Suche"> </form> </aside> <aside id="recent-posts-2" class="widget widget_recent_entries"> <h1 class="widget-title">Letzte Beiträge</h1> <ul> <li> <a href="http://godsofwien.com/?p=6310">관계형 데이터베이스 예제</a> </li> <li> <a href="http://godsofwien.com/?p=6309">파이썬 계산기 예제</a> </li> <li> <a href="http://godsofwien.com/?p=6308">푸리에 변환 예제</a> </li> <li> <a href="http://godsofwien.com/?p=6307">나이브 베이즈 예제</a> </li> <li> <a href="http://godsofwien.com/?p=6306">백트래킹 알고리즘 예제</a> </li> </ul> </aside><aside id="recent-comments-2" class="widget widget_recent_comments"><h1 class="widget-title">Letzte Kommentare</h1><ul id="recentcomments"></ul></aside><aside id="archives-2" class="widget widget_archive"><h1 class="widget-title">Archive</h1> <ul> <li><a href='http://godsofwien.com/?m=201908'>August 2019</a></li> <li><a href='http://godsofwien.com/?m=201905'>Mai 2019</a></li> <li><a href='http://godsofwien.com/?m=201902'>Februar 2019</a></li> <li><a href='http://godsofwien.com/?m=201812'>Dezember 2018</a></li> <li><a href='http://godsofwien.com/?m=201807'>Juli 2018</a></li> <li><a href='http://godsofwien.com/?m=201806'>Juni 2018</a></li> <li><a href='http://godsofwien.com/?m=201804'>April 2018</a></li> </ul> </aside><aside id="categories-2" class="widget widget_categories"><h1 class="widget-title">Kategorien</h1> <ul> <li class="cat-item-none">Keine Kategorien</li> </ul> </aside><aside id="meta-2" class="widget widget_meta"><h1 class="widget-title">Meta</h1> <ul> <li><a href="http://godsofwien.com/wp-login.php">Anmelden</a></li> <li><a href="http://godsofwien.com/?feed=rss2">Beitrags-Feed (<abbr title="Really Simple Syndication">RSS</abbr>)</a></li> <li><a href="http://godsofwien.com/?feed=comments-rss2">Kommentare als <abbr title="Really Simple Syndication">RSS</abbr></a></li> <li><a href="https://wordpress.org/" title="Powered by WordPress, state-of-the-art semantic personal publishing platform.">WordPress.org</a></li> </ul> </aside><aside id="text-2" class="widget widget_text"> <div class="textwidget"></div> </aside><aside id="meta-3" class="widget widget_meta"><h1 class="widget-title">Meta</h1> <ul> <li><a href="http://godsofwien.com/wp-login.php">Anmelden</a></li> <li><a href="http://godsofwien.com/?feed=rss2">Beitrags-Feed (<abbr title="Really Simple Syndication">RSS</abbr>)</a></li> <li><a href="http://godsofwien.com/?feed=comments-rss2">Kommentare als <abbr title="Really Simple Syndication">RSS</abbr></a></li> <li><a href="https://wordpress.org/" title="Powered by WordPress, state-of-the-art semantic personal publishing platform.">WordPress.org</a></li> </ul> </aside> </div><!-- #first .widget-area --> </div><!-- #secondary --> </div><!-- #widgets-wrapper --> <footer id="colophon" class="site-footer" role="contentinfo"> <div class="site-info"> <a href="http://wordpress.org/" rel="generator">Dieses Blog läuft mit WordPress</a> <span class="sep"> | </span> Theme: Singl von <a href="https://wordpress.com/themes/" rel="designer">WordPress.com</a>. </div><!-- .site-info --> </footer><!-- #colophon --> </div><!-- .bottom-wrapper --> </div><!-- #page --> <!--facebook like and share js --> <div id="fb-root"></div> <script>(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&appId=1425108201100352&version=v2.0"; fjs.parentNode.insertBefore(js, fjs); }(document, 'script', 'facebook-jssdk'));</script> <!--google share and like and e js --> <script type="text/javascript"> window.___gcfg = { lang: 'en-US' }; (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })(); </script> <script type='text/javascript' src='https://apis.google.com/js/plusone.js'></script> <script type='text/javascript' src='https://apis.google.com/js/platform.js'></script> <!-- google share --> <script type="text/javascript"> (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/platform.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })(); </script> <!-- Addthis js --> <script type="text/javascript" src="https://s7.addthis.com/js/300/addthis_widget.js#pubid=ra-558ac14e7f79bff7"></script> <script type="text/javascript"> var addthis_config = { ui_click: true }; </script> <!-- twitter JS End --> <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="https://platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script> <script> jQuery( document ).scroll(function( $ ) { var y = jQuery(this).scrollTop(); if (/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)) { if(jQuery(window).scrollTop() + jQuery(window).height() >= jQuery(document).height()-100) { jQuery('.sfsi_plus_outr_div').css({'z-index':'9996',opacity:1,top:jQuery(window).scrollTop()+"px",position:"absolute"}); jQuery('.sfsi_plus_outr_div').fadeIn(200); jQuery('.sfsi_plus_FrntInner').fadeIn(200); } else { jQuery('.sfsi_plus_outr_div').fadeOut(); jQuery('.sfsi_plus_FrntInner').fadeOut(); } } else { if(jQuery(window).scrollTop() + jQuery(window).height() >= jQuery(document).height()-3) { jQuery('.sfsi_plus_outr_div').css({'z-index':'9996',opacity:1,top:jQuery(window).scrollTop()+200+"px",position:"absolute"}); jQuery('.sfsi_plus_outr_div').fadeIn(200); jQuery('.sfsi_plus_FrntInner').fadeIn(200); } else { jQuery('.sfsi_plus_outr_div').fadeOut(); jQuery('.sfsi_plus_FrntInner').fadeOut(); } } }); </script> <div class="sfsiplus_norm_row sfsi_plus_wDiv" id="sfsi_plus_floater" style="z-index: 9999;width:225px;text-align:left;position:absolute;position:absolute;left:30px;bottom:0px"><div style='width:40px; height:40px;margin-left:5px;margin-bottom:5px;' class='sfsi_plus_wicons shuffeldiv '><div class='sfsiplus_inerCnt'><a class=' sficn' effect='fade_in' target='_blank' href='http://godsofwien.com/?feed=rss2' id='sfsiplusid_rss' alt='RSS' style='opacity:0.6' ><img alt='RSS' title='RSS' src='http://godsofwien.com/wp-content/plugins/ultimate-social-media-plus/images/icons_theme/transparent/transparent_rss.png' width='40' style='' class='sfcm sfsi_wicon' effect='fade_in' /></a></div></div><div style='width:40px; height:40px;margin-left:5px;margin-bottom:5px;' class='sfsi_plus_wicons shuffeldiv '><div class='sfsiplus_inerCnt'><a class=' sficn' effect='fade_in' target='_blank' href='http://www.specificfeeds.com/widget/emailsubscribe/MTc1NjU5/OA==/' id='sfsiplusid_email' alt='Follow by Email' style='opacity:0.6' ><img alt='Follow by Email' title='Follow by Email' src='http://godsofwien.com/wp-content/plugins/ultimate-social-media-plus/images/icons_theme/transparent/transparent_subscribe.png' width='40' style='' class='sfcm sfsi_wicon' effect='fade_in' /></a></div></div><div style='width:40px; height:40px;margin-left:5px;margin-bottom:5px;' class='sfsi_plus_wicons shuffeldiv '><div class='sfsiplus_inerCnt'><a class=' sficn' effect='fade_in' href='javascript:void(0)' id='sfsiplusid_facebook' alt='Facebook' style='opacity:0.6' ><img alt='Facebook' title='Facebook' src='http://godsofwien.com/wp-content/plugins/ultimate-social-media-plus/images/icons_theme/transparent/transparent_facebook.png' width='40' style='' class='sfcm sfsi_wicon' effect='fade_in' /></a><div class="sfsi_tool_tip_2 fb_tool_bdr sfsiTlleft" style="width:62px ;opacity:0;z-index:-1;margin-left:-47.5px;" id="sfsiplusid_facebook"><span class="bot_arow bot_fb_arow"></span><div class="sfsi_inside"><div class='icon1'><a href='http://www.facebook.com/godsofwien' target='_blank'><img alt='Facebook' title='Facebook' src='http://godsofwien.com/wp-content/plugins/ultimate-social-media-plus/images/visit_icons/facebook.png' /></a></div><div class='icon2'><fb:like href="http://godsofwien.com/?p=6290" width="180" send="false" showfaces="false" layout="button" action="like"></fb:like></div><div class='icon3'><fb:share-button href="http://godsofwien.com/?p=6290" width="140" type="button"></fb:share-button></div></div></div></div></div><div style='width:40px; height:40px;margin-left:5px;margin-bottom:5px;' class='sfsi_plus_wicons shuffeldiv '><div class='sfsiplus_inerCnt'><a class=' sficn' effect='fade_in' href='javascript:void(0)' id='sfsiplusid_google' alt='Google+' style='opacity:0.6' ><img alt='Google+' title='Google+' src='http://godsofwien.com/wp-content/plugins/ultimate-social-media-plus/images/icons_theme/transparent/transparent_google.png' width='40' style='' class='sfcm sfsi_wicon' effect='fade_in' /></a><div class="sfsi_tool_tip_2 gpls_tool_bdr sfsiTlleft" style="width:76px ;opacity:0;z-index:-1;margin-left:-54.5px;" id="sfsiplusid_google"><span class="bot_arow bot_gpls_arow"></span><div class="sfsi_inside"><div class='icon2'><div class="g-plusone" data-href="http://godsofwien.com/?p=6290" data-size="large" data-annotation="none" ></div></div><div class='icon3'><div class="g-plus" data-action="share" data-annotation="none" data-height="24" data-href="http://godsofwien.com/?p=6290">http://godsofwien.com/?p=6290"></div></div></div></div></div></div><div style='width:40px; height:40px;margin-left:5px;margin-bottom:5px;' class='sfsi_plus_wicons shuffeldiv '><div class='sfsiplus_inerCnt'><a class=' sficn' effect='fade_in' href='javascript:void(0)' id='sfsiplusid_twitter' alt='Twitter' style='opacity:0.6' ><img alt='Twitter' title='Twitter' src='http://godsofwien.com/wp-content/plugins/ultimate-social-media-plus/images/icons_theme/transparent/transparent_twitter.png' width='40' style='' class='sfcm sfsi_wicon' effect='fade_in' /></a><div class="sfsi_tool_tip_2 twt_tool_bdr sfsiTlleft" style="width:59px ;opacity:0;z-index:-1;margin-left:-46px;" id="sfsiplusid_twitter"><span class="bot_arow bot_twt_arow"></span><div class="sfsi_inside"><div class='icon2'><a rel="nofollow" href="http://twitter.com/share" data-count="none" class="sr-twitter-button twitter-share-button" lang="en" data-url="http://godsofwien.com/?p=6290" data-text="Hey, check out this cool site I found: www.yourname.com #Topic via@my_twitter_name" ></a></div></div></div></div></div><div style='width:40px; height:40px;margin-left:5px;margin-bottom:5px;' class='sfsi_plus_wicons shuffeldiv '><div class='sfsiplus_inerCnt'><a class='addthis_button sficn' effect='fade_in' target='_blank' href='http://www.addthis.com/bookmark.php?v=250' id='sfsiplusid_share' alt='SHARE' style='opacity:0.6' ><img alt='SHARE' title='SHARE' src='http://godsofwien.com/wp-content/plugins/ultimate-social-media-plus/images/icons_theme/transparent/transparent_share.png' width='40' style='' class='sfcm sfsi_wicon' effect='fade_in' /></a></div></div><div style='width:40px; height:40px;margin-left:5px;margin-bottom:5px;' class='sfsi_plus_wicons shuffeldiv '><div class='sfsiplus_inerCnt'><a class=' sficn' effect='fade_in' target='_blank' href='https://www.youtube.com/watch?v=DPp9DAdCoo8' id='sfsiplusid_youtube' alt='YouTube' style='opacity:0.6' ><img alt='YouTube' title='YouTube' src='http://godsofwien.com/wp-content/plugins/ultimate-social-media-plus/images/icons_theme/transparent/transparent_youtube.png' width='40' style='' class='sfcm sfsi_wicon' effect='fade_in' /></a></div></div></div ><input type='hidden' id='sfsi_plus_floater_sec' value='bottom-left' /></div><script>jQuery(".sfsi_plus_widget").each(function( index ) { if(jQuery(this).attr("data-position") == "widget") { var wdgt_hght = jQuery(this).children(".sfsiplus_norm_row.sfsi_plus_wDiv").height(); var title_hght = jQuery(this).parent(".widget.sfsi_plus").children(".widget-title").height(); var totl_hght = parseInt( title_hght ) + parseInt( wdgt_hght ); jQuery(this).parent(".widget.sfsi_plus").css("min-height", totl_hght+"px"); } });jQuery( document ).ready(function( $ ) { sfsi_plus_float_widget('bottom')});jQuery( document ).ready(function( $ ) { jQuery('.sfsi_plus_wDiv').each(function(){ new window.Manipulator( jQuery(this)); }); setTimeout(function(){ jQuery('#sfsi_plus_wDiv').each(function(){ jQuery(this).click(); })},2000); setInterval(function(){ jQuery('#sfsi_plus_wDiv').each(function(){ jQuery(this).click(); })},10000); });</script><script type='text/javascript' src='http://godsofwien.com/wp-content/plugins/ultimate-social-media-plus/js/jquery-ui-min.js?ver=4.2.25'></script> <script type='text/javascript' src='http://godsofwien.com/wp-content/plugins/ultimate-social-media-plus/js/shuffle/modernizr.custom.min.js?ver=4.2.25'></script> <script type='text/javascript' src='http://godsofwien.com/wp-content/plugins/ultimate-social-media-plus/js/shuffle/jquery.shuffle.min.js?ver=4.2.25'></script> <script type='text/javascript' src='http://godsofwien.com/wp-content/plugins/ultimate-social-media-plus/js/shuffle/random-shuffle-min.js?ver=4.2.25'></script> <script type='text/javascript'> /* <![CDATA[ */ var ajax_object = {"ajax_url":"http:\/\/godsofwien.com\/wp-admin\/admin-ajax.php","plugin_url":"http:\/\/godsofwien.com\/wp-content\/plugins\/ultimate-social-media-plus\/"}; /* ]]> */ </script> <script type='text/javascript' src='http://godsofwien.com/wp-content/plugins/ultimate-social-media-plus/js/custom.js?ver=4.2.25'></script> <script type='text/javascript' src='http://godsofwien.com/wp-content/themes/singl/js/navigation.js?ver=20120206'></script> <script type='text/javascript' src='http://godsofwien.com/wp-content/themes/singl/js/skip-link-focus-fix.js?ver=20130115'></script> <script type='text/javascript' src='http://godsofwien.com/wp-includes/js/underscore.min.js?ver=1.6.0'></script> <script type='text/javascript' src='http://godsofwien.com/wp-content/themes/singl/js/media.js?ver=20140411'></script> <script type='text/javascript'> /* <![CDATA[ */ var singl_background_image_vars = {"header_bg":"1"}; var singl_script_vars = {"bg_image_url":"http:\/\/godsofwien.com\/wp-content\/uploads\/gods3.jpg"}; /* ]]> */ </script> <script type='text/javascript' src='http://godsofwien.com/wp-content/themes/singl/js/singl.js?ver=20140106'></script> <script type='text/javascript' src='http://godsofwien.com/wp-content/themes/singl/js/backstretch.js?ver=20130619'></script> </body> </html>