Web、サーバ、ソフトウェア、バグ・脆弱性 などの情報を何人かで集まって書いていく IT/Web情報系ブログ

ScrapeApeHack

投稿日:   最終更新日:2017/01/15  投稿者:nk.

神サービスとして知る人ぞ知るScrapeApeを100倍使い込む方法をDENJUします。

神サービスScrapeApeとは

Ruby on Railsが無料で簡単に使えるherokuという、おそらくその95%がクソサービスで埋め尽くされているであろうプラットフォームにあってもなおベテルギウスのごとく輝く神サービスがscRapeApeです。
このサービスがいかに素晴らしいかは筆舌に尽くしがたいのでxx2zz氏によるレビュー記事にその任は譲り、この記事ではそのscrapeapeを100倍使い込む方法を紹介します。

スポンサーリンク

80番ポート以外のHTTPもアクセス可能

scrApeApeはそのままでは、以下のように80番ポート以外のHTTPサービスに接続できません。
ポート番号を指定するとスクレイピングできない。

8080番ポートを使うような怪しげなサイトにユーザを接続させないための素晴らしい配慮だと思いますが、やはりどうしても3128番ポートを使うような怪しげなサイトをスクレイピングしたいときもあるかと思います。
そのような場合、URLリダイレクトサービスを併用することで80番ポート以外を使うサーバのサイトにも接続できます。やったねたえちゃん!

テストページにアクセスした結果wwwwww
上記のフォームに入力したサイトに直接アクセスするとこのような画面が出ます(HTTPリクエストがechoされる)。

bit.lyのようなURLリダイレクトサービスを使うことでScrapeApeでスクレイピングできます。
直接アクセスできないならリダイレクトさせればいいじゃない。

SSL証明書が怪しげなサイトに代理アクセス

世の中にはSSL証明書にオレオレ証明書を使うサイトもあり、以下のように一部のブラウザでは接続がブロックされることもあります。
SSL証明書がオレオレ証明書で接続できないサイト

こんなメッセージが出てきて怖さのあまりにアクセスを断念するのは昨日までのアナタです。今日からはそんな意気地なしのアナタとオサラバ。そう、scrapEApeでね。
SSL証明書なんて関係ない!

別ページで開くようにしてみよう

さてここまで毎回Scrapeapeのトップページにアクセスしていましたがそれも面倒ですよね。
いちいちトップページに戻らなくてもよいように、登録する際に別窓が開くようにしてみましょう。
scrapeapEを開いて適当なところを右クリックし、[検証]を選択します。
そしてformタグを探し出し、右クリックして[Edit as HTML]を選択します。

editscrape!
そしてtarget=”_blank”を追加すれば新しい窓で開くようになります。

editedscrape
CSRF対策でtokenが埋め込まれていますが、再利用ができないようにはなっていないので無視して全く問題ありません。

検索からすべての登録を表示しよう

scRapEapeは登録済みの一覧をそのままでは確認することはできません。しかし検索機能がついているのでDBのワイルドカードを指定することで全ての登録を確認することができます。
allregistered

登録は早い者勝ち!

さて上記のハックを用いてすべての検索結果を見たらわかるかと思いますが、早めに登録されたもの(例えば産経ニュース)では毎日データが取得されているのが確認できる一方で最近に登録されたもの(例えばエキサイトニュース)では毎日取得されているわけではないことが確認できます。
notallday
途中で取得できないエラーが起きるとそれ以降をスキップする、サーバに優しいエコ仕様であることがわかります。
つまり、なるべく早く登録しておかないと後になるほど取得されにくくなってしまうということです。
というわけで、君も今すぐ登録登録ゥ!!

付記

Ruby on Railsをruby on railsと表記したり、エックスサーバー(Xserver)をXservreと表記したりと独創性豊かな、scrapeapE作者であるDENJULOさんに敬意を示して本記事ではScrapeApeを様々に表記しています。

- 検証

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事