注意:このプログラムを利用したことにより生じるいかなる損害も補償しません。全て自己責任で行って下さい。また悪用は厳禁です。
WEBスクレイピングに関して
このプログラムはWEBスクレイピングによって辞書を作成します。
WEBスクレイピングとは、インターネット上に公開されているウェブサイトをダウンロードし、情報を抽出する行為を指します。その性質上以下の3つの問題点を内包していることに注意して下さい。また、このツールのように取得するサイトのサーバが国内に有るとは限りません。その際には適用される著作権法が異なる可能性もあります。使用前に必ずご自身でご確認下さい。
(私は法律の専門家では(当然)なく、下記の内容も聞きかじりです。必ずご自身で(弁護士のホームページなど)信頼できる情報源から確認して下さい。)
著作権問題
WEBスクレイピングは基本的にサイトの管理者に対して確認を取らず無断で情報を取得、保存します。こうして収集した情報に対して創作性を与えない場合には著作権法違反となる可能性もあります。また、得られた情報を十分に加工することなく他者に譲渡等を行う行為にも著作権法上の問題が絡んできます。十分に注意して下さい。
サーバ負荷
WEBスクレイピングでは情報を取得するために、対象サーバに機械的に多量のアクセスを行います。短時間での多量のアクセス及び断続的なアクセスはサーバに対して過大な負荷を与える可能性があります。これにより対象のサーバで行うサービスを妨害した場合、「偽計業務妨害罪」に問われる可能性があります。こちらも十分に注意して下さい。
参考:Librahack事件
サイト規約問題
WEBサイトでは閲覧時に利用規約に対して同意を求められる場合があります。このようなサイトにおいて利用規約上でWEBスクレイピングが禁止されているにも関わらず、WEBスクレイピングを行った場合利用規約違反となり民事上での問題に抵触する可能性があります。利用規約にはご注意下さい。
このプログラムに関して
このプログラムはWEBスクレイピングを行い、アズールレーン中国wikiから中国語・英語・日本語のKAN-SEN名を自動取得しcsv形式で出力するプログラムです。出力先に同名のファイルがった場合は、内容の重複を避けてリストが追加されます。新規で出力したい場合は既存のcsvファイルを消すか、オプションから出力ファイル名を変更して下さい。
Windows10上でのPython3.7で動作を確認を行っています。Python2以下とは互換性がないので注意して下さい。また、当然ですが実行するにはPythonを実行できる動作環境を整える必要があります。各自で実行環境を構築して下さい。
またバグなどを見つけた場合はこちらの記事下部のコメント欄にてお教えいただけると幸いです。
使い方
このプログラムではNumpyおよびBeautiful Soup4のライブラリを使用しています。プログラム実行前にコマンドプロンプトなどで下記のコマンドからライブラリをインストールしておいて下さい。
pip install numpy
pip install beautifulsoup4
本体はこちらからpython_web_scraping.zipをダウンロードして下さい。
実行に関しては基本的にダブルクリックで実行可能です。この場合「dictionary_ch_en_jp.csv」が出力されます。出力は逐次実行しています。したがってプログラム動作中に出力先のファイルを開いているとエラーを起こしますので注意して下さい。
コマンドプロンプトなどCLI環境から実行する場合、下記のオプションを指定することが可能です。
timeオプション
「–time」「-t」に続けて1~10の数値を入力することでWEBスクレイピング時のスリープ時間を秒単位で指定できます。デフォルト値は2秒です。
MAXの10秒を指定した場合でも初回時で15分もかからずに情報を取得できます。サーバにかける負荷を減らすためにもできるだけ大きな値を設定することをお願いします。
outputオプション
「–output」「-o」に続けてファイル名を指定できます。ファイル名が拡張子.csvで終了していない場合は自動で拡張子を付与します。デフォルト値は「dictionary_ch_en_jp.csv」です。
verboseオプション
「–verbose」「-v」に続けて1または0を入力することでURLフィルタリングの有効化(無効化)ができます。デフォルト値は無効化する0です。
URLフィルタリングは既に保存されている出力ファイル内のURLと同一のURLについてはアクセスして情報を取得することなくスキップする機能です。新KAN-SEN追加時や(アクセス失敗などで)途中で動作が停止した場合などに有効化するとより早く情報を取得できます。ただし、URL先で内容が変更されている場合にもスキップしてしまうため注意が必要です。
helpオプション
「–help」「-h」でヘルプを表示します。
何に使えるの?
ちょめちょめしたデータのファイル名、ディレクトリ名の翻訳に使えます。
中国語(アルファベット表記)には対応していないのでちょっと不便ですが…アルファベット表記をなんとか取得できないかなぁ
コメント