Riverside Learning LABO(Skill/Idea/Code)

よりよいシステムのため工学系と人間系の学習下書きメモ

開発 Pythonによるスクレイピング-02

pythonを使ってスクレイピングを試す.
開発環境はWindowsの中にDocker imageのUbuntuを構築して試す.
開発環境準備についてのメモ


# docker imagesの実行中の一覧を取得commitコマンドで保存する
$ docker ps
$ docker commit CONTAINER ID REPOSITORY/TAG
例)
$ docker commit 80a09241ae94 mlearn/jpall


#保存したdocker imageの一覧を開く
$ docker images
例)
REPOSITORY TAG IMAGE ID CREATED SIZE
mlearn jpall 80a09241ae94 11 hours ago 442MB
continuumio/miniconda3 latest 1284db959d5d 2 weeks ago 409MB
hello-world latest e38bc07ac18e 2 months ago 1.85kB


#実環境のsmapleフォルダをVMマッピングして保存したdocker imageを起動
$ docker run -i -t -v /c/Users/Fujitsu/Documents/sample:/sample mlearn:init /bin/bash
(base) root@xxxxxxxxxxxxxx:/# cd sample


#pip3を使ったbeautifulsoup4ライブラリインストール
#1.python がインストール済みであること
Windows環境手順1.ダウンロード先:https://bootstrap.pypa.io/get-pip.py よりget-pip.pyを任意のディレクトリに保存する
#2.保存したディレクトリで下記コマンドを実行する
python3 get-pip.py
#3 pipコマンドでURL解析用のライブラリをインストールする
pip3 install beautifulsoup4


#実行中のdocker imageが表示される
$ docker ps
例)
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f7cc38d403a8 mlearn:jpall "/usr/bin/tini -- /b…" 40 seconds ago Up 39 seconds pensive_murdock

#表示されたdocker imageにはattach可能、表示されない場合はstartから必要
$ docker attach f7cc38d403a8
or
$ docker start f7cc38d403a8
$ docker attach f7cc38d403a8

#後は ?????????.pyにpythonスクリプトを配置すれば、スクレイピングを試せる
(base) root@xxxxxxxxxxxxxx:/# cd sample
(base) root@2f5ccabba444:/sample# python3 ?????????.py