2021.03.29ある程度基本事項を学んだら、そこから何ができるのかが気になるところです。Pythonでおすすめなのが簡単なスクレイピング!今回はPythonを使って、Webページから欲しい情報を取り込んでみましょう。ひろがるpythonpycon.jpを用いて、実際にスクレイピングを進めてみましょう。違うWebページを用いたい場合は適宜ページに合わせたコードを実装してくださいね。※スクレイピングは思いがけずサーバーに負荷をかけてしまうことがありますので、行う際にはサイトでのスクレイピングが許可されているのかを確認の上、行うようにしましょう。Webデータの取得まずはデータの取得に必要なrequestsのimportからでしたね。requestsそしてあるページからの情報を手に入れるにはrequests.get(サイトのURL)を用います。requestsを出して帰ってきた情報をある変数に代入します。ここではresponseとします。requests.get("https://pycon.jp/2018/event/sessions")これでWebページの情報を得ることができました。読み取りやすいデータへWebページの情報を得ることができましたが、まだ我々の目にはよくわからない情報ですので、理解が可能なHTMLの情報にしてもらいます。ここで登場するのがBeautifulSoupです。importをします。BeautifulSoupそして受け取った情報を、HTML情報にしてもらいましょう!BeutifulSoupの1つ目の引数で解析したい情報を2つ目の引数でどのように解析するのかを指定します。解析した情報をsoupという変数に入れます。欲しいのはテキスト情報なので、1つ目の引数にはresponse.contentを指定しています。"html.parser")これで人間でも理解が可能な状態になりました!ここまでをとりあえずコードにまとめると。"html.parser")実際のページから欲しい情報を解析ページの準備は整ったので、実際にサイトを見てみましょう。行ってみると下のような感じで、各講演のタイトルや言語、発表時間などがそれぞれまとめられていることがわかります。今回はここからそれぞれのタイトルを抜き出そうと考えます。サイト上で右クリックして、検証をクリックすると、画面が分割されて、右側にサイトのHTML情報が掲載されています。欲しい部分がHTMLでどう表されているのかを簡単に判別する方法として、検証画面での左上をクリックして見る方法があります。クリックしたら欲しいところにカーソルを持っていき、クリックします。ここでは各講演のタイトルが欲しいのでタイトル上でクリック。すると、クリックしたところに対応したHTMLでの情報が右側でも選択されるので、ここから情報を抜き出していく手がかりを見つけます。これをみた感じだと、<h3>タグが各タイトルを表していそうなので、h3を指定しましょう。soup.find_all()で該当する部分をlistで返します、それをtitle_listという変数にいれます、変数名にlistを入れるようにしておくと、この変数って何が入ってるのかがわかりやすいので、癖づけておくのがおすすめです。soup.find_all("h3")これで<h3>タグを含む情報をリスト形式で取り込むことができたはずです。“で区切られて入っていることがわかります。リスト形式で入っていることが確認できましたね。<h4>データの保存</h4>それではデータを保存しましょう!と言っても保存するだけなら上で得たのをそのまま保存で終わりですが、1行でまとまって保存されてしまうので、データとして成立するために、1つの講演タイトル名で1行で保存してみましょう。まとめて書くとこうなります。writer.writerow(row)最初のfor分でリストを1つずつ取り出しています。2,3行目でrowというリストに各講演タイトルを加えて、4〜6行目でpycontitle.csvというファイルを開き、行ごとにタイトルを加えている操作になります。コードまとめこれまでの全てをまとめるとこのようになります。独学Python[Python][独学]スクレイピングに必要なHTMLの知識を知っておく。Webページをスクレイピングするのにはある程度のHTML知識が必要になります。いっても覚えることは少ないですし、ぱぱっとまとめておこうと思います。この記事では自動で検索をしてスクリ...独学Python[Python]コマンドラインで引数を渡したい。argparseの基本を学ぶ私は頻繁に誰か様が描いてくださったコード・レポジトリをgithubからcloneして、自分用にカスタマイズする。そのせいもあり、あまり基本的なコードを一から書いたりする機会が少ない。備忘録として、argparseについて書いておく。BINANCEの公式に従って進めていきます。認証がまだの方は先に認証を済ませておく必要があります。途中うまくいかなかったので、参考になれば幸いです。キーを取得して設定しておく必要があります。APIキーを取得して設定するまでの流れを見ていきます。以下の記事でtxtファイルについて少しみてみましたが、今回はCSVファイルについてみていくことにしましょう。CSVファイルとはなんだ基本的なCSVフ...スポンサーリンクBeautifulSoupの役割、仕組みについて理解する[Python][Scraping][独学][Python]Pythonを始めよう!仮想環境(venv)を使ってみる。コメントをキャンセルメールアドレスが公開されることはありません。※サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。上に表示された文字を入力してください。メーカーに入社するも、やる気なく、上司と相性悪く、軽く病む、いや病む。前から”お金”について知識を蓄えておくべきだったと後悔。グ.お問い合わせタイトルとURLをコピーしました。