はてなキーワード: スクレイピングとは
結構簡単にできた。
ここから、ページ切り替えてURLを収集する処理も追加すれば、
クローロング部分は完成。
require 'nokogiri'
url = 'http://ja.aliexpress.com/category/200003482/dresses.html?spm=2114.52010108.6.7.gT0qlW&addpid=32546825642&isOnSale=yes%22'
charset = nil
end
doc = Nokogiri::HTML.parse(html, nil, charset)
num=0
doc.css('a[class = "product "]').each do |product|
p product.attribute("href").text
p num = num+1
end
発達障害が判ってからプログラマ目指した訳じゃないし、納期が守れないとか、バグで迷惑かけたとかはない。でももし先に発達障害が判ってたらやらなかったかもしんない。
俺が受注する案件はシステム屋さんとかに本格的に頼むには小さいとか、コストが掛かりすぎるけど、かといって自分達で拵えるのは難しいというスキマ案件。webページの制作、スクレイピングシステム、サーバ等のインフラ準備、業務に使う簡易なデータベース構築、wordpressなんかのcmsのカスタマイズ、ExcelとかのVBAなんかも範疇といったらレベル判ってもらえるだろうか。手にあまりそうな案件なら事前にお断りさせてもらうし。案件安いよ。年収も低い。
2chまとめサイトを嫌う人たちが、レスの名前欄や本文などにアフィリエイターが嫌がる文言を入れているのをよく見かける。
「アド⚪⚪スクリックしてください」とか
「こうしておけばまとめにくいだろ。アフィカスざまぁ」とか思いながらやっているのかも知れないが
そんなの正規表現等で一発変換・消去できるし、そもそも手作業でなんかまとめない。
もっと言えばブラックリストワードを学習させてDBにするので新しい文言を
入れてきてもすぐに対応できる。
メニュー、スレッド、レスのデータをスクレイピングしてDBへ、ブラックリストワードの変換・消去、リンク・画像等のリプレイスやファイル化、CMSと連携して記事化するところくらいまでほぼ全自動なのでそういった妨害は全く意味なし。(唯一作業らしいののはレスを読むことくらい)
ちなみに2chでニュース系の板単体では生きてるスレッド数が常時700~1000程度、レス数は合計で100000~150000くらいになる。この量なら3分くらいで全て取得、ブラックリストワードを変換・消去した上でDB化できる。
毎日毎日、動画を探してきてはシコシコと投稿して暮らしています。
ふと思い立って1日の記事更新数を12回から24回に増やしてみたところ…
いやもうほんと大変。
う~ん、どうにか楽できないもんかね?
ということで、
XVIDEOSの動画ページのURLを貼り付けたらサムネイルが出てくるという、
エロ動画サイトの管理人には夢のような更新補助ツールを自作してみました。
このツールを使えば、
動画を再生して、良い感じのとこで一時停止して、キャプチャーソフトで保存する…。
そんな面倒くさい作業から解放されるのです!これはすごいっ!!
何がすごいのか分からない一般人には糞の役にも立たないツールです。
※当サイトについてというページの「サムネイル自動取得ツール」のリンクで公開してます
ご存知の方も多いと思いますが、
XVIDEOSでは1つの動画に対して30枚の画像がサイズ違いで4種類も用意されています。
で、上のページにある検索窓みたいなとこに
XVIDEOSの動画ページのURLを貼り付けるとあら不思議、サムネイルが30枚ずらずら出てきます。
そして使いたい画像をクリックすれば、どどん!と下に出てくるようになっています。
「サムネイル」「小サイズ」「中サイズ」「大サイズ」の4種類のURLをコピペして使うなり、
ダウンロードして使うなり、煮るなり焼くなり好きなようにしちゃってください。
ついでに動画の埋め込みコードもコピペできるようになってます。
あと使うかわかりませんが、XVIDEOSのサムネイルURLを貼り付けても使えるようにしています。
スクレイピングサイトだったら1日50記事とか100記事とか自動で更新されてるんでしょうけど、
こっちが必死に作った記事をサクッと盗まれてるのがすっごい悔しくて。
私みたいに自力で更新している管理人さん達がちょっとでも楽できたら…。
なんて思ったりして自分一人で使うだけじゃなくて公開することにしました。
このツールを使って節約できた時間をアクトレ作業に回したり、さらに更新回数を増やしたり、SEOの勉強したり。
そんなこんなでアクセス数が倍増しちゃったりしたら最高ですよね!
とりあえず、サイトはこちら
エロサイトはたくさんあるが、どれも似たようなものでいまいち使いにくい
世の中の男性には万人に理解されない性癖があると思う(自分も)
エロサイトのほとんどはカテゴリも大まかにしかまとめらていないので完全に自分が求めている動画に出会えないので自分で作ってみることに。
厳選したエロ動画を集めたいのでスクレイピングはしないで完全手動で運営することにした。
wordpressをインストールしてオリジナルデザインのテーマを作成
熟女の種類も三段階で分けてみた。(他サイトでどうみても20代が人妻という理由で熟女扱いされている時があったから)
他にもいろいろ細かく分けている。
ネットで検索しもっとマニアックなものがあったら随時追加していきたい。
かつて好きだった人の写真や好きな芸能人の写真から顔が最も似ているAV女優を検索するサービス。
既に好きなAV女優から新たなAV女優を発掘するという利用もできます。
僕はAV女優を顔重視で選ぶのですが、いろんなエロ動画サイトを見ていると、有名ではないが、自分の好みな顔のAV女優を見付けることがよくあります。
既存のエロ動画サイトはテキストで検索することは可能ですが、もしかしたら、まだ自分の知らない自分好みなAV女優がたくさん存在するかもしれないと
もし顔で検索できれば自分のAVライフももっと楽しくなるだろうと一念発起して開発しました(開発期間は半年くらい)。
レンタルサーバー | GMOクラウド Public |
---|---|
WEB | Apache |
DB | MySQL |
プログラミング言語 | PHP |
フレームワーク | Cakephp |
UI | Bootstrap |
顔認識 | Face++ |
簡単に仕組みを説明すると、
①DMMのサイトをスクレイピングしてAV女優の基本情報(名前やスリーサイズなど)を登録
②DMMのAPIを利用して、それぞれの女優の作品を取得して、パッケージ写真中の顔面積を測り、最も面積が大きいパッケージ写真を登録
③ユーザーがアップロードした画像からFace++のAPIを利用することで顔検索して、最も似ているAV女優を8人表示
今はまだ、顔認識を他のサービスに頼っているので、いずれ内製化して全て自分で開発したいと考えています。
初めて書くのでいろいろと不慣れだけど許してください。
■作ったサイト
■使った技術
cron
位だったと思う。
スクレイピングをPHPでするプログラムが半年くらい掛かった気がする。
てかそもそもはなんとなくスクレイピングに興味を持って作りこんでたら「あれ?これエロサイト作れるんじゃね?」って思ったので
エロサイトを作った流れ。
Wordpressとかで実際にサイト構築したのは1日掛かってない。
■サーバー
特に目新しいことはないです。
記事一覧が表示されて、cookieでお気に入りが追加できて、タグ一覧があって、検索できるだけ、
作る方法は頭の中にあるけど、どうせ作っても誰も押してくれないんでしょ?見たいになってる。
■スクレイピングについて
ただXVIDEOSは日本語タイトルじゃないからそれを日本語にするのが手間と言う理由で今はとめてる。
翻訳APIを使ってやってもいいんだけど、サーバーが落ちそうだから嫌だ。
そうそう、スクレイピングがめちゃくちゃ重すぎてサーバーが落ちる!
これがちょっと困る。
さすがにスクレイピングを自作ではめんどくさかったので[PHP Simple HTML DOM Parser]というスクレイピングの定番ライブラリを使っている。
これが重い最大の理由なんだけど、これなしで効率よくスクレイピングさせるのはめんどくさかった。
あとは、簡単に他の動画サイトからスクレイピングできるようなつくりにしたから、やろうと思えばニコ動でもyoutubeでもいろいろなところから取得できる。
これは結構利点だと思う。
FC2が突如つぶれても他のエロ動画サイトからスクレイピングすることが出来るから。
今は0です。
だっておとといドメインを取ったばかり何だもの、インデックスだって100ページ程度しかされてないし。
とにかく更新が楽だから(自動だから)忘れたことにPVがあがってくれると助かる。
ということで、一通り書いてみました。
■追記
いろいろとコメントを頂いてうれしいです。
大変参考になりました。
アフィリエイト広告については悩んでたのですが、早めに乗せることにしてみます。
ありがとうございました。
■追記2
諸事情で1週間ほどサイトを閉鎖しています・・・(2015/5/28現在)
ちょっと復活まで待ってください。
よろしくお願い致します。
■追記3
復活しました!
ぜひお楽しみください!!
日本で最大規模を誇る電子掲示板サイトの2ちゃんねるでは3/13から新仕様APIに対応していない2ちゃんねる専用ブラウザは利用出来なくなった。
しかし、新仕様API移行に反発する有志達(主にオープンソースプロジェクトで開発れていた2ちゃんねる専用ブラウザユーザ)によって新仕様APIの規約の穴を突かれて突破されてしまっている。
新仕様APIの規約によればWebスクレイピングやJavascriptなどが禁止されているが、例えばPerlやPython、シェルスクリプトなどのユーザスクリプトによるHTTPソースの改変は規制されていない。
そこで有志達は規約通りに新仕様APIを介して2ちゃんねるのHTMLファイルを取得しユーザスクリプトによってHTMLを従来の2ちゃんねる専用ブラウザで読み込めるdatファイルへ変換する方法を編み出した。
ユーザが個人で楽しむ範囲でHTMLソースをdatファイルに変換するにのは法的にも問題が無いと思われ、2ちゃんねる運営にもそれらを規制する法的根拠を得るのは難しいと考えられている。
他にもルータのフィルタリング機能やDNSサーバー設定の変更で広告を表示しないようにしてしまうなど、2ちゃんねるの運営は思い通りにならない2ちゃんねらー達にやきもきさせられてしまう格好だ。
最近のLINE Qというアプリを入れてみた。LINE関係なので利用者の年齢層はわかっていたけど予想以上にひどい状況だった。
LINE Qは2013年12月5日にサービスを開始した。知恵袋よりも手軽にそして、Twitterのような感覚で使えるサービス。
まずはじめに、知恵袋でいう知恵コインが一定数貯まるとLINEのスタンプを購入する時に使えるコインや現金に換金できる仕組みがある。
この仕組みによってユーザーが増えていると言っても過言ではないだろう。
ただし、換金するためには30000ポイント以上貯めなければいけないし、1ポイント=0.1円なのでそう簡単には換金できない。
一気に稼ぐために「私に聞いて」という機能がある。ただ、私に聞いてと言っても答えるのはネットでかじった情報なのであまりたくさんの質問付いているのを見たことがない。
まず、質問者は一切自分で調べる気がないし、LINE Qに同じ質問があってもそれを参考にしようともしない。
賢い回答者は自分で定型文のようなものを作ってピッタリ(ベストアンサー)をつけてもらっている。
内容の多くが、
自由の翼フォントが何故か大人気でしかも製作者のページではなくそのフォントが使えるアプリを紹介する。
自分でttfファイルをフォルダに入れる気はないし解凍する意味を知らない。
違法アップロード動画の在処を堂々と聞くだけでなく、投稿されているサイトまで指定してくる。
ググらない
スクショ付きでそこに答えが書いてあるのになぜか聞く。自分のために回答されたものでないと信じられないのだろう。
魔法石800個プレゼントのようなアプリのスクショ付きで聞いてくる。そんなうまい話はない。こういう層がいるからなくなならないんだなぁと実感。
工夫しない、なんでもアプリで出来ると思ってる。Photoshopなどの高度な画像編集ソフトですることもスマホのアプリできるはずだ信じている。
比べるものが違う
著作権とか肖像権なんて知らない。「利用にあたっての約束」という利用規約やネットのマナーを小学生がわかるくらい簡単に説明しているページがあるのに読まない。
未発表情報や未来のソシャゲのイベントの予定なんて教えられるわけがない。
このような質問をユーザー名を出さずに「匿名」設定でする上に回答がつかなければ削除してもう一度質問する。自分の思ってたこと違う回答がついても自分の考えと同じ回答が来るまで質問する。
「ヤフー知恵おくれ」と言われる知恵袋よりもひどい。LINEのトラブルや依存も問題ではあるが、調べる前に人に聞き、そして反論は受付ない。もしかしたらLINE QはTwitter以上の性能を持つバカ発見器になるのかもしれない。(もうなっているのかもしれない)
【どうでもいい追記】
これは増田がこのWebサービスの本質をわかってないのでは。これって人力のSiriでしょ?Siriには何回も同じこと聞くよね?「この前教えたやらろググレや」ってsiriに言われたらどう思う?
その通りだと思います。ただ人力のSiriとは言えど、Siriのような的確な回答がついている質問は少ないです。回答者が小中高生なので仕方ないですが、間違った情報を「何人もこう言ってるからそうなんだー」と思ってしまわないかという懸念です。
スマホが普及したことによって今まで見えなかったものが見えるようになったのかもしれません。
この層を相手にいかに商売をするかがネットで儲けるために重要なんですかね。
そういえば人力検索はてなっていうサービスがありましたね。今どうなってるかしらないですけど。
LINE Qはパソコンのブラウザでも見れるので、スクレイピングして、文章内の単語から内容を推測して定型文を自動投稿するbotを作ったらガッポガッポかもしれないけど技術もないし運営に怒られそうなのでやりません。
【最後の追記】
予想以上のブクマがついたので説明したいのですが、まず私はおっさんではなくただの高校1年生です。前々からLINE Qの質問内容も見ていましたが「さすがにこれはどうなのだろう?」と重い一石を投じたくて記事を書いたつもりが大岩を投じるような感じになってしまいました。父親の影響でDSiでインターネットが見れるようなった頃(小学5年生くらい?)からはてブを見てきたので煽りすぎるタイトルや大げさに書きすぎてしまった部分がありました。ただ言いたいのはこのLINE Qを潰したいとかそういうことではなく何かいい方に進むきっかけになってほしい気持ちでこの記事を書いたことです。
https://chrome.google.com/webstore/detail/masudalert/clkiaalhgfhgcllngddndbghoaahhnfa
とりあえず自分が投稿した日記にトラバやブクマがついたらわかるようになってます。
現時点で申請後にいくつか修正したので、バージョン1.1を申請してます。
できればバージョンを見て1.1であることを確認してからいれてください。
仕様は下記のような感じ
なんかフィードバックもらえると嬉しいです。
http://anond.hatelabo.jp/20150201190857
--
(追記):いろいろトラバやブクマありがとうございます。
火狐版は簡単そうならやろうかと調べてみました。どうやらFxはバッジないんですね・・・。
メールみたいに常にページを開いておいてもらって、タブで通知するとかはアリかもしれませんが、自分があまりFx使わないので正解がわかりません。
Github にソースもあげたので誰かがやってくれるのを期待します。
https://github.com/katsuren/masudalert
--
(追記2)
バッジがあがってきても、どの記事なのか、トラバなのかブクマなのかわかりづらかったので、
リンクに見出しとトラバ/ブクマ数を表示するようにしておきました。
--
(追記3)
**内容はxvideoとかpornhubとかにある動画のリンクサイト
**ちょこちょこスクレイピングしてるまぁ一般的にあるエロサイト
*運用を初めて3ヶ月位
**まだまだ儲からない
**運用していて思うのは、他にあるエロ動画のまとめサイトは組織的にやってるんじゃない?っておもったりする。
**あと、いいアドってどこなんだろうかな。nendでもいれてみるかな。
*懸案事項として
**これって違法じゃないよね?
***とはいえ、そもそもうpされてる動画が著作権的にNGだから限りなくグレーなのかな。
***あと1ヶ月位して、流入ノビなければやめるかな。
***つかまるのとか嫌だしね
*ひとまず、つくるのは楽しい。
===追記
*違法性について
**やっぱアウトなんですね。”アウトとわかっててやったなら”って話なら、なんとか逃げれる?笑
**”ヤクザからの連絡”これってやっぱくるのかな、相互リンクの連絡用に連絡先を載せたいけど、そのあたりがこわいからやっていません。
*うーん。やっぱり、らくして稼ぐみたいなのって良くないことが多いのかな?
skrsvideo
今回プログラミング言語はRubyを選択したため、基本的にはVPS・クラウド的なサーバーでLinuxが動作する環境を探しました。
エロサイトを運営するにあたって問題になるのがサーバー選びです。
基本的に日本のレンタルサーバーではアダルトサイトの運用を禁止しています。
普段使っているさくらのVPSが利用できず、AWSもなんだかグレーな感じ(東京リージョン以外なら・・・?)
そんなわけで探し、GMOグループのWebkeepersを使いました。
使っても良いよ〜というお墨付き、
そして価格も手頃だったためここに決定。
DB | MariaDB |
---|---|
Webサーバ | Nginx |
フレームワーク | Ruby on Rails |
MariaDBを選んだ理由はなんとなく、MySQLとの違いはほぼありません。利用するGEMもmysql2でいけます。
ちなみにJavaScriptは使わずすべてCSSで作る方針にしました。
スマホ・PC両対応のためにMedia Queryでレスポンシブにしています。
↓
↓
↓
という流れです
gem 'nokogiri'
フロントはhamlとsassで、難しいことはしていないのでcompassはいれませんでした。
あとはデバッグ用にrails_config、pry系が入っています。
skrsvideoでは動画のURLを取得するためにクローラーもどきでスケジューリングして収集しています。
コマンドはこんな感じ
Rakeタスクはnokogiriでxvideosへのリンクを集めています。
doc = Nokogiri::XML( open(URI.parse(url)).read )
urls = []
urls.push link[:href] if link[:href] =~ /xvideos.com\/video(\d+)/
end
Nokogiriのスクレイピングでaタグのリンクを取得し、URLがxvideosのものかチェックして保存って感じです。
動画を探し終えるとaタグからランダムでピックアップし次のページに進んでいきます・
動画が見つかったページはドメインをDBに記録して、しばらくしたら再びクローリングをするようにし、収集の効率化。
30分以上の表示はちょっと頑張ったところ
これはタイトルの文字列から部分一致で引っかかったものを表示しています。
AV女優の名前を表示するためにWikipediaからとってきたら、ちょっと膨大な数になってしまったため断念。
DMMのランキングに載っていた方だけをとりあえず入れています。