ポートフォリオサイト公開中

【python スクレイピング】requestsモジュールを使ってサイトタイトルを取得する

こんにちは、ともろう(@tomorrowSLog)です。

requestsモジュールを使った静的サイトのスクレイピングを備忘録的に書いていきます。

目次
  1. はじめに
  2. タイトルの取得
  3. まとめ

pythonを使ってAIの勉強ができるのでオススメです。
pythonを使って何か実践的なものを作りたい時によく使ってます。

【requestsモジュール】pythonの文字化けを対策する【requestsモジュール】pythonの文字化けを対策する

はじめに

requestsモジュールとBeautifulSoupモジュールを使用するので、入ってない場合はサクッとインストールしてしまいましょう。

ターミナル
$ pip3 install requests
$ pip3 install beautifulsoup4

それぞれよくわからんという場合は以下サイトを見れば問題解決!のはず。

requestsモジュール

Requestsは、人が使いやすいように設計されていて、Pythonで書かれている Apache2 Licensed ベースのHTTPライブラリです。
参考: https://requests-docs-ja.readthedocs.io/en/latest/

beautifulsoup4モジュール

Beautiful Soup HTMLXMLファイルからデータを取得するPythonのライブラリです。あなたの好きなパーサー(構文解析器)を使って、パースツリー(構文木)の探索、検索、修正を行います。
参考: http://kondou.com/BS4/

タイトルの取得

サクッと行きます。

入力

scraping.py
import requests
from bs4 import BeautifulSoup

# アクセスするURL
url = "http://tomowarkar.com/"
# html取得
html = requests.get(url).text

# htmlをBeautifulSoupで扱う
soup = BeautifulSoup(html, "html.parser")
#タイトル取得
print(soup.title.string)

出力

ターミナル
$ python3 ~/scraping.py
tomowarkar | わからないことはみんなgoogle先生に聞けばいい

うまくタイトルを取得することができました。
line10, “html.parser”はhtmlをどういうふうに扱うかという解析機のようです。

参考: PythonWebスクレイピングする時の知見をまとめておく

soupだけで出力すると以下のようになり

soup
<!DOCTYPE doctype html>
<! -- 中略 -->
<head>
<meta charset="utf-8"/>
<! -- 中略 -->
<title>tomowarkar | わからないことはみんなgoogle先生に聞けばいい</title>
<! -- 中略 -->

soup.title<title>tomowarkar | わからないことはみんなgoogle先生に聞けばいい</title>

soup.title.stringsoup.titleの文字部分のtomowarkar | わからないことはみんなgoogle先生に聞けばいいを抜き出しているのがわかりました。

はじめに

特段困ることもなくブログタイトルを抜き出すことができました。

次は記事タイトルの抜き出しをして行きたいと思います。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です