Operation KiWi

一生使える言語はPythonだと信じてる

2ch.scの特定板を巡回して画像を集めてくるプログラムを書いたず

f:id:sakage24:20170528204058j:plain

久しぶりにプログラミングに熱中してしまいました。突貫で作ったので、突然落ちたりするんですが、結構便利なので公開しようかなと思います。基本的に個人用なので、自分の欲望仕様になっています。スクレイピングってこうやるんだーって感じでした。

スポンサーリンク


お知らせ

www.kiwi-bird.xyz

2ちゃんねる☆すくれいぱーの説明書を作りました。

概要

2ch.scの特定の板を自動で巡回します。設定したキーワードに基づいてスレを絞り込み、画像があればアクセスして取得します。現在の仕様だと普通にグロ踏むので注意です。*1

簡単な仕様書

  • 声優個人
  • ニュー速VIP
  1. 上記の板へ30分に1回アクセスをします。事前に設定したキーワードに従ってスレ一覧から読み込み候補スレを抽出。
  2. 候補からスレを順番に読み込んでいきます。レスに画像URLがあればアクセスして保存します。
  3. スレを一通り読み込んだら、30秒の待機時間を置いて次の候補スレを読み込みます。候補スレを全部読み込んだら、次の板を読み込みます。
  4. タスクが全て終わったら、30分待機。
  5. 上記を繰り返します。

ダウンロード

github.com

こちらで公開しています。なんか要望とかあったらどうぞ。出来るかは分かりませんが...

インストール方法(Windows)

1. Python 3.6.1をインストールしてください。32bit版じゃないと動かないと思います。
2. 動作のためのライブラリをインストールします。ルートディレクトリに必要なライブラリを記したrequirements.txtがありますので、それを読み込むと一括でインストールができます。*2
3. Phantom JSをインストールします。ダウンロード後、解凍して出来たフォルダをvip_scraper/以下に置いてください。
4. sc.pyの画像保存先を編集します。

# 画像を保存する場所
storage = os.path.normpath('C:\PATH\TO\DIR')
# PhantomJSを保存した場所
browser = os.path.normpath('phantomjs-2.1.1-windows/bin/phantomjs.exe')

最後に、run.batを実行してください。

これで起動できるはず...手順多すぎですね。そのうちwindowsの実行ファイルを作ろうかと思います。ぶっちゃけエロ画像収集目的で作ったので勘弁して下さいw

実際に巡回させてしばらく放置してみたんですが、思ったより集まらないというか、釣り画像とグロ、たまに神スレがあったりするんですが、結構既出のやつが多かったりして残念でしたね。画像を解析して、既に持っている画像は保存しないとか、そういう機能も入れてみたいです。

最初はOctoParseでやろうと思っていた

www.octoparse.com

こちらはGUIで非常に高機能なんですけど、正直わけわからんのです。いろいろ機能がありすぎてもダメなんだなぁと思いました。
結局、1時間くらい格闘してあっさり諦めましたwやっぱり自家製はいいですね。テンション上がってもう3日間くらい熱中しています。もう初日の面影がなくなっててウケますw

おまけ

requirements.txtとlxmlとhttplib2の超簡単な使い方


2ch_scraper

スクレイピングは慣れるととっても楽しいです。ネットって情報に溢れていますね!

PythonによるWebスクレイピング

PythonによるWebスクレイピング

退屈なことはPythonにやらせよう ―ノンプログラマーにもできる自動化処理プログラミング

退屈なことはPythonにやらせよう ―ノンプログラマーにもできる自動化処理プログラミング

スポンサーリンク

スポンサーリンク

*1:2ch.netへのスクレイピングは禁止されているらしいのでやめましょう。

*2:pip install -r requirements.txt