トップページデータベース研究doc2vecWeb ページのダウンロード,単語に切り分け,形態素解析(Python, Mecab, BeautifulSoap を使用)

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

前準備

Python のインストール,pip と setuptools の更新,Python 開発環境(JupyterLab, spyder, nteract)のインストール

Windows の場合

  1. Python のインストール

    Python の URL: http://www.python.org/

    インストール手順の詳細は: 別ページで説明している.

  2. pip と setuptools の更新,Python 開発環境(JupyterLab, spyder, nteract)のインストール(Windows 上)

    コマンドプロンプトを管理者として実行し,次のコマンドを実行.

    Windows での pip の実行では,コマンドプロンプトを管理者として実行することにする。

    [image]

    python -m pip install -U pip setuptools
    python -m pip install -U jupyterlab jupyter jupyter-console jupytext nteract_on_jupyter spyder
    

Ubuntu の場合

システム Python を使用(インストール操作は不要)

  1. pip と setuptools の更新,Python 開発環境(JupyterLab, spyder, nteract)のインストール(Ubuntu 上)

    端末で,次のコマンドを実行.

    sudo apt -y install python3-dev python3-pip python3-setuptools python3-venv
    sudo pip3 uninstall ptyprocess sniffio terminado tornado jupyterlab jupyter jupyter-console jupytext nteract_on_jupyter spyder
    sudo apt -y install jupyter jupyter-qtconsole spyder3
    sudo apt -y install python3-ptyprocess python3-sniffio python3-terminado python3-tornado 
    sudo pip3 install -U jupyterlab nteract_on_jupyter
    

MeCab のインストール

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

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

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

  1. Jupyter Qt Console を起動

    jupyter qtconsole
    

    Python プログラムを動かして,結果をビジュアルに見たい.

    ここでは,Jupyter Qt Console を使っている. 他の開発環境(spyderPyCharmPyScripter など)も便利である.

    ここから先は,Jupyter Qt Console の画面で説明する.

  2. プログラムの実行

    日本語の文章から,単語を切り出し,品詞を自動判定する 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)