Web ページのダウンロード,単語に切り分け,形態素解析(Python, Mecab, BeautifulSoap を使用)

前準備

Python のインストール(Windows上)

注:既にPython(バージョン3.12を推奨)がインストール済みの場合は,この手順は不要である.

winget(Windowsパッケージマネージャー)を使用してインストールを行う

  1. Windowsで,コマンドプロンプト管理者権限で起動する(例:Windowsキーを押し,「cmd」と入力し,「管理者として実行」を選択)
  2. winget(Windowsパッケージマネージャー)が利用可能か確認する:
    winget --version
    
  3. Pythonのインストール(下のコマンドにより Python 3.12 がインストールされる).
    winget install --scope machine Python.Launcher
    winget install --scope machine Python.Python.3.12
    
  4. 【関連する外部サイト】

    【サイト内の関連ページ】

    MeCab のインストール

    辞書の文字コードは UTF-8 を選ぶ.

    python の mecab, bs4 のインストール

    Windows では,コマンドプロンプトを管理者として実行する.

    次のコマンドを実行.

    python -m pip install mecab bs4
    

    日本語文書からの単語の切り出し,品詞の判定

    1. Python プログラムの実行

      Python プログラムの実行

      Python 開発環境(Jupyter Qt Console, Jupyter ノートブック (Jupyter Notebook), Jupyter Lab, Nteract, Spyder, PyCharm, PyScripterなど)も便利である.

      Python のまとめ: 別ページ »にまとめ

      日本語の文章から,単語を切り出し,品詞を自動判定する Python プログラム

      import sys
      import MeCab
      m = MeCab.Tagger("-Ochasen")
      print(m.parse ("日本国民は、正当に選挙された国会における代表者を通じて行動し"))
      

    Web ページのダウンロードと単語の切り出し

    1. Web ページのダウンロード

      URL を指定して,Web ページをダウンロード.そして,確認表示を行う Python プログラム.

      import urllib.request
      r =  urllib.request.urlopen('https://www.kkaneko.jp')
      html = r.read()
      print(html.decode())
      
    2. HTML タグの除去

      いまダウンロードした Web ページについて,BeautifulSoap を用いて,HTML タグを取り除く Python プログラム.テキストと JavaScript が残る.

      from bs4 import BeautifulSoup
      soup = BeautifulSoup(html,'html5lib')
      t = soup.get_text()
      print(t)
      
    3. プログラムの実行

      いまダウンロードした日本語の Web ページについて,MeCab を用いて,単語を切り出す Python プログラム

      import sys
      import MeCab
      m = MeCab.Tagger("-Ochasen")
      a = m.parse(t)
      words = [i.split()[0] for i in a.splitlines()]
      print(words)