「XML-RPC」を含む日記 RSS

はてなキーワード: XML-RPCとは

2016-02-16

アダルト関連ニュースサイトを構築した話

風俗店とかキャバクラに遊びに行っていると「風俗店摘発」とか「売春防止法違反」というニュースには敏感になる。

以前から、こういう風俗とか水商売関連のニュース自動で集めたいなー と思っていた。

しかしながら、具体的な手法が判らず、ちまちまと グーグルニュース検索でそれっぽいキーワードしこしこ入力していた日。

それでも自分で少しずつ手法を探してみて、プログラムを組んで… それっぽいサイトが完成したので、備忘録的に記録しておく。

1) GoogleNEWSのRSSデータを取得する。

https://news.google.com/

ここで関連キーワード風俗」とか「デリヘル」を入力して、検索すると関連ニュースがヒットする。

これをRSS形式で出力する。

参考サイト

http://so-zou.jp/web-app/tech/web-api/google/search/news/



2) RSSの内容を解析する。

RSS形式で取得したデータを、RSSパーサーを使って解析する。今回は「MagpieRSS」を使用した。

参考サイト

http://singoro.net/note/magpierss/



3) 記事概要投稿する。

今回はワードプレスを用いて自動的投稿するようにした。

ライブドアブログでも試してみたが、こちらもうまく自動投稿ができた。

※内容が内容だけにアダルトOKのライブドアブログを選定した。アメブロでは試してないが、アメブロ自動投稿は難しいらしい。



4) 一定時間毎に自動投稿させる。

今回はCRONは使わずまたまた Google先生の力を借りる事にした。

Google Apps Scriptトリガー機能を使って、CRONと同じような事を実現させた。

一番大変だったところが 3)の部分。

内容はさらりと書いているが、実際はちょっと工夫をしている(はず)

まず、記事URLを取得→ このURL過去投稿されているURLかチェック。

投稿していないURLなら、記事元へアクセス。本文の内容を取得する。

(この記事本文の取得精度が現段階での課題の一つ)

参考にしたのがこちらのクラス

http://neoinspire.net/archives/60

本人が言ってる通り、精度は7割程度の感じはする。

さらに、テキストだけだと味気ないので、googlenewsの検索結果で画像

載っていれば、画像投稿するようにした。

また、同じ内容のニュースでも配信元が違うと重複して記事投稿されてしまうが、

これは前述の通り、本文の取得クラスの精度が7割程度なので、重複させる事により

精度がUPするのではないか?と考えて特に何もしていない。

配信元が違うと同じニュースでも微妙ニュアンスが違う場合もあるので、それはそれで比較する際に

役立つかな?と思っている。

ワードプレスプラグインで購読機能を付けているので、何かニュース投稿される度に

自分メールアドレスに通知されるので、たまに役立つ時がある。

しかし、前述の通り、同じ内容で違う配信先の記事が連投されるので、あーまたこれか。。。 と思う事の方が多い。


まとめとしては、今回使ったものは以下の通り

Google NEWS検索

・MagpieRSS

ブログから本文を取得するクラス

WordPressと各種プラグイン

XML-RPCXML-RPCを使ってWordPress投稿する)

Google Apps Script


MagpieRSSインストールとか大変だったはずだけどもう忘れてしまった。

一度インストールすればこれ以上快適な環境はないので、一度苦労してでもインストールすると良いと思う。


作成したサイトがこちら

http://www.fuzokunews.net/

2012-10-26

iphoneで見れて、毎日いっぱい更新されるのエロ動画サイトを作った。【サイト構築詳細メモ

はじめに

なんちゃってプログラマーやってます

「みんなの役に立つサイトを作って、一発大きく儲けたい!」と、

思い続けて、早10年(泣)。。

なかなか画期的アイデアって出てきません。。

とりあえず、エロサイトを作るのってすごく勉強なる?楽しい?らしいので、

誰にも利用されない「へぼツール」作るより必ず誰かの為になるなぁと考え、

エロサイト作りました。(保守不要で完全自動化)

iphoneで見れて、毎日10記事絶対更新

できるだけ、誰でもわかるように、詳細を書いていますので、

これを見るだけで、ノンプログラマーの方でも、

同様のサイトは簡単に立ち上げることができちゃうと思います

つくったサイト

http://iphone-xvideos.info/

サイト名:iphone-xvideos エロ動画H (仮)

デザインデフォルトのまま(そのうち修正しまーす)

作成期間:40時間ぐらい…

iphoneでも見やすくしています

※記事は毎日10更新予定です。つまり毎日このサイトだけ見に行けば困らないってことです。

きっかサイト

http://anond.hatelabo.jp/20101219185436

http://anond.hatelabo.jp/20101203150748

http://d.hatena.ne.jp/inouetakuya/20120331/1333192327

http://anond.hatelabo.jp/20120318122617

http://anond.hatelabo.jp/20120914214121

http://anond.hatelabo.jp/20110804021353

http://anond.hatelabo.jp/20120926165533

レンサバ

saasesのVPS OsukiniサーバーLT メモリ512MB 月450円! アダルトOK

CentOS 64bitを選択。(メモリを食うだけなので、特に用がなければ、32bitにしよう!)

↑一番安いプランしか契約できなかった…

※どこにも書いてないけど、2週間以内なら取り消しできます

契約時、webmin&mysqlの選択は必須にしておいたほうがいいです。私は間違えて、webmin無しにしてしまった。。

から、再インストール(初期化)すれば、再選択することができるようです。。

申し込み後、たったの30分で接続できるようになりました。

ドメイン

iphone-xvideos.info

バリュードメインで取得。280円!安い。

DNSVPSIPに変更。

不要サービスを止める

/sbin/chkconfig auditd off

/sbin/chkconfig autofs off

/sbin/chkconfig avahi-daemon off

/sbin/chkconfig bluetooth off

/sbin/chkconfig cups off

/sbin/chkconfig firstboot off

/sbin/chkconfig gpm off

/sbin/chkconfig haldaemon off

/sbin/chkconfig hidd off

/sbin/chkconfig isdn off

/sbin/chkconfig kudzu off

/sbin/chkconfig lvm2-monitor off

/sbin/chkconfig mcstrans off

/sbin/chkconfig mdmonitor off

/sbin/chkconfig messagebus off

/sbin/chkconfig netfs off

/sbin/chkconfig nfslock off

/sbin/chkconfig pcscd off

/sbin/chkconfig portmap off

/sbin/chkconfig rawdevices off

/sbin/chkconfig restorecond off

/sbin/chkconfig rpcgssd off

/sbin/chkconfig rpcidmapd off

/sbin/chkconfig smartd off

/sbin/chkconfig xfs off

※190MBが150MBぐらいになります

SSHサーバ設定

$ su root

FTP接続できるようにする。

http://support.saases.jp/index.php?action=artikel&cat=63&id=312&artlang=ja

バーチャルホストの設定

# vi /etc/httpd/conf/httpd.conf

NameVirtualHost *:80 ←これを探して、コメントアウトを削除。その下に以下を設定。

<VirtualHost *:80>

DocumentRoot "/home/ユーザーID/iphone-xvideos.info"

ServerName iphone-xvideos.info

<Directory "/home/ユーザーID/iphone-xvideos.info">

order deny,allow

allow from All

Options FollowSymLinks

AllowOverride All

</Directory>

</VirtualHost>

apache再起動

# /etc/rc.d/init.d/httpd restart

httpd: Could not reliably determine the server's fully qualified domain name, using...」

再起動時に上記のエラーがでた。

その時はこちらで解決⇒http://d.hatena.ne.jp/uriyuri/20100511/1273575287

で、このままだとIPアドレスでもアクセスできてしまうので、以下もやっておく。

http://fedorasrv.com/memo/log/29.shtml

mkdir /home/ユーザーID/iphone-xvideos.info

chown ユーザーID /home/ユーザーID/iphone-xvideos.info

/home/ユーザーID/以下はpermission errorとなりアクセスできないので、権限を変える。←いいのかな?

chmod 755 /home/ユーザーID/

CentOSAPCインストール

http://blog.verygoodtown.com/2010/02/centos-apc-install-how-to/

# pecl install apc

↑これを実行した際に、「error: expected specifier-qualifier-list before 'pcre'」なんちゃらっていうエラーがでたので、以下を実行。

yum install pcre-devel

再度実行して、無事インストールできた。

# pecl install apc

# vi /etc/php.ini

extension=apc.so ←これを一番最後に追記

APCの設定】

vi /etc/php.d/apc.ini

extension=apc.so

[APC]

apc.enabled = 1

apc.shm_size = 64 ←適当。。

apc.gc_ttl = 3600 ←適当。。

apc.ttl = 3600 ←適当。。

/etc/init.d/httpd restart

  • viの基礎講座】-----

/ ←検索

n ←次の検索文字へ

i ←編集モード開始

Esc ←編集モード終了

]] ←最後尾に移動

:q! ←保存せずに終了

shift押しながらzz ←保存

--------------------------

apache再起動

# /etc/rc.d/init.d/httpd restart

phpinfoの画面でapcの項目があるか確認

vi /home/ユーザーID/iphone-xvideos.info/index.php

phpinfo();

?>

apacheの負荷対策

http://tanaka.sakura.ad.jp/2011/05/centos-linux-apache-php-perl-mysql-lamp.html

↑これを参考に適当に変更してみた

MaxClients 256 ←これを40に

MaxRequestsPerChild 4000 ←これを1000

このサーバは、512MBしかいかもっと小さくしたほうがいいのかも。。

# ab -c 10 -n 100 http://iphone-xvideos.info/

【変更前】

Requests per second: 40.01 [#/sec] (mean)

【変更後】

Requests per second: 137.57 [#/sec] (mean) ←1発目

Requests per second: 552.79 [#/sec] (mean) ←2発目以降(キャッシュ後)

wordpressがらみ

http://ja.wordpress.org/

最新版をやってみるとエラーが発生。

サーバーPHP バージョンは 5.1.6 ですが WordPress 3.4.2 は 5.2.4 以上のみでご利用になれます。」

phpmysqlバージョンアップはやっかいそうなので、

3.1系を選択する。。

http://ja.wordpress.org/releases/

※↑結局、後日phpmysqlバージョンアップをやりました。

ソースをUP

DBを作る

http://自分サーバIP/phpMyAdmin/

ホームの「新規データベース作成する」と書いてある所の下にある、

DB名⇒wp、照合順序⇒utf8_unicode_ci

wp-config.php

を修正する。

プラグイン

WP-DBManager

WP Super Cache

WP to Twitter ←まだ設定してない

WPtouch ←/wp-content/plugins/wptouch/themes/core/core-header.php をちょこっと変更すればiphoneでxvideo再生ができる。

○人気記事一覧

http://the-fool.me/wordpress/plugins/wordpress-popular-posts.html

テーマデフォルトのまま。。

XML-RPC自動投稿

設定⇒投稿設定⇒Atom 投稿プロトコルXML-RPCにチェック

もう1個負荷確認

https://loadimpact.com/

キャッシュが効いていて問題ないことを確認。

クローラーを作る

wikipediaから取ってきた女優名をカテゴリテーブル(wp_terms)に突っ込む。(5,260人でした。)

↑これは月に2回更新。cronで動かすことにした。

googleブログ検索(24時間以内のもの)に女優名をつっこんで、

出てきたサイト情報を取得すればOK。

(とりあえず、引退した人の動画は少ないだろうと考え、現役2,762人分のxvideosを取得してみた。処理時間8時間、192件取得できた。)

双方とも、スクレイピングを使えば簡単に取得できます

http://www.kaasan.info/archives/1457

念のため、巡回するごとに、sleep10秒してます

動画URLを取得したら、削除されていないか調べて、OKだったら投稿

PHPからRPC投稿するやり方は、

http://www.multiburst.net/sometime-php/2009/04/newpost-with-wordpress-xmlrpc-api/

↑ここらへんを参考に

http://pear.php.net/package/PEAR/download

pear自体はここにあるので、「XMLフォルダのみをUP。

だいたい、30分で10記事取得できることがわかったので、

毎日深夜に10記事取得するようにする。

【cron設定】

$ crontab -e

00 04 * * * /bin/sh /home/ユーザーID/iphone-xvideos.info/insert_X.sh >/dev/null 2>&1

00 03 1,15 * * /bin/sh /home/ユーザーID/iphone-xvideos.info/insert_XXX.sh >/dev/null 2>&1

http://miya0.dyndns.org/pc/settei/crontab.html

----------------------------------------------------

1日何件の更新とするか?10件ぐらい?

↑旬な情報が取れないが、とりあえず。。

前日のterm_idを記録して、

次の日はそれ以降のデータを取得する。

次のterm_id存在しなかったら、1からやる。

----------------------------------------------------

今後の追加機能予定

jqueryお気に入り作成cookieを使う。(PCのみ?)

☆好きな女優を登録しておけば、記事の更新情報メールで通知。

デザイン修正。。

感想

すぐできるかと思いましたが、結構時間かかりました。

実際、なんとなく勉強になった気もするし、楽しく作業できました。

皆さんもぜひ。毎日が少し充実しますよ。

まったくアクセス無くても、自分用にとても良いものができたと思っているので満足です。

もし繋がりにくくなったりしたら、

別のレンサバに変更しますー。

サイトオープン後のあれこれは、

随時こちらに追記していきますね。

最後まで読んで頂いてありがとうございます

2012/11/8 追記

サイトオープンから10日ほど過ぎたので状況をお知らせします。

はてぶは全くだめだった。。

ページビュー1000/日

(日々増加しているが、検索エンジンからくるようになってもまだこんだけ。。)

メモリは問題なし。512MB中ピークでも300MBぐらいしか使ってない。

30分に一回メモリ監視を仕込んだ。

# vi /usr/local/bin/memrep.sh

date >>$1

free >>$1

echo >>$1

# chmod 744 /usr/local/bin/memrep.sh

本日テスト的にDMM広告を張ってみました。。←すぐ消した。。

また、後日お知らせしますね。

2012/12/3 追記

1か月経ったので。。

topスライダー付けてみました。

ページビュー2500/日

自動更新なのに、きっちりアクセスは日々増えて続けていますエロは強い。

アクセス少ないので、負荷は全く問題なし。

Swapも全く使ってない。

忍者AdMax貼ってみたけど、1日20円とかで、まったく駄目。。

レンサバ代にはなりそうだけど。。なんか良い広告いかな。。

2007-06-26

[]時給

PHP+XML-RPCブログに投稿する仕事をすることになった。

前に趣味でやったことがあるから、たぶんすぐ終わる。

でも、時給制だから給料があまりもらえない。コツをつかむのは大変だったのに・・・。

理不尽だ。

 
ログイン ユーザー登録
ようこそ ゲスト さん