BeautifulSoup4(bs4)は、Pythonによるスクレイピング技術で多用されるHTML/XML解析用ライブラリです。
ネット上で様々なデータが存在しますが、基本的にサイト内で表示される情報はHTML構造を持つデータになります。
上記のデータを解析することで特定データの抽出から保存・解析まで実施できる優れたライブラリになります。
ここでは、基本的なBeautifulSoup4(bs4)のインストールから使い方まで解説します。
- SIer/Web系企業での実務経験があるフリーランスエンジニア
- プログラミングスクールでの講師実績あり
- HR領域によるエンジニア特化の採用代行を業務委託で兼務
BeautifulSoup4(bs4)とは
BeautifulSoup4(bs4)は、先述した通りスクレイピング技術として多用されるケースが多いです。
また、本ライブラリはHTML/XML構造を持つデータに対して解析を実施するライブラリであることから、サイトデータ取得のrequestsライブラリと併用するのが一般的です。
スクレイピング用ライブラリの違いと比較
代表的なスクレイピング用ライブラリは、主に4つになります。
ライブラリ | HTML ダウンロード | コード抽出/解析 | データ保存 | ページ分類 | 処理速度 |
---|---|---|---|---|---|
requests | 静的 | ||||
BeautifulSoup | 静的 | ||||
Selenium | 静的, 動的 | ||||
Scrapy | 静的 |
特に、本記事で解説するBeautifulSoup4はrequestsライブラリと同時に活用するケースが多いです。
また、静的ページと動的ページによってSeleniumとrequestsの使い分けが必要になるケースがあります。
Seleniumにおける各メソッドの使い方を詳細に知りたい人は、「【Python】 Seleniumとは?インストールから使い方まで徹底解説!」を一読ください。
BeautifulSoup4(bs4)のインストール
BeautifulSoup4(bs4)はサードパーティライブラリであるため、別途インストールが必要になります。
.pyファイルにコードを記述する前にBeautifulSoup4(bs4)をインストールしておきましょう。
pip install bs4
pip install beautifulsoup4
どちらでもBeautifulSoup4が利用できますが、”pip install BeautifulSoup”の場合、古いバージョン(3)がインストールされる可能性があります。
BeautifulSoup4は、bs4ライブラリのモジュール(一部)であるためbs4でインストールすれば間違いはないです。
from bs4 import BeautifulSoup
.pyファイルにコードを記載する場合は、上記のようにbs4からBeautifulSoupモジュールをインポートして利用します。
また、requestsライブラリも同時に利用するため、まだインストールが済んでいない人は「【Python】requestsとは?インストールから使い方まで徹底解説!」を一読ください。
BeautifulSoup4がインストール・インポートできない場合のエラー対処方法
ネット検索結果を確認してると、「BeautifulSoup4がインストールできない。」「BeautifulSoup4がimportできない。」といったエラーを見かけます。
エラーが発生する原因として考えられるのは、以下のケースになります。
- pipモジュールのバージョンアップ管理
- BeautifulSoup4のimport時の記述確認とPython環境問題
インストール/インポート時に分けてそれぞれ解説します。
pipモジュールのバージョンアップ管理
BeautifulSoup4をインストールする際に、そもそもインストール時のエラーが発生するケースがあります。
そのため、インストールやパッケージ管理を実施するpipモジュールをアップデートする必要があります。
pip install -U pip
上記のコマンドをコマンドプロンプト(PowerShell)やターミナルにて実行すれば、pipモジュールのアップデートが完了します。
また、pipで主に利用できるコマンドを知っておくとエラー解決の糸口になる可能性があるため、知っておくとよいでしょう。
コマンド名 | 説明 |
---|---|
pip isntall <package-name> | 指定のパッケージをインストールする |
pip isntall <package-name>==<version> | パッケージのバージョンを指定してインストールする |
pip check | パッケージとの依存関係を確認する |
pip list | 全パッケージをリスト表示する |
pip list -o | アップデートが必要なパッケージをリスト表示する |
pip list -u | 最新バージョンのパッケージをリスト表示する |
pip freeze | パッケージ名とバージョンをセット表示する (requirements.txtで非常に便利) |
pip install -U <package-name> | 指定のパッケージをアップデートする |
pip uninstall <package-name> | 指定のパッケージをアンインストールする |
pip show <package-name> | 指定のパッケージにおける詳細情報を確認する |
特に、Pythonのバージョンやインストールしている各パッケージとの依存関係によっては、インストール時やアップデート時にエラーを引き起こす可能性があります。
BeautifulSoupとBeautifulSoup4の違いによるPython環境問題
次に、BeautifulSoup4のimport(インポート)時に注意が必要な事例を解説します。
プログラミング初心者がコードの記述で間違える可能性がある事例は以下のケースです。
- そもそもimport時に記述したコードが間違っている
- Python環境問題としてバージョンが間違っている
Stack Overflowや質問サイトなどで見かけるimport時のエラーとして以下の記述が見受けられます。
# 以下の記述はエラー
from bs4 import BeautifulSoup4
# 以下のコードを試してみてください
from bs4 import BeautifulSoup
とてもややこしいですが、BeautifulSoup4
はあくまでも分かりやすくバージョンを後ろに付与していますが、コードで記述する場合はBeautifulSoup
と記述すれば問題ありません。
また、Python2系とPython3系によってもエラーが発生するケースがあります。
Python環境の違いによるBeautifulSoupの使い分けに関しては、以下のドキュメントを参考にしてください。
requests&BeautifulSoupによるスクレイピングの事前準備
上述した通り、特定データを抽出する前に事前準備として取得したサイト情報にアクセスし、HTML/XML構造を持つサイトデータを取得する必要があります。
ここでは事前準備として、requestsライブラリによるスクレイピング対象となるサイト情報取得から始めます。
import requests
url = 'https://google.co.jp/search?='
params = {'q':'Python'}
response = requests.get(url, params=params)
上記のコードでは、requestsライブラリをインポート後.getメソッドにてurlと検索パラメータを設定しています。
実際に、responseオブジェクトにて返されたテキストデータを確認します。
<!doctype html><html itemscope="" itemtype="http://schema.org/WebPage" lang="ja"><head><meta content="世界中のあらゆる情報を検索するためのツールを提供しています。さまざまな検索機能を活用して、お探しの情報を見つけてください。" name="description"><meta content="noodp" name="robots"><meta content="text/html; charset=UTF-8" http-equiv="Content-Type"><meta content="/images/branding/googleg/1x/googleg_standard_color_128dp.png" itemprop="image"><title>Google</title><script nonce="7SrrK0Im7SpdUnC2WbJcDg">(function(){var _g={kEI:'E4CqZNzaDuLF9APn2ruwBA',kEXPI:'0,1
500文字までを確認しましたが、無事Google検索結果のHTMLデータを取得できています。
BeautifulSoupの基本的な使い方
サイトデータを取得できたら、BeautifulSoupを利用して解析器(パーサー)に掛ける必要があります。
soup = BeautifulSoup(解析対象のHTML/XML, '利用するparser')
引数 | parser | 特徴 | 追加ライブラリの有無 |
---|---|---|---|
HTML | html.parser | 標準ライブラリ | 不要 |
XML | xml | 高速処理可能 | 必要 |
lxml | lxml | 高速処理可能 | 必要 |
HTML5lib | html5lib | HTML5処理可能 | 必要 |
html.parser以外は、別途ライブラリのインストールが必要なため、本記事ではPython標準ライブラリのhtml.parserを利用します。
取得したサイトデータに対して解析結果を記載します。
print(soup)
Google検索結果のHTMLデータ
<!DOCTYPE html>
<html lang="ja"><head><meta charset="utf-8"/><meta content="/images/branding/googleg/1x/googleg_standard_color_128dp.png" itemprop="image"/><title>Python BeautifulSoup - Google 検索</title><script nonce="JPLNkpT2jn_kk_lCO_jAwg">(function(){
document.documentElement.addEventListener("submit",function(b){var a;if(a=b.target){var c=a.getAttribute("data-submitfalse");a="1"===c||"q"===c&&!a.elements.q.value?!0:!1}else a=!1;a&&(b.preventDefault(),b.stopPropagation())},!0);document.documentElement.addEventListener("click",function(b){var a;a:{for(a=b.target;a&&a!==document.documentElement;a=a.parentElement)if("A"===a.tagName){a="1"===a.getAttribute("data-nohref");break a}a=!1}a&&b.preventDefault()},!0);}).call(this);(function(){var a=window.performance;window.start=Date.now();a:{var b=window;if(a){var c=a.timing;if(c){var d=c.navigationStart,f=c.responseStart;if(f>d&&f<=window.start){window.start=f;b.wsrt=f-d;break a}}a.now&&(b.wsrt=Math.floor(a.now()))}}window.google=window.google||{};var h=function(g){g&&g.target.setAttribute("data-iml",String(Date.now()))};document.documentElement.addEventListener("load",h,!0);google.rglh=function(){document.documentElement.removeEventListener("load",h,!0)};}).call(this);(function(){window._skwEvts=[];})();(function(){window.google.erd={jsr:1,bv:1825,de:true};})();(function(){var sdo=false;var mei=10;
var l=this||self;var m,n=null!=(m=l.mei)?m:1,p,q=null!=(p=l.sdo)?p:!0,r=0,t,u=google.erd,v=u.jsr;google.ml=function(a,b,d,h,e){e=void 0===e?2:e;b&&(t=a&&a.message);if(google.dl)return google.dl(a,e,d),null;if(0>v){window.console&&console.error(a,d);if(-2===v)throw a;b=!1}else b=!a||!a.message||"Error loading script"===a.message||r>=n&&!h?!1:!0;if(!b)return null;r++;d=d||{};b=encodeURIComponent;var c="/gen_204?atyp=i&ei="+b(google.kEI);google.kEXPI&&(c+="&jexpid="+b(google.kEXPI));c+="&srcpg="+b(google.sn)+"&jsr="+b(u.jsr)+"&bver="+b(u.bv);var f=a.lineNumber;void 0!==f&&(c+="&line="+f);var g=
a.fileName;g&&(0<g.indexOf("-extension:/")&&(e=3),c+="&script="+b(g),f&&g===window.location.href&&(f=document.documentElement.outerHTML.split("\n")[f],c+="&cad="+b(f?f.substring(0,300):"No script found.")));c+="&cad=ple_"+google.ple;google.ple&&1===google.ple&&(e=2);c+="&jsel="+e;for(var k in d)c+="&",c+=b(k),c+="=",c+=b(d[k]);c=c+"&emsg="+b(a.name+": "+a.message);c=c+"&jsst="+b(a.stack||"N/A");12288<=c.length&&(c=c.substr(0,12288));a=c;h||google.log(0,"",a);return a};window.onerror=function(a,b,d,h,e){if(t!==a){a=e instanceof Error?e:Error(a);void 0===d||"lineNumber"in a||(a.lineNumber=d);void 0===b||"fileName"in a||(a.fileName=b);b=void 0;if(a.stack&&(-1!==a.stack.indexOf("?xjs=s0")||-1!==a.stack.indexOf("&xjs=s0"))){b=document.querySelectorAll("script[src*=\\/xjs\\/_\\/js\\/]");for(h=d=0;h<b.length;h++)d+=b[h].async?1:0;var c=e=h=-1,f=-1,g=-1;if(performance&&google.xjsu){h=0;e=google.timers.load.t.xjsee?1:0;f=c=0;g=performance.getEntriesByType("resource");for(var k=
0;k<g.length;k++)g[k].name===google.xjsu&&(h=1),-1!==g[k].name.indexOf("/xjs/_/js/")&&(c+=1,f+="script"===g[k].initiatorType?1:0);g=c-f}b={cad:"pl_"+h+".pe_"+e+".asc_"+d+".tsc_"+b.length+".fasc_"+(b.length-d)+".lxc_"+c+".lsx_"+f+".lnsx_"+g}}google.ml(a,!1,b,!1,"SyntaxError"===a.name||"SyntaxError"===a.message.substring(0,11)||-1!==a.message.indexOf("Script error")?3:0)}t=null;q&&r>=n&&(window.onerror=null)};})();(function(){var c=[],e=0;window.ping=function(b){-1==b.indexOf("&zx")&&(b+="&zx="+Date.now());var a=new Image,d=e++;c[d]=a;a.onerror=a.onload=a.onabort=function(){delete c[d]};a.src=b};}).call(this);</script><style>a{color:#1a0dab;text-decoration:none;tap-highlight-color:rgba(0,0,0,.10)}a:visited{color:#4b11a8}a:hover{text-decoration:underline}img{border:0}html{font-family:arial,sans-serif;font-size:14px;line-height:20px;text-size-adjust:100%;color:#3c4043;word-wrap:break-word;background-color:#fff}.bRsWnc{background-color:#fff;border-top:1px solid #dadce0;height:39px;overflow:hidden}.N6RWV{height:51px;overflow-scrolling:touch;overflow-x:auto;overflow-y:hidden}.Uv67qb{box-pack:justify;font-size:12px;line-height:37px;justify-content:space-between;justify-content:space-between}.Uv67qb a,.Uv67qb span{color:#70757a;display:block;flex:none;padding:0 16px;text-align:center;text-transform:uppercase;}span.OXXup{border-bottom:2px solid #4285f4;color:#4285f4;font-weight:bold}a.eZt8xd:visited{color:#70757a}.FElbsf{border-left:1px solid rgba(0,0,0,.12)}header article{overflow:visible}.Pg70bf{height:39px;display:box;display:flex;display:flex;width:100%}.H0PQec{position:relative;flex:1}.sbc{display:flex;width:100%}.Pg70bf input{margin:2px 4px 2px 8px;}.x{width:26px;color:#70757a;font:27px/38px arial, sans-serif;line-height:40px;}#qdClwb{flex:0 0 auto;width:39px;height:39px;border-bottom:0;padding:0;border-top-right-radius:8px;background-color:#1a73e8;border:1px solid #1a73e8;background-image:url(data:image/gif;base64,R0lGODdhJAAjAPIHAODr/nCk+MPZ/FmV96zK+/7+/5K5+kqL9iwAAAAAJAAjAEADani63P4wykmbKcQRXDscQAEMXmmeaLQVLCukzyC09AjfeK7v/MAajACLhPMVAgwjsUcEiZa8xgAYrVqv2Kx2iwsIAAABknfBBAKrTE4IcMyot8ur8datqIbQfJdnAfo2WE6BV05wXIiJigkAOw==);}.sc{font-size:16px;position:absolute;top:39px;left:0;right:0;box-shadow:0 2px 5px rgba(0,0,0,.2);z-index:2;background-color:#fff}.sc>div{padding:10px 10px;padding-left:16px;padding-left:14px;border-top:1px solid #dfe1e5;}.scs{background-color:#fafafa;}.noHIxc{display:block;font-size:16px;padding:0 0 0 8px;flex:1;height:35px;outline:none;border:none;width:100%;-webkit-tap-highlight-color:rgba(0,0,0,0);overflow:hidden;}.sbc input[type=text]{background:none}.bz1lBb{background-color:#fff;border-radius:8px 8px 0 0;box-shadow:0 0 0 1px #dfe1e5;margin-top:24px;}.KP7LCb{border-radius:0 0 8px 8px;box-shadow:0px 1px 0px 1px #dfe1e5;margin-bottom:30px;overflow:hidden}html{background-color:#fff}body{margin:0 auto 0 156px;max-width:652px;min-width:652px;padding:0 8px}.cOl4Id{letter-spacing:-1px;text-align:center;font:22pt Futura, Arial, sans-serif;height:37px;font-smoothing:antialiased;padding:32px 28px 0 24px;position:absolute;left:0;top:0}.cOl4Id span{display:inline-block}.V6gwVd{color:#4285f4}.iWkuvd{color:#ea4335}.cDrQ7{color:#fcc934}.ntlR9{color:#34a853}.tJ3Myc{-webkit-transform:rotate(-20deg);position:relative;left:-1px;display:inline-block}footer{text-align:center;margin-top:18px}footer a,footer a:visited,.smiUbb{color:#70757a}.xeDNfc{margin:0 13px;display:inline-block}#EOlPnc{margin-top:36px}#EOlPnc>div{margin:20px}.Srfpq{color:#70757a}</style></head><body jsmodel="hspDDf"><header id="hdr"><script nonce="JPLNkpT2jn_kk_lCO_jAwg">(function(){
var k=this||self,l=function(a){var b=typeof a;return"object"==b&&null!=a||"function"==b},m=function(a,b){function c(){}c.prototype=b.prototype;a.j=b.prototype;a.prototype=new c;a.prototype.constructor=a;a.l=function(d,e,f){for(var g=Array(arguments.length-2),h=2;h<arguments.length;h++)g[h-2]=arguments[h];return b.prototype[e].apply(d,g)}};var n=Array.prototype.indexOf?function(a,b){return Array.prototype.indexOf.call(a,b,void 0)}:function(a,b){if("string"===typeof a)return"string"!==typeof b||1!=b.length?-1:a.indexOf(b,0);for(var c=0;c<a.length;c++)if(c in a&&a[c]===b)return c;return-1};var p=function(a){return"string"==typeof a.className?a.className:a.getAttribute&&a.getAttribute("class")||""},q=function(a,b){"string"==typeof a.className?a.className=b:a.setAttribute&&a.setAttribute("class",b)},r=function(a,b){a.classList?b=a.classList.contains(b):(a=a.classList?a.classList:p(a).match(/\S+/g)||[],b=0<=n(a,b));return b},v=function(){var a=t,b=u;a.classList?a.classList.remove(b):r(a,b)&&q(a,Array.prototype.filter.call(a.classList?a.classList:p(a).match(/\S+/g)||[],function(c){return c!=
b}).join(" "))};function w(){var a=k.navigator;return a&&(a=a.userAgent)?a:""};var x=function(a){x[" "](a);return a};x[" "]=function(){};var y=-1!=w().indexOf("Gecko")&&!(-1!=w().toLowerCase().indexOf("webkit")&&-1==w().indexOf("Edge"))&&!(-1!=w().indexOf("Trident")||-1!=w().indexOf("MSIE"))&&-1==w().indexOf("Edge");var z=function(a,b){this.type=a;this.target=b};z.prototype.g=function(){};var A=function(){if(!k.addEventListener||!Object.defineProperty)return!1;var a=!1,b=Object.defineProperty({},"passive",{get:function(){a=!0}});try{var c=function(){};k.addEventListener("test",c,b);k.removeEventListener("test",c,b)}catch(d){}return a}();var C=function(a){z.call(this,a?a.type:"");this.relatedTarget=this.target=null;this.button=this.screenY=this.screenX=this.clientY=this.clientX=0;this.key="";this.keyCode=0;this.metaKey=this.shiftKey=this.altKey=this.ctrlKey=!1;this.state=null;this.pointerId=0;this.pointerType="";this.h=null;if(a){var b=this.type=a.type,c=a.changedTouches&&a.changedTouches.length?a.changedTouches[0]:null;this.target=a.target||a.srcElement;var d=a.relatedTarget;if(d){if(y){a:{try{x(d.nodeName);var e=!0;break a}catch(f){}e=
!1}e||(d=null)}}else"mouseover"==b?d=a.fromElement:"mouseout"==b&&(d=a.toElement);this.relatedTarget=d;c?(this.clientX=void 0!==c.clientX?c.clientX:c.pageX,this.clientY=void 0!==c.clientY?c.clientY:c.pageY,this.screenX=c.screenX||0,this.screenY=c.screenY||0):(this.clientX=void 0!==a.clientX?a.clientX:a.pageX,this.clientY=void 0!==a.clientY?a.clientY:a.pageY,this.screenX=a.screenX||0,this.screenY=a.screenY||0);this.button=a.button;this.keyCode=a.keyCode||0;this.key=a.key||"";this.ctrlKey=a.ctrlKey;this.altKey=a.altKey;this.shiftKey=a.shiftKey;this.metaKey=a.metaKey;this.pointerId=a.pointerId||0;this.pointerType="string"===typeof a.pointerType?a.pointerType:B[a.pointerType]||"";this.state=a.state;this.h=a;a.defaultPrevented&&C.j.g.call(this)}};m(C,z);var B={2:"touch",3:"pen",4:"mouse"};C.prototype.g=function(){C.j.g.call(this);var a=this.h;a.preventDefault?a.preventDefault():a.returnValue=!1};var D="closure_listenable_"+(1E6*Math.random()|0);var E=0;var F=function(a,b,c,d,e){this.listener=a;this.proxy=null;this.src=b;this.type=c;this.capture=!!d;this.h=e;this.key=++E;this.g=this.i=!1},G=function(a){a.g=!0;a.listener=null;a.proxy=null;a.src=null;a.h=null};var H=function(a){this.src=a;this.g={};this.h=0};H.prototype.add=function(a,b,c,d,e){var f=a.toString();a=this.g[f];a||(a=this.g[f]=[],this.h++);var g;a:{for(g=0;g<a.length;++g){var h=a[g];if(!h.g&&h.listener==b&&h.capture==!!d&&h.h==e)break a}g=-1}-1<g?(b=a[g],c||(b.i=!1)):(b=new F(b,this.src,f,!!d,e),b.i=c,a.push(b));return b};var I="closure_lm_"+(1E6*Math.random()|0),J={},K=0,M=function(a,b,c,d,e){if(d&&d.once)return L(a,b,c,d,e);if(Array.isArray(b)){for(var f=0;f<b.length;f++)M(a,b[f],c,d,e);return null}c=N(c);return a&&a[D]?a.g(b,c,l(d)?!!d.capture:!!d,e):O(a,b,c,!1,d,e)},O=function(a,b,c,d,e,f){if(!b)throw Error("a");var g=l(e)?!!e.capture:!!e,h=P(a);h||(a[I]=h=new H(a));c=h.add(b,c,d,g,f);if(c.proxy)return c;d=Q();c.proxy=d;d.src=a;d.listener=c;if(a.addEventListener)A||(e=g),void 0===e&&(e=!1),a.addEventListener(b.toString(),d,e);else if(a.attachEvent)a.attachEvent(R(b.toString()),d);else if(a.addListener&&a.removeListener)a.addListener(d);else throw Error("b");K++;return c},Q=function(){var a=S,b=function(c){return a.call(b.src,b.listener,c)};return b},L=function(a,b,c,d,e){if(Array.isArray(b)){for(var f=0;f<b.length;f++)L(a,b[f],c,d,e);return null}c=N(c);return a&&a[D]?a.h(b,c,l(d)?!!d.capture:!!d,e):O(a,b,c,!0,d,e)},T=function(a){if("number"!==typeof a&&a&&!a.g){var b=a.src;if(b&&b[D])b.s(a);else{var c=a.type,d=a.proxy;b.removeEventListener?b.removeEventListener(c,d,a.capture):b.detachEvent?b.detachEvent(R(c),d):b.addListener&&b.removeListener&&b.removeListener(d);K--;if(c=P(b)){d=a.type;if(d in c.g){var e=c.g[d],f=n(e,a),g;(g=0<=f)&&Array.prototype.splice.call(e,f,1);g&&(G(a),0==c.g[d].length&&(delete c.g[d],c.h--))}0==c.h&&(c.src=null,b[I]=null)}else G(a)}}},R=function(a){return a in J?J[a]:J[a]="on"+a},S=function(a,b){if(a.g)a=!0;else{b=new C(b,this);var c=a.listener,d=a.h||a.src;a.i&&T(a);a=c.call(d,b)}return a},P=function(a){a=a[I];return a instanceof H?a:null},U="__closure_events_fn_"+(1E9*Math.random()>>>0),N=function(a){if("function"===typeof a)return a;a[U]||(a[U]=function(b){return a.handleEvent(b)});return a[U]};var u,t=document.documentElement,V;function W(){T(V);V=L(t,"mousedown",function(){v();X()},{capture:!0})}function X(){T(V);V=M(t,"keydown",function(a){if(9===a.keyCode){a=t;var b=u;if(a.classList)a.classList.add(b);else if(!r(a,b)){var c=p(a);q(a,c+(0<c.length?" "+b:b))}W()}})};u="zAoYTe";X();}).call(this);</script><div class="cOl4Id"><a href="/?sa=X&ved=0ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QOwgC"><span class="V6gwVd">G</span><span class="iWkuvd">o</span><span class="cDrQ7">o</span><span class="V6gwVd">g</span><span class="ntlR9">l</span><span class="iWkuvd tJ3Myc">e</span></a></div><div class="bz1lBb"><form class="Pg70bf" id="sf"><input name="ie" type="hidden" value="Shift_JIS"/><div class="H0PQec"><div class="sbc esbc"><input autocapitalize="none" autocomplete="off" class="noHIxc" name="q" spellcheck="false" type="text" value="Python BeautifulSoup"/><input name="oq" type="hidden"/><input name="aqs" type="hidden"/><div class="x">×</div><div class="sc"></div></div></div><button id="qdClwb" type="submit"></button></form></div><noscript><meta content="0;url=/search?q=Python+BeautifulSoup&ie=UTF-8&gbv=1&sei=SnyuZI-1LpTf2roP1a-W6As" http-equiv="refresh"/><style>table,div,span,p{display:none}</style><div style="display:block">数秒たってもリダイレクトされない場合は、<a href="/search?q=Python+BeautifulSoup&ie=UTF-8&gbv=1&sei=SnyuZI-1LpTf2roP1a-W6As">ここをクリック</a>してください。</div></noscript></header><div id="main"><div><div class="KP7LCb"> <div class="bRsWnc"> <div class="N6RWV"> <div class="Pg70bf Uv67qb"> <span class="OXXup">すべて</span><a class="eZt8xd" href="/search?q=Python+BeautifulSoup&ie=UTF-8&source=lnms&tbm=vid&sa=X&ved=0ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q_AUIBigB">動画</a><a class="eZt8xd" href="/search?q=Python+BeautifulSoup&ie=UTF-8&source=lnms&tbm=isch&sa=X&ved=0ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q_AUIBygC">画像</a><a class="eZt8xd" href="/search?q=Python+BeautifulSoup&ie=UTF-8&source=lnms&tbm=shop&sa=X&ved=0ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q_AUICCgD">ショッピング</a> <a href="https://maps.google.co.jp/maps?q=Python+BeautifulSoup&um=1&ie=UTF-8&sa=X&ved=0ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q_AUICSgE">地図</a> <a href="/search?q=Python+BeautifulSoup&ie=UTF-8&source=lnms&tbm=nws&sa=X&ved=0ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q_AUICigF">ニュース</a> <a href="/search?q=Python+BeautifulSoup&ie=UTF-8&source=lnms&tbm=bks&sa=X&ved=0ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q_AUICygG">書籍</a> <div class="FElbsf"><a href="/advanced_search" id="st-toggle" role="button" style="white-space:nowrap">検索ツール</a></div> </div> </div> </div> </div><div class="Pg70bf wEsjbd Gx5Zad xpd EtOod pkphOe" id="st-card" style="display:none"><style>.wEsjbd{background-color:#fff;height:44px;white-space:nowrap}.coPU8c{height:60px;overflow-scrolling:touch;overflow-x:auto;overflow-y:hidden}.Xj2aue{height:44px;overflow:hidden}.RnNGze{margin:11px 16px}.wEsjbd div,.wEsjbd a,.wEsjbd li{outline-width:0;outline:none}</style><div class="Xj2aue"><div class="coPU8c"><div class="RnNGze"><style>.PA9J5{display:inline-block}.RXaOfd{display:inline-block;height:22px;position:relative;padding-top:0;padding-bottom:0;padding-right:16px;padding-left:0;line-height:22px;cursor:pointer;text-transform:uppercase;font-size:12px;color:#70757a}.sa1toc{background:#fff;display:none;position:absolute;border:1px solid #dadce0;box-shadow:0 2px 4px rgba(0,0,0,.3);margin:0;white-space:nowrap;z-index:103;line-height:17px;padding-top:5px;padding-bottom:5px;padding-left:0}.PA9J5:hover .sa1toc{display:block}.mGSy8d a:active,.RXaOfd:active{color:#4285f4}</style><div class="PA9J5"><div class="RXaOfd" role="button" tabindex="0"><style>.TWMOUc{display:inline-block;padding-right:14px;white-space:nowrap}.vQYuGf{font-weight:bold}.OmTIzf{border-color:#909090 transparent;border-style:solid;border-width:4px 4px 0 4px;width:0;height:0;margin-left:-10px;top:50%;margin-top:-2px;position:absolute}.RXaOfd:active .OmTIzf{border-color:#4285f4 transparent}</style><div class="TWMOUc">すべての言語</div><span class="OmTIzf"></span></div><ul class="sa1toc ozatM"><style>.ozatM{font-size:12px;text-transform:uppercase}.ozatM .yNFsl,.ozatM li{list-style-type:none;list-style-position:outside;list-style-image:none}.yNFsl.SkUj4c,.yNFsl a{color:#70757a;text-decoration:none;padding:6px 44px 6px 14px;line-height:17px;display:block}.SkUj4c{background-image:url(//ssl.gstatic.com/ui/v1/menu/checkmark2.png);background-position:right center;background-repeat:no-repeat}.SkUj4c:active{background-color:#f8f9fa}</style><li class="yNFsl SkUj4c">すべての言語</li><li class="yNFsl"><a href="/search?q=Python+BeautifulSoup&ie=UTF-8&source=lnt&tbs=lr:lang_1ja&lr=lang_ja&sa=X&ved=0ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QpwUIDQ">日本語のページを検索</a></li></ul></div><div class="PA9J5"><div class="RXaOfd" role="button" tabindex="0"><div class="TWMOUc">期間指定なし</div><span class="OmTIzf"></span></div><ul class="sa1toc ozatM"><li class="yNFsl SkUj4c">期間指定なし</li><li class="yNFsl"><a href="/search?q=Python+BeautifulSoup&ie=UTF-8&source=lnt&tbs=qdr:h&sa=X&ved=0ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QpwUIDw"> 1 時間以内</a></li><li class="yNFsl"><a href="/search?q=Python+BeautifulSoup&ie=UTF-8&source=lnt&tbs=qdr:d&sa=X&ved=0ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QpwUIEA"> 24 時間以内</a></li><li class="yNFsl"><a href="/search?q=Python+BeautifulSoup&ie=UTF-8&source=lnt&tbs=qdr:w&sa=X&ved=0ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QpwUIEQ"> 1 週間以内</a></li><li class="yNFsl"><a href="/search?q=Python+BeautifulSoup&ie=UTF-8&source=lnt&tbs=qdr:m&sa=X&ved=0ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QpwUIEg"> 1 か月以内</a></li><li class="yNFsl"><a href="/search?q=Python+BeautifulSoup&ie=UTF-8&source=lnt&tbs=qdr:y&sa=X&ved=0ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QpwUIEw"> 1 年以内</a></li></ul></div><div class="PA9J5"><div class="RXaOfd" role="button" tabindex="0"><div class="TWMOUc">すべての結果</div><span class="OmTIzf"></span></div><ul class="sa1toc ozatM"><li class="yNFsl SkUj4c">すべての結果</li><li class="yNFsl"><a href="/search?q=Python+BeautifulSoup&ie=UTF-8&source=lnt&tbs=li:1&sa=X&ved=0ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QpwUIFQ">完全一致</a></li></ul></div></div></div></div><script nonce="JPLNkpT2jn_kk_lCO_jAwg">(function(){var a=document.getElementById("st-toggle"),b=document.getElementById("st-card");a&&b&&a.addEventListener("click",function(c){b.style.display=b.style.display?"":"none";c.preventDefault()},!1);}).call(this);</script></div></div><style>.Gx5Zad{background-color:#fff;margin-bottom:30px;box-shadow:0 0 0 1px #dfe1e5;border-radius:8px}.pkphOe{font-size:14px;line-height:22px;}.EtOod>*:first-child{border-top-left-radius:8px;border-top-right-radius:8px
}.EtOod>*:last-child{border-bottom-left-radius:8px;border-bottom-right-radius:8px}.EtOod.avPKgf>*:last-child{border-bottom-left-radius:4px}.EtOod>.qxDOhb>*:first-child{border-top-left-radius:8px;border-top-right-radius:8px}.EtOod>.qxDOhb>*:last-child{border-bottom-left-radius:8px;border-bottom-right-radius:8px}.fP1Qef{background:transparent !important;box-shadow:none !important;border:none !important}.Gx5Zad.fP1Qef{margin-top:-12px;margin-bottom:18px}.rl7ilb{display:block;clear:both}.egMi0{margin-bottom:-19px}.kCrYT{padding:12px 16px 12px}a.fdYsqf{color:#4b11a8}.sCuL3{position:absolute;width:100%;top:0;left:0;padding-top:1px;margin-bottom:-1px}.j039Wc{padding-top:28px;margin-bottom:-1px}.DnJfK{position:relative}.l97dzf{font-weight:400}.zBAuLc{line-height:normal;margin:0;padding:0}.BNeawe{white-space:pre-line;word-wrap:break-word}.vvjwJb{color:#1a0dab;font-size:20px;line-height:26px}a:visited .vvjwJb,.vvjwJb a:visited{color:#4b11a8}.vvjwJb.HrGdeb{color:#fff}a:visited .vvjwJb.HrGdeb,.vvjwJb.HrGdeb a:visited{color:rgba(255,255,255,.70)}.UPmit{font-size:14px;line-height:22px}.UPmit.HrGdeb{color:rgba(255,255,255,.70)}.UPmit.AP7Wnd{color:#202124}.lRVwie{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.Ap5OSd{padding-bottom:12px}.s3v9rd{font-size:14px;line-height:22px}.s3v9rd.HrGdeb{color:#fff}.s3v9rd.AP7Wnd{color:#202124}.mSx1Ee{padding-left:48px;margin:0}.v9i61e{padding-bottom:8px}.r0bn4c.tr0dw{color:rgba(255,255,255,.70)}.r0bn4c.rQMQod{color:#70757a}.XLloXe{color:#1a0dab;font-size:14px;line-height:20px}a:visited .XLloXe,.XLloXe a:visited{color:#4b11a8}.XLloXe.HrGdeb{color:#fff}a:visited .XLloXe.HrGdeb,.XLloXe.HrGdeb a:visited{color:rgba(255,255,255,.70)}.K8tyEc{padding-bottom:12px}.mEUgP{font-weight:bold;font-size:16px;color:#000;margin:0;padding:12px 16px 0 16px}.FCUp0c{font-weight:bold}.x54gtf{height:1px;background-color:#dadce0;margin:0 16px}.Q0HXG{height:1px;background-color:#dadce0}.C7GS5b{margin-left:12px;display:table-cell;vertical-align:middle}.rkGIWe{padding:14px}.xpc .hwc,.xpx .hwx{display:none}.iIWm4b{box-sizing:border-box;min-height:48px}.fLtXsc{padding:14px;position:relative}.NtmAdb{width:40px;height:40px;overflow:hidden;margin-top:-10px;margin-bottom:-16px;margin-right:8px;border-radius:4px}.xpc .NtmAdb{display:inline-block}.xpx .NtmAdb{display:none}.Lt3Tzc{display:inline-block;padding-right:26px}.Lym8W{width:14px;height:20px;position:relative;margin:0 auto}.xCgLUe{position:absolute;right:16px;margin-top:-10px;top:50%}.Lym8W div{position:absolute;border-left:7px solid transparent;border-right:7px solid transparent;width:0;height:0;left:0}.IyYaEd{top:7px;border-top:7px solid #70757a}.ECUHQe{top:4px;border-top:7px solid #fff}.AeQQub{bottom:7px;border-bottom:7px solid #70757a}.YCU7eb{bottom:4px;border-bottom:7px solid #fff}.qxDOhb{border-radius:0}.yStFkb .xpd{border-radius:8px;box-shadow:none;border:1px solid #dadce0;margin-bottom:0}.oTWEpb{padding-top:12px}.n1Qedd{overflow:hidden;text-align:center}.KMAGC{margin:0 auto;display:block}.ho0sdc{margin:0 -50%;display:inline-block}.Xb5VRe{color:#1a0dab}a:visited .Xb5VRe{color:#4b11a8}.Xb5VRe.tr0dw{color:#fff}a:visited .Xb5VRe.tr0dw{color:rgba(255,255,255,.70)}.P1NWSe{display:table;width:100%;padding-top:16px;padding-bottom:16px;margin-bottom:-12px}.wOMIed{display:table-cell;vertical-align:top}.nkPlDb{vertical-align:middle}.JhFlyf{color:#3c4043;font-size:14px;text-align:center}.VQFmSd{display:block;white-space:pre-line;word-wrap:break-word}.JhFlyf.VQFmSd{line-height:22px}.f4J0H{padding:18px}.gMUaMb{line-height:0}.gGQDvd{padding:14px;position:relative}.Q71vJc{display:block;position:relative;width:100%}.kjGX2{position:absolute;left:48px;right:0;vertical-align:bottom;display:inline-block;color:#4d5156}.ieB2Dd{overflow:hidden;margin-top:-10px;margin-bottom:-16px;margin-right:8px;border-radius:4px;display:inline-block;border-radius:50%;padding:10px}.OEaqif{width:20px;height:20px;display:block}.RJI4s{vertical-align:middle}.rLshyf,.BmP5tf{padding-top:12px;padding-bottom:12px}.YOx3Ab{padding-left:16px;}.w1C3Le,.BmP5tf,.G5NbBd,.CS4w5b{padding-left:16px;padding-right:16px;}.G5NbBd{padding-bottom:12px}.CS4w5b{padding-top:12px}.nMymef{display:flex}.G5eFlf{flex:1;display:block}.nMymef span{text-align:center}.EYqSq{margin:6px 4px 9px 0;border-radius:100%;display:inline-block;height:10px;vertical-align:middle;width:10px}.dfB0uf{color:#3c4043;font-weight:bold}</style><div></div><div><div class="Gx5Zad fP1Qef xpd EtOod pkphOe"><div class="egMi0 kCrYT"><a data-ved="2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAkQAg" href="/url?q=https://ai-inter1.com/beautifulsoup_1/&sa=U&ved=2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAkQAg&usg=AOvVaw0BcAVqMqnpe-DqJs_3Bs_n" jsname="ACyKwe"><div class="DnJfK"><div class="j039Wc"><h3 class="zBAuLc l97dzf"><div class="BNeawe vvjwJb AP7Wnd">図解!Python BeautifulSoupの使い方を徹底解説!(select、find</div></h3></div><div class="sCuL3"><div class="BNeawe UPmit AP7Wnd lRVwie">ai-inter1.com › Webスクレイピング › 03. BeautifulSoup</div></div></div></a></div><div class="kCrYT"><div><div class="BNeawe s3v9rd AP7Wnd"><div><div class="v9i61e"><div class="BNeawe s3v9rd AP7Wnd"><span class="r0bn4c rQMQod">2023/06/18</span><span class="r0bn4c rQMQod"> · </span>Beautiful Soup(ビューティフル・スープ)とは、HTMLやXMLファイルからデータを取得し、解析するPythonのWEBスクレイピング用のライブラリです。</div></div><div><div class="BNeawe s3v9rd AP7Wnd">Python’s html.parser: <span class="r0bn4c rQMQod">“html.parser”</span><br/>Lxml’s HTML parser: <span class="r0bn4c rQMQod">“lxml”</span></div></div></div></div></div></div></div></div><div><div class="Gx5Zad fP1Qef xpd EtOod pkphOe"><div class="egMi0 kCrYT"><a data-ved="2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAsQAg" href="/url?q=https://www.sejuku.net/blog/75137&sa=U&ved=2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAsQAg&usg=AOvVaw0Gd_avh-tKoq-r6B3XR0Dz" jsname="ACyKwe"><div class="DnJfK"><div class="j039Wc"><h3 class="zBAuLc l97dzf"><div class="BNeawe vvjwJb AP7Wnd">Pythonのbeautifulsoupでスクレイピングをしてみよう</div></h3></div><div class="sCuL3"><div class="BNeawe UPmit AP7Wnd lRVwie">www.sejuku.net › blog</div></div></div></a></div><div class="kCrYT"><div><div class="BNeawe s3v9rd AP7Wnd"><div><div class="v9i61e"><div class="BNeawe s3v9rd AP7Wnd">この記事ではPythonのBeautiful Soupの使い方について解説をしていきます。Beautiful Soupはスクレイピングをするためのライブラリです。 スクレイピングとは何かを ...</div></div><div><div class="BNeawe s3v9rd AP7Wnd"><span class="BNeawe"><a data-ved="2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q0gJ6BAgLEAU" href="/url?q=https://www.sejuku.net/blog/75137%23i&sa=U&ved=2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q0gJ6BAgLEAU&usg=AOvVaw2_r3zC5rWQL8V4wFM0rQXu" jsname="ACyKwe"><span class="XLloXe AP7Wnd">スクレイピングとは</span></a></span> · <span class="BNeawe"><a data-ved="2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q0gJ6BAgLEAY" href="/url?q=https://www.sejuku.net/blog/75137%23i-2&sa=U&ved=2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q0gJ6BAgLEAY&usg=AOvVaw2_7qz7FgV4KBq0bLhiKpGw" jsname="ACyKwe"><span class="XLloXe AP7Wnd">スクレイピングの流れ</span></a></span> · <span class="BNeawe"><a data-ved="2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q0gJ6BAgLEAc" href="/url?q=https://www.sejuku.net/blog/75137%23Beautiful_Soup&sa=U&ved=2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q0gJ6BAgLEAc&usg=AOvVaw3pa5SB2psURHUln0-hrbgF" jsname="ACyKwe"><span class="XLloXe AP7Wnd">Beautiful Soupとは</span></a></span></div></div></div></div></div></div></div></div><div><div class="Gx5Zad fP1Qef xpd EtOod pkphOe"><div class="egMi0 kCrYT"><a data-ved="2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAYQAg" href="/url?q=https://atmarkit.itmedia.co.jp/ait/articles/1910/18/news015.html&sa=U&ved=2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAYQAg&usg=AOvVaw1u4aBSrG6vrZJYcx0X9qwf" jsname="ACyKwe"><div class="DnJfK"><div class="j039Wc"><h3 class="zBAuLc l97dzf"><div class="BNeawe vvjwJb AP7Wnd">[Python入門]Beautiful Soup 4によるスクレイピングの基礎 - IT</div></h3></div><div class="sCuL3"><div class="BNeawe UPmit AP7Wnd lRVwie">atmarkit.itmedia.co.jp › @IT › 連載一覧 › Python入門</div></div></div></a></div><div class="kCrYT"><div><div class="BNeawe s3v9rd AP7Wnd"><div><div><div class="BNeawe s3v9rd AP7Wnd"><span class="r0bn4c rQMQod">2019/10/18</span><span class="r0bn4c rQMQod"> · </span>Beautiful Soupは今いったような「HTMLファイルやXMLファイルからデータを抽出するためのPythonライブラリ」だ。本稿執筆時点(2019年10月16日)の最新 ...</div></div></div></div></div></div></div></div><div><div class="Gx5Zad fP1Qef xpd EtOod pkphOe"><div class="egMi0 kCrYT"><a data-ved="2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAoQAg" href="/url?q=https://www.twilio.com/ja/blog/web-scraping-and-parsing-html-in-python-with-beautiful-soup-jp&sa=U&ved=2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAoQAg&usg=AOvVaw2oZbAugMx3za7DCNXq7Gfz" jsname="ACyKwe"><div class="DnJfK"><div class="j039Wc"><h3 class="zBAuLc l97dzf"><div class="BNeawe vvjwJb AP7Wnd">PythonとBeautiful SoupでWebスクレイピングとHTML解析をする方法</div></h3></div><div class="sCuL3"><div class="BNeawe UPmit AP7Wnd lRVwie">www.twilio.com › blog › web-scraping-and-parsing-html-in-python-with-b...</div></div></div></a></div><div class="kCrYT"><div><div class="BNeawe s3v9rd AP7Wnd"><div><div><div class="BNeawe s3v9rd AP7Wnd"><span class="r0bn4c rQMQod">2019/10/22</span><span class="r0bn4c rQMQod"> · </span>Beautiful SoupなどのPythonツールを使用すると、Webページから直接データをスクレイピングして解析し、プロジェクトやアプリケーションで使えるよう ...</div></div></div></div></div></div></div></div><div><div class="Gx5Zad fP1Qef xpd EtOod pkphOe"><div class="egMi0 kCrYT"><a data-ved="2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAMQAg" href="/url?q=https://fuji-pocketbook.net/beautifulsoup/&sa=U&ved=2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAMQAg&usg=AOvVaw2fS0XygScyp843KEjkFgCG" jsname="ACyKwe"><div class="DnJfK"><div class="j039Wc"><h3 class="zBAuLc l97dzf"><div class="BNeawe vvjwJb AP7Wnd">[Python]BeautifulSoupの使い方 - 藤の手帳</div></h3></div><div class="sCuL3"><div class="BNeawe UPmit AP7Wnd lRVwie">fuji-pocketbook.net › Python</div></div></div></a></div><div class="kCrYT"><div><div class="BNeawe s3v9rd AP7Wnd"><div><div><div class="BNeawe s3v9rd AP7Wnd">「BeautifulSoup」はPythonでスクレイピングを行う際の定番ライブラリです。 このページでは、BeautifulSoupのインストール、インポート、スープオブジェクトを作成し ...</div></div></div></div></div></div></div></div><div><div class="Gx5Zad fP1Qef xpd EtOod pkphOe"><div class="egMi0 kCrYT"><a data-ved="2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAcQAg" href="/url?q=https://di-acc2.com/programming/python/3364/&sa=U&ved=2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAcQAg&usg=AOvVaw1SuLI4el4V9KzfBwsivM1X" jsname="ACyKwe"><div class="DnJfK"><div class="j039Wc"><h3 class="zBAuLc l97dzf"><div class="BNeawe vvjwJb AP7Wnd">【Python】BeautifulSoupでWebスクレイピングに挑戦|HTML解析 ...</div></h3></div><div class="sCuL3"><div class="BNeawe UPmit AP7Wnd lRVwie">di-acc2.com › Programming › Python</div></div></div></a></div><div class="kCrYT"><div><div class="BNeawe s3v9rd AP7Wnd"><div><div><div class="BNeawe s3v9rd AP7Wnd"><span class="r0bn4c rQMQod">2022/08/15</span><span class="r0bn4c rQMQod"> · </span>本記事ではBeautifulSoupを用いたPythonプログラミングをもとに、HTMLファイルをパース(構文解析)し、必要なデータを取得する方法を解説します。</div></div></div></div></div></div></div></div><div><div class="Gx5Zad xpd EtOod pkphOe"><div class="K8tyEc"><div class="mEUgP"><span><div class="BNeawe"><span class="FCUp0c rQMQod">他の人はこちらも質問</span></div></span></div></div><div class="x54gtf"></div><div><div class="xpc"><div class="duf-h"><div aria-expanded="false" class="fLtXsc iIWm4b" data-ved="2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Quk56BAgFEAI" id="tsuid_1" role="button" tabindex="0"><div class="Lt3Tzc">PythonでBeautifulsoupをインストールするには?</div><div class="Lym8W xCgLUe"><div class="AeQQub hwc"></div><div class="YCU7eb hwc"></div><div class="IyYaEd hwx"></div><div class="ECUHQe hwx"></div></div></div></div><div class="qxDOhb" id="accdef_1"></div></div></div><div class="x54gtf"></div><div><div class="xpc"><div class="duf-h"><div aria-expanded="false" class="fLtXsc iIWm4b" data-ved="2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Quk56BAgFEAk" id="tsuid_2" role="button" tabindex="0"><div class="Lt3Tzc">Beautifulsoupの機能は?</div><div class="Lym8W xCgLUe"><div class="AeQQub hwc"></div><div class="YCU7eb hwc"></div><div class="IyYaEd hwx"></div><div class="ECUHQe hwx"></div></div></div></div><div class="qxDOhb" id="accdef_3"></div></div></div><div class="x54gtf"></div><div><div class="xpc"><div class="duf-h"><div aria-expanded="false" class="fLtXsc iIWm4b" data-ved="2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Quk56BAgFEBA" id="tsuid_3" role="button" tabindex="0"><div class="Lt3Tzc">Beautiful soup4とは何ですか?</div><div class="Lym8W xCgLUe"><div class="AeQQub hwc"></div><div class="YCU7eb hwc"></div><div class="IyYaEd hwx"></div><div class="ECUHQe hwx"></div></div></div></div><div class="qxDOhb" id="accdef_5"></div></div></div><div class="x54gtf"></div><div><div class="xpc"><div class="duf-h"><div aria-expanded="false" class="fLtXsc iIWm4b" data-ved="2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Quk56BAgFEBc" id="tsuid_4" role="button" tabindex="0"><div class="Lt3Tzc">「Beautiful Soup」の読み方は?</div><div class="Lym8W xCgLUe"><div class="AeQQub hwc"></div><div class="YCU7eb hwc"></div><div class="IyYaEd hwx"></div><div class="ECUHQe hwx"></div></div></div></div><div class="qxDOhb" id="accdef_7"></div></div></div></div></div><div><div class="Gx5Zad fP1Qef xpd EtOod pkphOe"><div class="egMi0 kCrYT"><a data-ved="2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAIQAg" href="/url?q=https://pg-chain.com/python-beautiful-soup4&sa=U&ved=2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAIQAg&usg=AOvVaw0onEamDq1pzh_l7h2Iy4xw" jsname="ACyKwe"><div class="DnJfK"><div class="j039Wc"><h3 class="zBAuLc l97dzf"><div class="BNeawe vvjwJb AP7Wnd">【Python】Beautiful Soupをインストールする方法 - 鎖プログラム</div></h3></div><div class="sCuL3"><div class="BNeawe UPmit AP7Wnd lRVwie">pg-chain.com › Python › インストール</div></div></div></a></div><div class="kCrYT"><div><div class="BNeawe s3v9rd AP7Wnd"><div><div><div class="BNeawe s3v9rd AP7Wnd">「beautiful soup」パッケージをダウンロード・インストールするのは実は簡単です。 まずは「コマンドプロンプト」を起動します。 「コマンドプロンプト」に「pip install ...</div></div></div></div></div></div></div></div><div><div class="Gx5Zad fP1Qef xpd EtOod pkphOe"><div class="egMi0 kCrYT"><a data-ved="2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAgQAg" href="/url?q=https://ja.stackoverflow.com/questions/89711/beautifulsoup%25E3%2581%25AE%25E3%2582%25A4%25E3%2583%25B3%25E3%2582%25B9%25E3%2583%2588%25E3%2583%25BC%25E3%2583%25AB%25E3%2581%25AB%25E3%2581%25A4%25E3%2581%2584%25E3%2581%25A6&sa=U&ved=2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAgQAg&usg=AOvVaw3FoQPhQSP8PWpNtAUY8HAq" jsname="ACyKwe"><div class="DnJfK"><div class="j039Wc"><h3 class="zBAuLc l97dzf"><div class="BNeawe vvjwJb AP7Wnd">BeautifulSoupのインストールについて - スタック・オーバーフロー</div></h3></div><div class="sCuL3"><div class="BNeawe UPmit AP7Wnd lRVwie">ja.stackoverflow.com › questions › beautifulsoupのインストールについて</div></div></div></a></div><div class="kCrYT"><div><div class="BNeawe s3v9rd AP7Wnd"><div><div><div class="BNeawe s3v9rd AP7Wnd">Pythonを勉強中の初心者です。 独学プログラマーという本を参考にしながら勉強をしているのですが、スクレイピングをするためにBeautifulSoupを ...</div></div></div></div></div></div></div></div><div><div class="Gx5Zad fP1Qef xpd EtOod pkphOe"><div class="egMi0 kCrYT"><a data-ved="2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAQQAg" href="/url?q=https://qiita.com/tags/beautifulsoup&sa=U&ved=2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAQQAg&usg=AOvVaw3OQ-vUrP-Yvg0gYBDOGDkO" jsname="ACyKwe"><div class="DnJfK"><div class="j039Wc"><h3 class="zBAuLc l97dzf"><div class="BNeawe vvjwJb AP7Wnd">BeautifulSoupとは?初心者向けチュートリアル - Qiita</div></h3></div><div class="sCuL3"><div class="BNeawe UPmit AP7Wnd lRVwie">qiita.com › tags › beautifulsoup</div></div></div></a></div><div class="kCrYT"><div><div class="BNeawe s3v9rd AP7Wnd"><div><div><div class="BNeawe s3v9rd AP7Wnd">BeautifulSoup · Twitter APIが有料化された今、スクレイピングでツイートを取得することは可能なのか · PythonとBeautiful Soupでスクレイピング · 【Python】BeautifulSoup ...</div></div></div></div></div></div></div></div><div><div class="Gx5Zad fP1Qef xpd EtOod pkphOe"><div class="egMi0 kCrYT"><a data-ved="2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAEQAg" href="/url?q=https://lets-hack.tech/programming/languages/python/beautifulsoup/&sa=U&ved=2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAEQAg&usg=AOvVaw2WcX-OK6LuUDu5pTFy_fuz" jsname="ACyKwe"><div class="DnJfK"><div class="j039Wc"><h3 class="zBAuLc l97dzf"><div class="BNeawe vvjwJb AP7Wnd">【Python】BeautifulSoupの使い方・基本メソッド一覧</div></h3></div><div class="sCuL3"><div class="BNeawe UPmit AP7Wnd lRVwie">lets-hack.tech › プログラミング › 言語別 › Python</div></div></div></a></div><div class="kCrYT"><div><div class="BNeawe s3v9rd AP7Wnd"><div><div><div class="BNeawe s3v9rd AP7Wnd">BeautifulSoupとは ... 一言で言うと、HTMLをパースするPythonのライブラリです。 スクレイピングという処理は、HTMLの取得と解析の二段構成です。 僕はHTMLの取得には ...</div></div></div></div></div></div></div></div><div><div class="Gx5Zad xpd EtOod pkphOe"><div class="K8tyEc"><div class="mEUgP"><span><div class="BNeawe">関連キーワード</div></span></div></div><div class="x54gtf"></div><div><div class="gGQDvd iIWm4b"><a class="Q71vJc" data-ved="2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q1QJ6BAgAEAI" href="/search?ie=UTF-8&q=Python+beautifulsoup4&sa=X&ved=2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q1QJ6BAgAEAI" jsname="ACyKwe"><accordion-entry-search-icon><span class="ieB2Dd"><img alt="" class="OEaqif" data-deferred="1" id="dimg_1" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" style="max-width:20px;max-height:20px"/></span></accordion-entry-search-icon><div class="kjGX2"><span><div class="BNeawe s3v9rd AP7Wnd lRVwie">Python beautifulsoup4</div></span></div></a></div></div><div class="x54gtf"></div><div><div class="gGQDvd iIWm4b"><a class="Q71vJc" data-ved="2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q1QJ6BAgAEAQ" href="/search?ie=UTF-8&q=beautifulsoup+%E3%83%81%E3%83%BC%E3%83%88%E3%82%B7%E3%83%BC%E3%83%88&sa=X&ved=2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q1QJ6BAgAEAQ" jsname="ACyKwe"><accordion-entry-search-icon><span class="ieB2Dd"><img alt="" class="OEaqif" data-deferred="1" id="dimg_3" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" style="max-width:20px;max-height:20px"/></span></accordion-entry-search-icon><div class="kjGX2"><span><div class="BNeawe s3v9rd AP7Wnd lRVwie">beautifulsoup チートシート</div></span></div></a></div></div><div class="x54gtf"></div><div><div class="gGQDvd iIWm4b"><a class="Q71vJc" data-ved="2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q1QJ6BAgAEAY" href="/search?ie=UTF-8&q=beautifulsoup+%E3%83%86%E3%82%AD%E3%82%B9%E3%83%88%E3%81%AE%E3%81%BF&sa=X&ved=2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q1QJ6BAgAEAY" jsname="ACyKwe"><accordion-entry-search-icon><span class="ieB2Dd"><img alt="" class="OEaqif" data-deferred="1" id="dimg_5" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" style="max-width:20px;max-height:20px"/></span></accordion-entry-search-icon><div class="kjGX2"><span><div class="BNeawe s3v9rd AP7Wnd lRVwie">beautifulsoup テキストのみ</div></span></div></a></div></div><div class="x54gtf"></div><div><div class="gGQDvd iIWm4b"><a class="Q71vJc" data-ved="2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q1QJ6BAgAEAg" href="/search?ie=UTF-8&q=beautifulsoup+select+%E5%AD%90%E8%A6%81%E7%B4%A0&sa=X&ved=2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q1QJ6BAgAEAg" jsname="ACyKwe"><accordion-entry-search-icon><span class="ieB2Dd"><img alt="" class="OEaqif" data-deferred="1" id="dimg_7" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" style="max-width:20px;max-height:20px"/></span></accordion-entry-search-icon><div class="kjGX2"><span><div class="BNeawe s3v9rd AP7Wnd lRVwie">beautifulsoup select 子要素</div></span></div></a></div></div><div class="x54gtf"></div><div><div class="gGQDvd iIWm4b"><a class="Q71vJc" data-ved="2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q1QJ6BAgAEAo" href="/search?ie=UTF-8&q=beautifulsoup+find+%E8%A6%8B%E3%81%A4%E3%81%8B%E3%82%89%E3%81%AA%E3%81%84&sa=X&ved=2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q1QJ6BAgAEAo" jsname="ACyKwe"><accordion-entry-search-icon><span class="ieB2Dd"><img alt="" class="OEaqif" data-deferred="1" id="dimg_9" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" style="max-width:20px;max-height:20px"/></span></accordion-entry-search-icon><div class="kjGX2"><span><div class="BNeawe s3v9rd AP7Wnd lRVwie">beautifulsoup find 見つからない</div></span></div></a></div></div><div class="x54gtf"></div><div><div class="gGQDvd iIWm4b"><a class="Q71vJc" data-ved="2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q1QJ6BAgAEAw" href="/search?ie=UTF-8&q=Python+BeautifulSoup+find_all&sa=X&ved=2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q1QJ6BAgAEAw" jsname="ACyKwe"><accordion-entry-search-icon><span class="ieB2Dd"><img alt="" class="OEaqif" data-deferred="1" id="dimg_11" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" style="max-width:20px;max-height:20px"/></span></accordion-entry-search-icon><div class="kjGX2"><span><div class="BNeawe s3v9rd AP7Wnd lRVwie">Python BeautifulSoup find_all</div></span></div></a></div></div><div class="x54gtf"></div><div><div class="gGQDvd iIWm4b"><a class="Q71vJc" data-ved="2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q1QJ6BAgAEA4" href="/search?ie=UTF-8&q=BeautifulSoup+%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB&sa=X&ved=2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q1QJ6BAgAEA4" jsname="ACyKwe"><accordion-entry-search-icon><span class="ieB2Dd"><img alt="" class="OEaqif" data-deferred="1" id="dimg_13" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" style="max-width:20px;max-height:20px"/></span></accordion-entry-search-icon><div class="kjGX2"><span><div class="BNeawe s3v9rd AP7Wnd lRVwie">BeautifulSoup インストール</div></span></div></a></div></div><div class="x54gtf"></div><div><div class="gGQDvd iIWm4b"><a class="Q71vJc" data-ved="2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q1QJ6BAgAEBA" href="/search?ie=UTF-8&q=beautifulsoup+find_all+%E5%AD%90%E8%A6%81%E7%B4%A0&sa=X&ved=2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q1QJ6BAgAEBA" jsname="ACyKwe"><accordion-entry-search-icon><span class="ieB2Dd"><img alt="" class="OEaqif" data-deferred="1" id="dimg_15" src="data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" style="max-width:20px;max-height:20px"/></span></accordion-entry-search-icon><div class="kjGX2"><span><div class="BNeawe s3v9rd AP7Wnd lRVwie">beautifulsoup find_all 子要素</div></span></div></a></div></div></div></div><footer> <div> <div class="Gx5Zad xpd EtOod pkphOe BmP5tf"><div class="nMymef MUxGbd lyLwlc"><a aria-label="次のページ" class="nBDE1b G5eFlf" href="/search?q=Python+BeautifulSoup&ie=UTF-8&ei=SnyuZI-1LpTf2roP1a-W6As&start=10&sa=N">次へ ></a></div></div> </div> <div id="EOlPnc"><div class="Srfpq"><div><span class="EYqSq unknown_loc"></span><span class="dfB0uf">大和市、神奈川県</span></div><span>ソース: あなたの IP アドレス</span><span> - </span><a aria-label="位置情報の詳細" href="/url?q=https://support.google.com/websearch%3Fp%3Dws_settings_location%26hl%3Dja&sa=U&ved=0ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Qty4Ieg&usg=AOvVaw2MbLPVMBK4bXleVLST7IpP" tabindex="0">詳細</a></div><div><a href="/url?q=https://accounts.google.com/ServiceLogin%3Fcontinue%3Dhttps://www.google.co.jp/search%253Fq%253DPython%252BBeautifulSoup%26hl%3Dja&sa=U&ved=0ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Qxs8CCHs&usg=AOvVaw3O9Zy6XXvgLjNwbJ4ekDeR">ログイン</a></div><div><a class="xeDNfc" href="https://www.google.co.jp/preferences?hl=ja&fg=1&sa=X&ved=0ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Q5fUCCHw">設定</a><a class="xeDNfc" href="https://policies.google.com/privacy?hl=ja&fg=1">プライバシー</a><a class="xeDNfc" href="https://policies.google.com/terms?hl=ja&fg=1">規約</a><a class="xeDNfc" href="/setprefs?hl=ja&prev=https://www.google.co.jp/search?q%3DPython%2BBeautifulSoup%26pccc%3D1&sig=0_i7kAIzaHTJ3YIxbk6zE6HOaQGa0%3D&cs=2&sa=X&ved=0ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QjcAJCH0">ダークモード: オフ</a></div></div> </footer><script nonce="JPLNkpT2jn_kk_lCO_jAwg">(function(){var hl='ja';(function(){
var f=this||self,g=function(a){return a};var h,k=function(){if(void 0===h){var a=null,b=f.trustedTypes;if(b&&b.createPolicy){try{a=b.createPolicy("goog#html",{createHTML:g,createScript:g,createScriptURL:g})}catch(c){f.console&&f.console.error(c.message)}h=a}else h=a}return h};var p=function(a,b){this.h=a===l&&b||"";this.g=m},q=function(a){return a instanceof p&&a.constructor===p&&a.g===m?a.h:"type_error:Const"},m={},l={};var r=function(a){this.g=a};r.prototype.toString=function(){return this.g+""};var t=function(a){return a instanceof r&&a.constructor===r?a.g:"type_error:TrustedResourceUrl"},x=function(){var a={},b=q(new p(l,"/complete/search"));if(!u.test(b))throw Error("e`"+b);var c=b.replace(v,function(e,d){if(!Object.prototype.hasOwnProperty.call(a,d))throw Error("f`"+d+"`"+b+"`"+JSON.stringify(a));e=a[d];return e instanceof p?q(e):encodeURIComponent(String(e))});return w(c)},v=/%{(\w+)}/g,u=RegExp("^((https:)?//[0-9a-z.:[\\]-]+/|/[^/\\\\]|[^:/\\\\%]+/|[^:/\\\\%]*[?#]|about:blank#)","i"),y=/^([^?#]*)(\?[^#]*)?(#[\s\S]*)?/,z={},w=function(a){var b=k();a=b?b.createScriptURL(a):a;return new r(a,z)},A=function(a,b,c){if(null==c)return b;if("string"===typeof c)return c?a+encodeURIComponent(c):"";for(var e in c)if(Object.prototype.hasOwnProperty.call(c,e)){var d=c[e];d=Array.isArray(d)?d:[d];for(var n=0;n<d.length;n++){var O=d[n];null!=O&&(b||(b=a),b+=(b.length>a.length?"&":"")+encodeURIComponent(e)+"="+encodeURIComponent(String(O)))}}return b};var B={},C=function(a){this.g=a};C.prototype.toString=function(){return this.g.toString()};
function D(a,b){if(1===a.nodeType){var c=a.tagName;if("SCRIPT"===c||"STYLE"===c)throw Error("g");}a.innerHTML=b instanceof C&&b.constructor===C?b.g:"type_error:SafeHtml"};function E(a){a=null===a?"null":void 0===a?"undefined":a;var b=k();a=b?b.createHTML(a):a;return new C(a,B)};var F=document.querySelector(".l"),G=document.querySelector("#sf"),H=G.querySelector(".sbc"),I=G.querySelector("[type=text]"),J=G.querySelector("[type=submit]"),K=G.querySelector(".sc"),L=G.querySelector(".x"),M=I.value,N=[],P=-1,Q=M,R,S,T;M||(L&&(L.style.display="none"),U(!1));function U(a){if(H.classList.contains("esbc")){var b=H.classList.contains("chsbc"),c=H.classList.contains("rtlsbc");a&&(K.style.display="block",b?(G.style.borderRadius="20px 20px 0 0",K.style.borderBottom="1px solid #DFE1E5",J.style.borderRadius=c?"20px 0 0 0":"0 20px 0 0"):H.style.borderRadius=c?"0 8px 0 0":"8px 0 0 0");a||(K.style.display="none",b?(G.style.borderRadius="20px",K.style.borderBottom="none",J.style.borderRadius=c?"20px 0 0 20px":"0 20px 20px 0"):H.style.borderRadius=c?"0 8px 8px 0":"8px 0 0 8px")}}function V(){G.querySelector("[name=oq]").value=Q;G.querySelector("[name=aqs]").value="heirloom-srp."+(0<=P?P:"")+"."+(0<N.length?"0l"+N.length:"")}
function W(){R=null;if(S){var a={client:"heirloom-srp",hl:hl,json:"t",callback:"hS",q:S};"undefined"!==typeof ds&&ds&&(a.ds=ds);var b=document;var c="SCRIPT";"application/xhtml+xml"===b.contentType&&(c=c.toLowerCase());c=b.createElement(c);b=x();b=y.exec(t(b).toString());var e=b[3]||"";a=w(b[1]+A("?",b[2]||"",a)+A("#",e));c.src=t(a);var d,n;(d=(a=null==(n=(d=(c.ownerDocument&&c.ownerDocument.defaultView||window).document).querySelector)?void 0:n.call(d,"script[nonce]"))?a.nonce||a.getAttribute("nonce")||
"":"")&&c.setAttribute("nonce",d);document.body.appendChild(c);S=null;R=setTimeout(W,500)}}function X(){for(;K.firstChild;)K.removeChild(K.firstChild);N=[];P=-1;U(!1)}function Y(){var a=K.querySelector(".scs");a&&(a.className="");0<=P?(a=K.childNodes[P],a.className="scs",M=a.textContent):M=Q;I.value=M}I.addEventListener("focus",function(){F&&(F.style.display="none")},!1);I.addEventListener("blur",function(){X();F&&(F.style.display="")},!1);I.addEventListener("keyup",function(a){M=I.value;T=!1;13===a.which?V():27===a.which?(X(),F&&(F.style.display=""),M=Q,I.value=M):40===a.which?(P++,P>=N.length&&(P=-1),Y()):38===a.which?(P--,-1>P&&(P=N.length-1),Y()):(a=M)?(L&&(L.style.display=""),S=a,R||W(),Q=a):(L&&(L.style.display="none"),U(!1),X(),Q="",T=!0)},!1);J.addEventListener("click",V,!1);L.addEventListener("click",function(){I.value="";L.style.display="none";U(!1)},!1);H.addEventListener("click",function(){I.focus()},!1);window.hS=function(a){if(!T){X();0===a[1].length&&U(!1);for(var b=0;b<a[1].length;b++){var c=a[1][b][0],e=document.createElement("div");D(e,E(c));e.addEventListener("mousedown",function(d){d.preventDefault();return!1},!1);c=c.replace(/<\/?b>/g,"");e.addEventListener("click",function(d){return function(){P=d;V();Y();X();G.submit()}}(b),!1);e.addEventListener("mouseover",function(d){return function(){P!==d&&(P=d,Y())}}(b),!1);K.appendChild(e);U(!0);N.push(c)}}};}).call(this);})();(function(){function b(a){for(a=a.target||a.srcElement;a&&"A"!==a.nodeName;)a=a.parentElement;a&&(a.href||"").match(/\/search.*[?&]tbm=isch/)&&(a.href+="&biw="+document.documentElement.clientWidth,a.href+="&bih="+document.documentElement.clientHeight)}document.addEventListener("click",b,!1);document.addEventListener("touchStart",b,!1);}).call(this);</script></div><!-- cctlcm 5 cctlcm --><textarea class="csi" name="csi" style="display:none"></textarea><script nonce="JPLNkpT2jn_kk_lCO_jAwg">(function(){var e='SnyuZI-1LpTf2roP1a-W6As';var sn='web';var timl=false;(function(){function B(a){if(!a||C(a))return 0;if(!a.getBoundingClientRect)return 1;var c=function(b){return b.getBoundingClientRect()};return D(a,c)?0:J(a,c)}function D(a,c){var b;a:{for(b=a;b&&null!==b;b=b.parentElement)if("hidden"===b.style.overflow||"G-EXPANDABLE-CONTENT"===b.tagName&&"hidden"===getComputedStyle(b).getPropertyValue("overflow"))break a;b=null}if(!b)return!1;a=c(a);c=c(b);return a.bottom<c.top||a.top>=c.bottom||a.right<c.left||a.left>=c.right}
function C(a){return"none"===a.style.display?!0:document.defaultView&&document.defaultView.getComputedStyle?(a=document.defaultView.getComputedStyle(a),!!a&&("hidden"===a.visibility||"0px"===a.height&&"0px"===a.width)):!1}
function J(a,c){var b=c(a);a=b.left+window.pageXOffset;c=b.top+window.pageYOffset;var f=b.width;b=b.height;var g=0;if(0>=b&&0>=f)return g;var q=window.innerHeight||document.documentElement.clientHeight;0>c+b?g=2:c>=q&&(g=4);if(0>a+f||a>=(window.innerWidth||document.documentElement.clientWidth))g|=8;g||(g=1,c+b>q&&(g|=4));return g};var K=e,L=sn,M="undefined"===typeof de?!0:!1!==de,N=[];function O(a,c,b){a="/gen_204?atyp=csi&s="+L+"&t="+a+("&lite=1&ei="+K+"&conn="+(window.navigator&&window.navigator.connection?window.navigator.connection.type:-1)+c);c="&rt=";for(var f in b)a+=""+c+f+"."+b[f],c=",";return a}function P(a){a={prt:a};window.wsrt&&(a.wsrt=window.wsrt);return a}function Q(a){window.ping?window.ping(a):(new Image).src=a}
(function(){for(var a=(new Date).getTime()-window.start,c=P(a),b=0,f=0,g=0,q=document.getElementsByTagName("img"),r=M?"&biw="+window.innerWidth+"&bih="+window.innerHeight:"",E=function(){r+="&ima="+g;c.aft=b;Q(O("aft",r,c))},x=0,R=function(h,t,u){var n=h.src;h.onload=function(){u&&n&&n===h.src||(f=(new Date).getTime()-window.start,t&&++x===g&&(b=f,E()),h.onload=null)}},S=0,d=void 0;d=q[S++];){var v=B(d),p=!!(v&1);p&&++g;var l=d.hasAttribute("data-ilite"),w=d.hasAttribute("data-deferred"),F=d.hasAttribute("data-src")||
d.hasAttribute("data-lzysrc"),y=!w&&!l&&F;N.push([v,w||l,y,!!(google.ldi&&d.id&&google.ldi[d.id])||l&&F]);l=(v=d.complete&&!w&&!(p&&y))&&Number(d.getAttribute("data-iml"))||0;v&&l?(p&&++x,l&&(d=l-window.start,p&&(b=Math.max(b,d)),f=Math.max(f,d))):R(d,p,w||y)}b||(b=a);f||(f=b);x===g&&E();google.rglh&&google.rglh();window.addEventListener("load",function(){window.setTimeout(function(){c.ol=(new Date).getTime()-window.start;timl&&(c.iml=f);var h=window.performance&&window.performance.timing;h&&(c.rqst=
h.responseEnd-h.requestStart,c.rspt=h.responseEnd-h.responseStart);for(var t=h=0,u=0,n=0,G=0,H=0,T=0,k;k=N[T++];){var m=k[0],z=k[1],I=k[2];k=k[3];var U=0==m,V=m&8,A=m&1;m=!A&&m&4;A&&(z&&!k||++u,I&&++H);z&&(A&&k&&++h,m&&!k&&++t);U||V?I||++G:z||++n}r+="&ime="+u+"&imel="+H+("&imex="+n+"&imeh="+G)+("&imea="+h+"&imeb="+t);Q(O("all",r,c))},0)},!1)})();}).call(this);})();</script><script nonce="JPLNkpT2jn_kk_lCO_jAwg">window._setImagesSrc=function(e,f){function g(b){b.onerror=function(){b.style.display="none"};b.setAttribute("data-deferred","2");b.src=f}for(var c=0;c<e.length;++c){var a=e[c],d=document.getElementById(a)||document.querySelector('img[data-iid="'+a+'"]');d?(a=void 0,(null==(a=google.c)?0:a.setup)&&google.c.setup(d),g(d)):(google.iir=google.iir||{},google.iir[a]=f)}};"undefined"===typeof window.google&&(window.google={});</script><script nonce="JPLNkpT2jn_kk_lCO_jAwg">(function(){var s='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAABAUlEQVR4AWMYesChoYElLjkzPj4lY3d8csZjIL4MxPNjUzPcSTYsISFLAqj5NBD/h+LPQPwbiT87NCuLh2gDgRr2QzXuT0jNMoBYksARn5zuHJ+UcR0kB6RXE2VYXHJGOlTDZmzyIJcB5e+D1CSkZDgQNBAaZv+jU1JkcKpJygiGeZ0I76a/Byq8jU9NZFqaCNTA48SE33/iDcw8TIyBt0GKQTFN0Msp6f2EIyUpo57YSIlLSrMhIg0WCIBcCfXSdlzJBsheTHQ6jEnOUgEFOLaEDbMIlhZBOYrorAdJk+nroVnvPsSgdGdoOF7HZyhZ2XPoGQoqjbCpIbt0AiejIQMArVLI7k/DXFkAAAAASUVORK5CYII\x3d';var i=['dimg_1','dimg_3','dimg_5','dimg_7','dimg_9','dimg_11','dimg_13','dimg_15'];_setImagesSrc(i,s);})();</script><script nonce="JPLNkpT2jn_kk_lCO_jAwg">(function(){var e='SnyuZI-1LpTf2roP1a-W6As';(function(){var a=e;2===(window.performance&&window.performance.navigation&&window.performance.navigation.type)&&window.ping("/gen_204?ct=backbutton&ei="+a);}).call(this);})();(function(){var b=[function(){google.tick&&google.tick("load","dcl")}];google.dclc=function(a){b.length?b.push(a):a()};function c(){for(var a=b.shift();a;)a(),a=b.shift()}window.addEventListener?(document.addEventListener("DOMContentLoaded",c,!1),window.addEventListener("load",c,!1)):window.attachEvent&&window.attachEvent("onload",c);}).call(this);(function(){
var b=function(a){var c=0;return function(){return c<a.length?{done:!1,value:a[c++]}:{done:!0}}},e=this||self;var g,h;a:{for(var k=["CLOSURE_FLAGS"],l=e,n=0;n<k.length;n++)if(l=l[k[n]],null==l){h=null;break a}h=l}var p=h&&h[610401301];g=null!=p?p:!1;var q,r=e.navigator;q=r?r.userAgentData||null:null;function t(a){return g?q?q.brands.some(function(c){return(c=c.brand)&&-1!=c.indexOf(a)}):!1:!1}function u(a){var c;a:{if(c=e.navigator)if(c=c.userAgent)break a;c=""}return-1!=c.indexOf(a)};function v(){return g?!!q&&0<q.brands.length:!1}function w(){return u("Safari")&&!(x()||(v()?0:u("Coast"))||(v()?0:u("Opera"))||(v()?0:u("Edge"))||(v()?t("Microsoft Edge"):u("Edg/"))||(v()?t("Opera"):u("OPR"))||u("Firefox")||u("FxiOS")||u("Silk")||u("Android"))}function x(){return v()?t("Chromium"):(u("Chrome")||u("CriOS"))&&!(v()?0:u("Edge"))||u("Silk")}function y(){return u("Android")&&!(x()||u("Firefox")||u("FxiOS")||(v()?0:u("Opera"))||u("Silk"))};var z=v()?!1:u("Trident")||u("MSIE");y();x();w();var A=!z&&!w(),D=function(a){if(/-[a-z]/.test("ved"))return null;if(A&&a.dataset){if(y()&&!("ved"in a.dataset))return null;a=a.dataset.ved;return void 0===a?null:a}return a.getAttribute("data-"+"ved".replace(/([A-Z])/g,"-$1").toLowerCase())};var E=[],F=null;function G(a){a=a.target;var c=performance.now(),f=[],H=f.concat,d=E;if(!(d instanceof Array)){var m="undefined"!=typeof Symbol&&Symbol.iterator&&d[Symbol.iterator];if(m)d=m.call(d);else if("number"==typeof d.length)d={next:b(d)};else throw Error("a`"+String(d));for(var B=[];!(m=d.next()).done;)B.push(m.value);d=B}E=H.call(f,d,[c]);if(a&&a instanceof HTMLElement)if(a===F){if(c=4<=E.length)c=5>(E[E.length-1]-E[E.length-4])/1E3;if(c){c=google.getEI(a);a.hasAttribute("data-ved")?f=a?D(a)||"":"":f=(f=
a.closest("[data-ved]"))?D(f)||"":"";f=f||"";if(a.hasAttribute("jsname"))a=a.getAttribute("jsname");else{var C;a=null==(C=a.closest("[jsname]"))?void 0:C.getAttribute("jsname")}google.log("rcm","&ei="+c+"&ved="+f+"&jsname="+(a||""))}}else F=a,E=[c]}window.document.addEventListener("DOMContentLoaded",function(){document.body.addEventListener("click",G)});}).call(this);window.jsl=window.jsl||{};window.jsl.dh=function(a,b,f){try{var g=document.getElementById(a);if(g)g.innerHTML=b,f&&f();else{var c={id:a,script:String(!!f),milestone:String(google.jslm||0)};google.jsla&&(c.async=google.jsla);var h=a.indexOf("_"),d=0<h?a.substring(0,h):"",k=document.createElement("div");k.innerHTML=b;var e=k.children[0];if(e&&(c.tag=e.tagName,c["class"]=String(e.className||null),c.name=String(e.getAttribute("jsname")),d)){a=[];var l=document.querySelectorAll('[id^="'+d+'_"]');for(b=0;b<l.length;++b)a.push(l[b].id);c.ids=a.join(",")}google.ml(Error(d?"Missing ID with prefix "+d:"Missing ID"),!1,c)}}catch(m){google.ml(m,!0,{"jsl.dh":!0})}};(function(){var x=false;google.jslm=x?2:1;})();(function(){(function(){google.csct={};google.csct.ps='AOvVaw3b4YfiyA9y_1bBZL916oRo\x26ust\x3d1689243082791244';})();})();(function(){(function(){google.csct.rd=true;})();})();(function(){(function(){google.csct.rl=true;})();})();(function(){window.xp=function(b){function f(k,g,h){return"xp"+("x"==g?"c":"x")+h}for(var c=/\bxp(x|c)(\d?)\b/,a=b;a;){var e=a.className,d=e.match(c);if(d){d="c"==d[1];a.className=e.replace(c,f);b&&b.setAttribute("aria-expanded",d);if(d)for(b=a.getElementsByTagName("img"),c=0;c<b.length;++c)if(a=b[c],e=a.getAttribute("data-ll"))a.src=e,a.removeAttribute("data-ll");break}a=a.parentElement}};})();(function(){(function(){window.logVe=function(a){a&&a.attributes["data-ved"]&&window.ping("/gen_204?ved="+a.attributes["data-ved"].value)};}).call(this);})();(function(){(function(){var id='tsuid_1';var lve=true;(function(){
var e="undefined"!=typeof navigator&&!/Opera/.test(navigator.userAgent)&&/WebKit/.test(navigator.userAgent),f={A:1,INPUT:1,TEXTAREA:1,SELECT:1,BUTTON:1},g={Enter:13," ":32},h={A:13,BUTTON:0,CHECKBOX:32,COMBOBOX:13,FILE:0,GRIDCELL:13,LINK:13,LISTBOX:13,MENU:0,MENUBAR:0,MENUITEM:0,MENUITEMCHECKBOX:0,MENUITEMRADIO:0,OPTION:0,RADIO:32,RADIOGROUP:32,RESET:0,SUBMIT:0,SWITCH:32,TAB:0,TREE:13,TREEITEM:13},k={CHECKBOX:!0,FILE:!0,OPTION:!0,RADIO:!0},l={COLOR:!0,DATE:!0,DATETIME:!0,"DATETIME-LOCAL":!0,EMAIL:!0,MONTH:!0,NUMBER:!0,PASSWORD:!0,RANGE:!0,SEARCH:!0,TEL:!0,TEXT:!0,TEXTAREA:!0,TIME:!0,URL:!0,WEEK:!0};document.getElementById(id).onclick=function(){window.xp(this);lve&&window.logVe(this)};document.getElementById(id).onkeydown=function(d){var c=d.which||d.keyCode;!c&&d.key&&(c=g[d.key]);e&&3==c&&(c=13);if(13!=c&&32!=c)c=!1;else{var a=d.target||d.srcElement;!a.getAttribute&&a.parentNode&&(a=a.parentNode);var b;if(!(b="keydown"!=d.type)){if(b="getAttribute"in a)b=!((a.getAttribute("type")||a.tagName).toUpperCase()in l);b=!(b&&!("BUTTON"==a.tagName.toUpperCase()||a.type&&"FILE"==a.type.toUpperCase())&&!a.isContentEditable)}(b=b||d.ctrlKey||d.shiftKey||d.altKey||d.metaKey||(a.getAttribute("type")||
a.tagName).toUpperCase()in k&&32==c)||((b=a.tagName in f)||(b=a.getAttributeNode("tabindex"),b=null!=b&&b.specified),b=!(b&&!a.disabled));if(b)c=!1;else{b=(a.getAttribute("role")||a.type||a.tagName).toUpperCase();var m=!(b in h)&&13==c;a="INPUT"!=a.tagName.toUpperCase()||!!a.type;c=(0==h[b]%c||m)&&a}}c&&(d.preventDefault(),window.xp(this),lve&&window.logVe(this))};}).call(this);})();})();(function(){window.jsl=window.jsl||{};window.jsl.dh=window.jsl.dh||function(i,c,d){try{var e=document.getElementById(i);if(e){e.innerHTML=c;if(d){d();}}else{if(window.jsl.el){window.jsl.el(new Error('Missing ID.'),{'id':i});}}}catch(e){if(window.jsl.el){window.jsl.el(new Error('jsl.dh'));}}};})();(function(){window.jsl.dh('accdef_1','\x3cdiv\x3e\x3cdiv style\x3d\x22padding-bottom:12px;padding-top:0px\x22 class\x3d\x22hwc kCrYT\x22\x3e\x3cdiv class\x3d\x22yStFkb\x22\x3e\x3cdiv class\x3d\x22Gx5Zad xpd EtOod pkphOe\x22\x3e\x3cdiv class\x3d\x22kCrYT\x22\x3e\x3cdiv\x3e\x3cdiv class\x3d\x22BNeawe s3v9rd AP7Wnd\x22\x3e\x3cdiv\x3e\x3cdiv class\x3d\x22BNeawe s3v9rd AP7Wnd\x22\x3e\u300cbeautiful soup\u300d\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u30fb\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u306e\u306f\u5b9f\u306f\u7c21\u5358\u3067\u3059\u3002 \u307e\u305a\u306f\u300c\u30b3\u30de\u30f3\u30c9\u30d7\u30ed\u30f3\u30d7\u30c8\u300d\u3092\u8d77\u52d5\u3057\u307e\u3059\u3002 \x3cspan class\x3d\x22FCUp0c rQMQod\x22\x3e\u300c\u30b3\u30de\u30f3\u30c9\u30d7\u30ed\u30f3\u30d7\u30c8\u300d\u306b\u300cpip install beautifulsoup4\u300d\u3068\u5165\u529b\u3059\u308b\u3060\u3051\u3067\u3059\u3002\x3c/span\x3e \x3cspan class\x3d\x22FCUp0c rQMQod\x22\x3e\u6700\u5f8c\u306b\u30a8\u30f3\u30bf\u30fc\u30ad\u30fc\u3092\u304a\u3057\u307e\u3059\x3c/span\x3e\u3002\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3cdiv class\x3d\x22x54gtf\x22\x3e\x3c/div\x3e\x3cdiv class\x3d\x22kCrYT\x22\x3e\x3ca href\x3d\x22/url?q\x3dhttps://pg-chain.com/python-beautiful-soup4\x26amp;sa\x3dU\x26amp;ved\x3d2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAUQBg\x26amp;usg\x3dAOvVaw3bllJfiMOmywVlsf6PlLed\x22 jsname\x3d\x22ACyKwe\x22 data-ved\x3d\x222ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAUQBg\x22\x3e\x3cspan\x3e\x3cdiv class\x3d\x22BNeawe vvjwJb AP7Wnd\x22\x3e\x3cspan class\x3d\x22rQMQod Xb5VRe\x22\x3e\u3010Python\u3011Beautiful Soup\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u65b9\u6cd5 - \u9396\u30d7\u30ed\u30b0\u30e9\u30e0\x3c/span\x3e\x3c/div\x3e\x3c/span\x3e\x3cspan\x3e\x3cdiv class\x3d\x22BNeawe UPmit AP7Wnd\x22\x3epg-chain.com \u203a Python \u203a \u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\x3c/div\x3e\x3c/span\x3e\x3c/a\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3cdiv\x3e\x3cdiv class\x3d\x22P1NWSe\x22\x3e\x3cdiv class\x3d\x22wOMIed nkPlDb\x22\x3e\x3cspan class\x3d\x22JhFlyf VQFmSd\x22\x3e\x3ca class\x3d\x22f4J0H\x22 href\x3d\x22https://www.google.co.jp/search?ie\x3dUTF-8\x26amp;ei\x3dSnyuZI-1LpTf2roP1a-W6As\x26amp;q\x3dPython%E3%81%A7Beautifulsoup%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%99%E3%82%8B%E3%81%AB%E3%81%AF%EF%BC%9F\x26amp;sa\x3dX\x26amp;ved\x3d2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Qzmd6BAgFEAc\x22 jsname\x3d\x22ACyKwe\x22 data-ved\x3d\x222ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Qzmd6BAgFEAc\x22\x3e\u3082\u3063\u3068\u898b\u308b\x3c/a\x3e\x3c/span\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e');})();(function(){(function(){var id='tsuid_2';var lve=true;(function(){
var e="undefined"!=typeof navigator&&!/Opera/.test(navigator.userAgent)&&/WebKit/.test(navigator.userAgent),f={A:1,INPUT:1,TEXTAREA:1,SELECT:1,BUTTON:1},g={Enter:13," ":32},h={A:13,BUTTON:0,CHECKBOX:32,COMBOBOX:13,FILE:0,GRIDCELL:13,LINK:13,LISTBOX:13,MENU:0,MENUBAR:0,MENUITEM:0,MENUITEMCHECKBOX:0,MENUITEMRADIO:0,OPTION:0,RADIO:32,RADIOGROUP:32,RESET:0,SUBMIT:0,SWITCH:32,TAB:0,TREE:13,TREEITEM:13},k={CHECKBOX:!0,FILE:!0,OPTION:!0,RADIO:!0},l={COLOR:!0,DATE:!0,DATETIME:!0,"DATETIME-LOCAL":!0,EMAIL:!0,MONTH:!0,NUMBER:!0,PASSWORD:!0,RANGE:!0,SEARCH:!0,TEL:!0,TEXT:!0,TEXTAREA:!0,TIME:!0,URL:!0,WEEK:!0};document.getElementById(id).onclick=function(){window.xp(this);lve&&window.logVe(this)};document.getElementById(id).onkeydown=function(d){var c=d.which||d.keyCode;!c&&d.key&&(c=g[d.key]);e&&3==c&&(c=13);if(13!=c&&32!=c)c=!1;else{var a=d.target||d.srcElement;!a.getAttribute&&a.parentNode&&(a=a.parentNode);var b;if(!(b="keydown"!=d.type)){if(b="getAttribute"in a)b=!((a.getAttribute("type")||a.tagName).toUpperCase()in l);b=!(b&&!("BUTTON"==a.tagName.toUpperCase()||a.type&&"FILE"==a.type.toUpperCase())&&!a.isContentEditable)}(b=b||d.ctrlKey||d.shiftKey||d.altKey||d.metaKey||(a.getAttribute("type")||
a.tagName).toUpperCase()in k&&32==c)||((b=a.tagName in f)||(b=a.getAttributeNode("tabindex"),b=null!=b&&b.specified),b=!(b&&!a.disabled));if(b)c=!1;else{b=(a.getAttribute("role")||a.type||a.tagName).toUpperCase();var m=!(b in h)&&13==c;a="INPUT"!=a.tagName.toUpperCase()||!!a.type;c=(0==h[b]%c||m)&&a}}c&&(d.preventDefault(),window.xp(this),lve&&window.logVe(this))};}).call(this);})();})();(function(){window.jsl.dh('accdef_3','\x3cdiv\x3e\x3cdiv style\x3d\x22padding-bottom:12px;padding-top:0px\x22 class\x3d\x22hwc kCrYT\x22\x3e\x3cdiv class\x3d\x22yStFkb\x22\x3e\x3cdiv class\x3d\x22Gx5Zad xpd EtOod pkphOe\x22\x3e\x3cdiv class\x3d\x22kCrYT\x22\x3e\x3cdiv\x3e\x3cdiv class\x3d\x22BNeawe s3v9rd AP7Wnd\x22\x3e\x3cdiv\x3e\x3cdiv class\x3d\x22BNeawe s3v9rd AP7Wnd\x22\x3eBeautiful Soup \u306f\x3cspan class\x3d\x22FCUp0c rQMQod\x22\x3eHTML\u3084XML\u30d5\u30a1\u30a4\u30eb\u304b\u3089\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3059\u308bPython\u306e\u30e9\u30a4\u30d6\u30e9\u30ea\x3c/span\x3e\u3067\u3059\u3002 \u3042\u306a\u305f\u306e\u597d\u304d\u306a\u30d1\u30fc\u30b5\u30fc(\u69cb\u6587\u89e3\u6790\u5668)\u3092\u4f7f\u3063\u3066\u3001\u30d1\u30fc\u30b9\u30c4\u30ea\u30fc(\u69cb\u6587\u6728)\u306e\u63a2\u7d22\u3001\u691c\u7d22\u3001\u4fee\u6b63\u3092\u884c\u3044\u307e\u3059\u3002 \u3053\u308c\u306f\u30d7\u30ed\u30b0\u30e9\u30de\u30fc\u306e\u4f5c\u696d\u6642\u9593\u3092\u5927\u5e45\u306b\u77ed\u7e2e\u3057\u3066\u304f\u308c\u307e\u3059\u3002\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3cdiv class\x3d\x22x54gtf\x22\x3e\x3c/div\x3e\x3cdiv class\x3d\x22kCrYT\x22\x3e\x3ca href\x3d\x22/url?q\x3dhttp://kondou.com/BS4/\x26amp;sa\x3dU\x26amp;ved\x3d2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAUQDQ\x26amp;usg\x3dAOvVaw3xCGQuQLIyqUghGQ2mVD7u\x22 jsname\x3d\x22ACyKwe\x22 data-ved\x3d\x222ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAUQDQ\x22\x3e\x3cspan\x3e\x3cdiv class\x3d\x22BNeawe vvjwJb AP7Wnd\x22\x3e\x3cspan class\x3d\x22rQMQod Xb5VRe\x22\x3eBeautiful Soup 4.2.0 Doc. \u65e5\u672c\u8a9e\u8a33 (2013-11-19\u6700\u7d42\u66f4\u65b0) - kondou.com\x3c/span\x3e\x3c/div\x3e\x3c/span\x3e\x3cspan\x3e\x3cdiv class\x3d\x22BNeawe UPmit AP7Wnd\x22\x3ekondou.com \u203a ...\x3c/div\x3e\x3c/span\x3e\x3c/a\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3cdiv\x3e\x3cdiv class\x3d\x22P1NWSe\x22\x3e\x3cdiv class\x3d\x22wOMIed nkPlDb\x22\x3e\x3cspan class\x3d\x22JhFlyf VQFmSd\x22\x3e\x3ca class\x3d\x22f4J0H\x22 href\x3d\x22https://www.google.co.jp/search?ie\x3dUTF-8\x26amp;ei\x3dSnyuZI-1LpTf2roP1a-W6As\x26amp;q\x3dBeautifulsoup%E3%81%AE%E6%A9%9F%E8%83%BD%E3%81%AF%EF%BC%9F\x26amp;sa\x3dX\x26amp;ved\x3d2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Qzmd6BAgFEA4\x22 jsname\x3d\x22ACyKwe\x22 data-ved\x3d\x222ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Qzmd6BAgFEA4\x22\x3e\u3082\u3063\u3068\u898b\u308b\x3c/a\x3e\x3c/span\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e');})();(function(){(function(){var id='tsuid_3';var lve=true;(function(){
var e="undefined"!=typeof navigator&&!/Opera/.test(navigator.userAgent)&&/WebKit/.test(navigator.userAgent),f={A:1,INPUT:1,TEXTAREA:1,SELECT:1,BUTTON:1},g={Enter:13," ":32},h={A:13,BUTTON:0,CHECKBOX:32,COMBOBOX:13,FILE:0,GRIDCELL:13,LINK:13,LISTBOX:13,MENU:0,MENUBAR:0,MENUITEM:0,MENUITEMCHECKBOX:0,MENUITEMRADIO:0,OPTION:0,RADIO:32,RADIOGROUP:32,RESET:0,SUBMIT:0,SWITCH:32,TAB:0,TREE:13,TREEITEM:13},k={CHECKBOX:!0,FILE:!0,OPTION:!0,RADIO:!0},l={COLOR:!0,DATE:!0,DATETIME:!0,"DATETIME-LOCAL":!0,EMAIL:!0,MONTH:!0,NUMBER:!0,PASSWORD:!0,RANGE:!0,SEARCH:!0,TEL:!0,TEXT:!0,TEXTAREA:!0,TIME:!0,URL:!0,WEEK:!0};document.getElementById(id).onclick=function(){window.xp(this);lve&&window.logVe(this)};document.getElementById(id).onkeydown=function(d){var c=d.which||d.keyCode;!c&&d.key&&(c=g[d.key]);e&&3==c&&(c=13);if(13!=c&&32!=c)c=!1;else{var a=d.target||d.srcElement;!a.getAttribute&&a.parentNode&&(a=a.parentNode);var b;if(!(b="keydown"!=d.type)){if(b="getAttribute"in a)b=!((a.getAttribute("type")||a.tagName).toUpperCase()in l);b=!(b&&!("BUTTON"==a.tagName.toUpperCase()||a.type&&"FILE"==a.type.toUpperCase())&&!a.isContentEditable)}(b=b||d.ctrlKey||d.shiftKey||d.altKey||d.metaKey||(a.getAttribute("type")||
a.tagName).toUpperCase()in k&&32==c)||((b=a.tagName in f)||(b=a.getAttributeNode("tabindex"),b=null!=b&&b.specified),b=!(b&&!a.disabled));if(b)c=!1;else{b=(a.getAttribute("role")||a.type||a.tagName).toUpperCase();var m=!(b in h)&&13==c;a="INPUT"!=a.tagName.toUpperCase()||!!a.type;c=(0==h[b]%c||m)&&a}}c&&(d.preventDefault(),window.xp(this),lve&&window.logVe(this))};}).call(this);})();})();(function(){window.jsl.dh('accdef_5','\x3cdiv\x3e\x3cdiv style\x3d\x22padding-bottom:12px;padding-top:0px\x22 class\x3d\x22hwc kCrYT\x22\x3e\x3cdiv class\x3d\x22yStFkb\x22\x3e\x3cdiv class\x3d\x22Gx5Zad xpd EtOod pkphOe\x22\x3e\x3cdiv class\x3d\x22kCrYT\x22\x3e\x3cdiv\x3e\x3cdiv class\x3d\x22BNeawe s3v9rd AP7Wnd\x22\x3e\x3cdiv\x3e\x3cdiv class\x3d\x22BNeawe s3v9rd AP7Wnd\x22\x3eBeautifulSoup4\u3068\u306f\n\n BeautifulSoup4\u306f\x3cspan class\x3d\x22FCUp0c rQMQod\x22\x3eWeb\u30b5\u30a4\u30c8\u306eHTML\u304b\u3089\u60c5\u5831\u3092\u62bd\u51fa\u3059\u308b\u305f\u3081\u306e\u30e9\u30a4\u30d6\u30e9\u30ea\x3c/span\x3e\u3067\u3059\u3002 \u62bd\u51fa\u3057\u305fHTML\u3092\u89e3\u6790\u3057\u3066\u3001\u76ee\u7684\u306e\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3067\u304d\u307e\u3059\u3002 BeautifulSoup4\u306e\u30e2\u30b8\u30e5\u30fc\u30eb\u540d\u306fbs4\uff08Beautiful Soup \u30d0\u30fc\u30b8\u30e7\u30f34\uff09\u3067\u3059\u3002\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3cdiv class\x3d\x22x54gtf\x22\x3e\x3c/div\x3e\x3cdiv class\x3d\x22kCrYT\x22\x3e\x3ca href\x3d\x22/url?q\x3dhttps://office54.net/python/scraping/beautifulsoup4-html\x26amp;sa\x3dU\x26amp;ved\x3d2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAUQFA\x26amp;usg\x3dAOvVaw20JT_h0KOIY69z7zaR8LsT\x22 jsname\x3d\x22ACyKwe\x22 data-ved\x3d\x222ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAUQFA\x22\x3e\x3cspan\x3e\x3cdiv class\x3d\x22BNeawe vvjwJb AP7Wnd\x22\x3e\x3cspan class\x3d\x22rQMQod Xb5VRe\x22\x3eBeautifulSoup4\u306b\u3088\u308bHTML\u89e3\u6790 - \u3010Python\u3011\u30b9\u30af\u30ec\u30a4\u30d4\u30f3\u30b0\x3c/span\x3e\x3c/div\x3e\x3c/span\x3e\x3cspan\x3e\x3cdiv class\x3d\x22BNeawe UPmit AP7Wnd\x22\x3eoffice54.net \u203a python \u203a scraping \u203a beautifulsoup4-html\x3c/div\x3e\x3c/span\x3e\x3c/a\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3cdiv\x3e\x3cdiv class\x3d\x22P1NWSe\x22\x3e\x3cdiv class\x3d\x22wOMIed nkPlDb\x22\x3e\x3cspan class\x3d\x22JhFlyf VQFmSd\x22\x3e\x3ca class\x3d\x22f4J0H\x22 href\x3d\x22https://www.google.co.jp/search?ie\x3dUTF-8\x26amp;ei\x3dSnyuZI-1LpTf2roP1a-W6As\x26amp;q\x3dBeautiful+soup4%E3%81%A8%E3%81%AF%E4%BD%95%E3%81%A7%E3%81%99%E3%81%8B%EF%BC%9F\x26amp;sa\x3dX\x26amp;ved\x3d2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Qzmd6BAgFEBU\x22 jsname\x3d\x22ACyKwe\x22 data-ved\x3d\x222ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Qzmd6BAgFEBU\x22\x3e\u3082\u3063\u3068\u898b\u308b\x3c/a\x3e\x3c/span\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e');})();(function(){(function(){var id='tsuid_4';var lve=true;(function(){
var e="undefined"!=typeof navigator&&!/Opera/.test(navigator.userAgent)&&/WebKit/.test(navigator.userAgent),f={A:1,INPUT:1,TEXTAREA:1,SELECT:1,BUTTON:1},g={Enter:13," ":32},h={A:13,BUTTON:0,CHECKBOX:32,COMBOBOX:13,FILE:0,GRIDCELL:13,LINK:13,LISTBOX:13,MENU:0,MENUBAR:0,MENUITEM:0,MENUITEMCHECKBOX:0,MENUITEMRADIO:0,OPTION:0,RADIO:32,RADIOGROUP:32,RESET:0,SUBMIT:0,SWITCH:32,TAB:0,TREE:13,TREEITEM:13},k={CHECKBOX:!0,FILE:!0,OPTION:!0,RADIO:!0},l={COLOR:!0,DATE:!0,DATETIME:!0,"DATETIME-LOCAL":!0,EMAIL:!0,MONTH:!0,NUMBER:!0,PASSWORD:!0,RANGE:!0,SEARCH:!0,TEL:!0,TEXT:!0,TEXTAREA:!0,TIME:!0,URL:!0,WEEK:!0};document.getElementById(id).onclick=function(){window.xp(this);lve&&window.logVe(this)};document.getElementById(id).onkeydown=function(d){var c=d.which||d.keyCode;!c&&d.key&&(c=g[d.key]);e&&3==c&&(c=13);if(13!=c&&32!=c)c=!1;else{var a=d.target||d.srcElement;!a.getAttribute&&a.parentNode&&(a=a.parentNode);var b;if(!(b="keydown"!=d.type)){if(b="getAttribute"in a)b=!((a.getAttribute("type")||a.tagName).toUpperCase()in l);b=!(b&&!("BUTTON"==a.tagName.toUpperCase()||a.type&&"FILE"==a.type.toUpperCase())&&!a.isContentEditable)}(b=b||d.ctrlKey||d.shiftKey||d.altKey||d.metaKey||(a.getAttribute("type")||
a.tagName).toUpperCase()in k&&32==c)||((b=a.tagName in f)||(b=a.getAttributeNode("tabindex"),b=null!=b&&b.specified),b=!(b&&!a.disabled));if(b)c=!1;else{b=(a.getAttribute("role")||a.type||a.tagName).toUpperCase();var m=!(b in h)&&13==c;a="INPUT"!=a.tagName.toUpperCase()||!!a.type;c=(0==h[b]%c||m)&&a}}c&&(d.preventDefault(),window.xp(this),lve&&window.logVe(this))};}).call(this);})();})();(function(){window.jsl.dh('accdef_7','\x3cdiv\x3e\x3cdiv style\x3d\x22padding-bottom:12px;padding-top:0px\x22 class\x3d\x22hwc kCrYT\x22\x3e\x3cdiv class\x3d\x22yStFkb\x22\x3e\x3cdiv class\x3d\x22Gx5Zad xpd EtOod pkphOe\x22\x3e\x3cdiv class\x3d\x22kCrYT\x22\x3e\x3cdiv\x3e\x3cdiv class\x3d\x22BNeawe s3v9rd AP7Wnd\x22\x3e\x3cdiv class\x3d\x22Ap5OSd\x22\x3e\x3cdiv class\x3d\x22BNeawe s3v9rd AP7Wnd\x22\x3eBeautiful Soup(\x3cspan class\x3d\x22FCUp0c rQMQod\x22\x3e\u30d3\u30e5\u30fc\u30c6\u30a3\u30d5\u30eb\u30fb\u30b9\u30fc\u30d7\x3c/span\x3e)\u3068\u306f\u3001HTML\u3084XML\u30d5\u30a1\u30a4\u30eb\u304b\u3089\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3057\u3001\u89e3\u6790\u3059\u308bPython\u306eWEB\u30b9\u30af\u30ec\u30a4\u30d4\u30f3\u30b0\u7528\u306e\u30e9\u30a4\u30d6\u30e9\u30ea\u3067\u3059\u3002 \u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u4e0a\u306b\u516c\u958b\u3055\u308c\u3066\u3044\u308bWEB\u30b5\u30a4\u30c8\u3067\u306f\u5e83\u304fHTML\u3084XML\u304c\u4f7f\u308f\u308c\u3066\u304a\u308a\u3001\u3053\u308c\u3089\u306e\u60c5\u5831\u306e\u53d6\u5f97\u3084\u89e3\u6790\u306b\u3001\u5927\u5909\u4fbf\u5229\u306a\u30e9\u30a4\u30d6\u30e9\u30ea\u3067\u3059\u3002\x3c/div\x3e\x3c/div\x3e\x3cdiv\x3e\x3cdiv class\x3d\x22BNeawe s3v9rd AP7Wnd\x22\x3e\x3csub class\x3d\x22gMUaMb r0bn4c rQMQod\x22\x3e2023\u5e746\u670818\u65e5\x3c/sub\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3cdiv class\x3d\x22x54gtf\x22\x3e\x3c/div\x3e\x3cdiv class\x3d\x22kCrYT\x22\x3e\x3ca href\x3d\x22/url?q\x3dhttps://ai-inter1.com/beautifulsoup_1/\x26amp;sa\x3dU\x26amp;ved\x3d2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAUQGw\x26amp;usg\x3dAOvVaw2WmbH5f0VP2sh8QWxnACcz\x22 jsname\x3d\x22ACyKwe\x22 data-ved\x3d\x222ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0QFnoECAUQGw\x22\x3e\x3cspan\x3e\x3cdiv class\x3d\x22BNeawe vvjwJb AP7Wnd\x22\x3e\x3cspan class\x3d\x22rQMQod Xb5VRe\x22\x3e\u56f3\u89e3\uff01Python BeautifulSoup\u306e\u4f7f\u3044\u65b9\u3092\u5fb9\u5e95\u89e3\u8aac\uff01(select\u3001find\x3c/span\x3e\x3c/div\x3e\x3c/span\x3e\x3cspan\x3e\x3cdiv class\x3d\x22BNeawe UPmit AP7Wnd\x22\x3eai-inter1.com \u203a Web\u30b9\u30af\u30ec\u30a4\u30d4\u30f3\u30b0 \u203a 03. BeautifulSoup\x3c/div\x3e\x3c/span\x3e\x3c/a\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3cdiv\x3e\x3cdiv class\x3d\x22P1NWSe\x22\x3e\x3cdiv class\x3d\x22wOMIed nkPlDb\x22\x3e\x3cspan class\x3d\x22JhFlyf VQFmSd\x22\x3e\x3ca class\x3d\x22f4J0H\x22 href\x3d\x22https://www.google.co.jp/search?ie\x3dUTF-8\x26amp;ei\x3dSnyuZI-1LpTf2roP1a-W6As\x26amp;q\x3d%E3%80%8CBeautiful+Soup%E3%80%8D%E3%81%AE%E8%AA%AD%E3%81%BF%E6%96%B9%E3%81%AF%EF%BC%9F\x26amp;sa\x3dX\x26amp;ved\x3d2ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Qzmd6BAgFEBw\x22 jsname\x3d\x22ACyKwe\x22 data-ved\x3d\x222ahUKEwiPgq-A94iAAxWUr1YBHdWXBb0Qzmd6BAgFEBw\x22\x3e\u3082\u3063\u3068\u898b\u308b\x3c/a\x3e\x3c/span\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e');})();google.drty&&google.drty(undefined,true);</script></body></html>
上記のHTMLデータから抽出したい要素をBeautifulSoupにて指定します。
BeautifulSoupの代表的なメソッドの使い方
HTMLデータを解析した後、指定した箇所のデータを抽出する必要があります。
本記事では、スクレイピングの際に利用するBeautifulSoupの代表的なメソッドを記載します。
タイプ | 1要素だけ返す | 全要素をリストで返す | 引数(検索条件指定) |
---|---|---|---|
find系 | find() | find_all() | 要素名, 属性指定(キーワード引数) |
select系 | select_one() | select() | CSSセレクタ |
機能はどちらも同じですが、引数の違いによって探し出すアプローチ方法が異なります。
ただし、HTMLデータによってはクラス/idに対して属性値を持たないデータがあるため、その場合はselect系を利用しましょう。
find(), find_all()の使い方
ここでは、find()とfind_all()の使い方を解説します。
本記事では、Google検索結果のページから検索ヒットした10個のページ名を取得します。
ページ名(Google検索だと<h3>タグ)に付与されたクラスは”BNeawe vvjwJb AP7Wnd”のようです。
注意すべきポイントは、サイト運営者側でソフトウェアのアップデートによりHTML構造が変更されるケースが多いため、エラー等が発生する場合は確認しましょう。
実行コードは以下の通りです。
#find()
soup.find('h3', class_='BNeawe vvjwJb AP7Wnd')
#find_all()
soup.find_all('h3', class_='BNeawe vvjwJb AP7Wnd')
タイプ | 実行結果 |
---|---|
find(‘h3′, class_=’BNeawe vvjwJb AP7Wnd’) | 図解!Python BeautifulSoupの使い方を徹底解説!(select、find |
find_all(‘h3′, class_=’BNeawe vvjwJb AP7Wnd’) | [ 図解!Python BeautifulSoupの使い方を徹底解説!(select、find , Pythonのbeautifulsoupでスクレイピングをしてみよう , [Python入門]Beautiful Soup 4によるスクレイピングの基礎 – IT , [Python]BeautifulSoupの使い方 – 藤の手帳 , PythonとBeautiful SoupでWebスクレイピングとHTML解析をする方法 , 【Python】BeautifulSoupでWebスクレイピングに挑戦|HTML解析 … , 【Python】Beautiful Soupをインストールする方法 – 鎖プログラム , BeautifulSoupのインストールについて – スタック・オーバーフロー , BeautifulSoupのfind()とfind_all()の使い方の違い【Python】 , BeautifulSoupとは?初心者向けチュートリアル – Qiita ] |
上述した通り、find()は1要素だけ返し、find_all()は全要素をリストで返します。
また、find()は同じクラス要素を指定した際に、最初にヒットした要素だけを取得するため、複数取得したい場合にfind_all()を使用します。
select_one(), select()の使い方
ここでは、select_one()とselect()の使い方を解説します。
find系と機能は同じですが、CSSセレクタによる要素指定になります。
実行コードは以下の通りです。
#select_one()
soup.select_one('h3')
#select()
soup.select('h3')
タイプ | 実行結果 |
---|---|
select_one(‘h3’) | 図解!Python BeautifulSoupの使い方を徹底解説!(select、find |
select(‘h3’) | [ 図解!Python BeautifulSoupの使い方を徹底解説!(select、find , Pythonのbeautifulsoupでスクレイピングをしてみよう , [Python入門]Beautiful Soup 4によるスクレイピングの基礎 – IT , [Python]BeautifulSoupの使い方 – 藤の手帳 , PythonとBeautiful SoupでWebスクレイピングとHTML解析をする方法 , 【Python】BeautifulSoupでWebスクレイピングに挑戦|HTML解析 … , 【Python】Beautiful Soupをインストールする方法 – 鎖プログラム , BeautifulSoupのインストールについて – スタック・オーバーフロー , BeautifulSoupのfind()とfind_all()の使い方の違い【Python】 , BeautifulSoupとは?初心者向けチュートリアル – Qiita ] |
こちらもselect_one()は1要素だけ返し、select()は全要素をリストで返します。
ただし、find系と違いCSSセレクタのみ指定するため、ページタイトルである’h3’を指定しデータを取得しています。(CSSセレクタ連結可能)
BeautifulSoupのチートシート
改めて、スクレイピングで利用されるBeautifulSoupに関するメソッドのチートシートを記載します。
タイプ | 1要素だけ返す | 全要素をリストで返す | 引数(検索条件指定) |
---|---|---|---|
find系 | find() | find_all() | 要素名, 属性指定(キーワード引数) |
select系 | select_one() | select() | CSSセレクタ |
上記の内容を対象先の検索条件指定に変更し、利用していただければと存じます。
本格的にエンジニアへのキャリアチェンジを考えてる人へ
プログラミングスキルを社内やプライベートで活用している人が増えています。
- 一部業務プロセスの効率化/自動化
- 分析システム構築による担当業務改善
- 社内公開によるチーム/プロジェクトの業務時間短縮
Pythonは特にデータ収集や分析に特化したライブラリが豊富なため、業務プロセスの一元管理やDX化に貢献しています。
また、プログラミングに触れてエンジニアへのキャリアチェンジを実現したい人の人材規模も年々高まっています。
一度、あなたのキャリアプランを振り返ってみてください。
- 収入アップが見込めている
- キャリアアップが見込めている
- 働き方を明確に決めれている
上記の項目をYESと答えられる人は、特に言うことはありません。
現在、エンジニアへのキャリアチェンジでお悩みの方は、「【Python特化】厳選したおすすめプログラミングスクール」を一読ください。
コメント