さっそくセクシー動画の自動まとめサイトを作っていきましょう、前回までの手順でレンタルサーバーを借りてワードプレスのインストールはすでに完了したという前提でお話を進めていきますんで、環境の準備がまだできていない方はこちらの記事を読んでみて下さい。
今回の目的
前回の記事で作った自動アダルト動画まとめサイトの仕様書で作る範囲を確認します。
まずはwordpressの記事を作るために必要なアダルト動画のデータを取得します、DMMAPIの仕様は複雑ではないものの確認するパラメータが地味の多くて、普段APIを使わない方にはピンとこない部分もあるかもしれません。今回はAPIアレルギーが発症しないようになるべく丁寧に解説してみたいと思います。
DMMAPIへの登録
すいません、僕はすでにDMMのアフィリエイトアカウントを持ってまして、新規登録時の手順をスクショとかで詳しく解説する事が出来ない状況です。
簡単にまとめると、
- DMMアカウントを作る
- 宣伝用サイト(SNSでもOK)でDMMアフィリエイトの審査を受ける
の2手だけなんですが、宣伝用のサイトをすでに持っているかどうかで苦労は大きく変わると思います。審査を突破するとDMMwebサービス内のDMMAPIが使えるようになります。
そのうち新しくサイトを作ってDMMのアフィリエイトアカウントの申請手順とかの記事も書こうと思いますが、ここでそれをやると結構な時間がかかるので一旦飛ばします。
FANZA動画データの収集
FANZAのデータはAPIのエンドポイントにアクセスするだけで簡単に取得できますが、初体験の方もいるかもしれませんので画像付きでなるべく丁寧に解説します。
DMMAPIの利用規約やクレジット表示の義務もあるので、時間がある時にでも公式の資料は一通り目を通しておいた方が理解が深まると思います。
DMMAPIを叩いてみよう
まずはDMMAPIの仕様を確認してエンドポイントにアクセスしてデータがちゃんと取れるか確認してみます、今回は「商品検索API」を利用して商品の詳細なデータを取得してみます。
商品検索APIのエンドポイントはこちら。
https://api.dmm.com/affiliate/v3/ItemList?api_id=[APIID]&affiliate_id=[アフィリエイトID]&site=FANZA&service=digital&floor=videoa&hits=10&sort=date&keyword=%e4%b8%8a%e5%8e%9f%e4%ba%9c%e8%a1%a3&output=json
このエンドポイントにアクセスするには「APIID」と「アフィリエイトID」が必要で、それぞれのIDは下記の通り確認できます。
【APIID】
【アフィリエイトID】
アフィリエイトIDに関してはAPI経由用のIDが別に用意されているのでご注意です。
両方確認できたのでエンドポイントのURLに各IDを埋め込みます、準備できたらブラウザのアドレスバーにコピペしてenterキーを押して接続してみます。
ちゃんとデータが取れました。一見バグっているようにも見えますがちゃんと条件に合致した商品情報が返ってきています。ちなみにIDが間違ってたりすると下記の様にデータが表示されません。
APIが機能する事が分かったので、リクエストURLのパラメータを確認して欲しい動画データを抽出してみます。
DMMAPIのパラメータ設定
リクエストパラメータの仕様は商品検索APIの公式ページに記載されていますが、そんなに複雑なもんでもないのでじっくり見てみます。
ほとんどがデータの絞り込みに関するパラメータみたいですね、検索開始位置というパラメータは検索結果に合致したレコードの何番目から取得するのかを指定する値ですがちっと分かりずらいと思うので補足します。
1度に取得できるデータ件数は最大で100件なので、それ以上のデータを取得する場合は複数回APIを実行する必要があります。その時、前回取得したレコードの続きから取得しないと、すでに取得済みのデータが何度も表示されちゃうのでレコードの何番目から取得するのか指定する必要があります。
■ 300件のギャル動画を全て取得したい
————————
001 ギャル動画 300円 ①
002 ギャル動画 300円 ①
003 ギャル動画 300円 ①
004…. ①
100 ギャル動画 300円 ①
101 ギャル動画 300円 ②
102 ギャル動画 300円 ②
103…. ②
200 ギャル動画 300円 ②
201 ギャル動画 300円 ③
202 ギャル動画 300円 ③
203…. ③
300 ギャル動画 300円 ③
———————–
こんな感じで、offsetパラメータに取得済みのレコード+1を指定する事で前回の続きから取得処理を行う事が出来るという仕組みになってます。
動画の収集条件を設定する
今回はジャンルを指定してどっさりデータを取得する予定なので、サイト/サービス/フロアの3つでFANZAの動画に絞った後、genreパラメータにgenre_idを指定する事でさらに絞り込みます。収集するデータは僕の趣味でギャル系の動画が欲しいです!
ジャンルを指定して動画データを取得するにはフロアAPIを叩いて各codeを確認する必要がありますが、いちいち確認するのも面倒だと思うのでサイト/サービス/フロアの対応表を作っておきました(20220713時点)コピペして使って下さい、後で自動更新されるスクリプトを書いて常に最新の状態を保てるようにする予定です。
【FANZAのフロア情報】
サイト | サービス | フロア | 内容 |
FANZA | digital | videoa | ビデオ |
videoc | 素人 | ||
nikkatsu | 成人映画 | ||
anime | アニメ動画 | ||
monthly | playgirl | プレイガール ch. | |
avstation | AVステーション | ||
dream | ドリームチャンネル | ||
s1 | エスワン ナンバーワンスタイル ch | ||
moodyz | MOODYZチャンネル | ||
sod | ソフト・オン・デマンド ch | ||
kmp | KMP チャンネル | ||
momotaroubb | 桃太郎BB | ||
alice | アリスJAPAN ch | ||
jukujo | 熟女チャンネル | ||
mania | マニア ch | ||
paradisetv | パラダイステレビ ch | ||
shirouto | 素人ガールズコレクション | ||
nikkatsu | ピンク映画 ch | ||
animech | アダルトアニメチャンネル | ||
mousouzoku | 妄想族ch | ||
prime | 見放題ch ライト | ||
premium | 見放題ch デラックス | ||
hhh | HHHch | ||
vr | VRch | ||
rental | rental_dvd | 月額レンタル | |
ppr_dvd | 単品レンタル | ||
mono | dvd | DVD | |
goods | 大人のおもちゃ | ||
anime | アニメ | ||
pcgame | PCゲーム | ||
book | ブック | ||
doujin | 同人 | ||
pcgame | digital_pcgame | アダルトPCゲーム | |
pcgame_music | 音楽 | ||
doujin | digital_doujin | 同人 | |
ebook | comic | コミック | |
novel | 美少女ノベル・官能小説 | ||
photo | アダルト写真集・雑誌 |
【一般のフロア情報】
サイト | サービス | フロア | 内容 |
DMM.com | lod | akb48 | AKB48 |
ske48 | SKE48 | ||
nmb48 | NMB48 | ||
hkt48 | HKT48 | ||
ngt48 | NGT48 | ||
rod | REVIVAL!! ON DEMAND | ||
digital | videomarket | 一般動画 | |
idol | グラビア | ||
cinema | 舞台 | ||
video | VR | ||
monthly | prime | 見放題ch ライト | |
ebook | comic | コミック | |
photo | 写真集 | ||
novel | 文芸・ラノベ | ||
otherbooks | ビジネス・実用 | ||
pcsoft | digital_pcgame | PCゲーム | |
digital_pcsoft | ソフトウェア | ||
mono | dvd | DVD・Blu-ray | |
cd | CD | ||
book | 本・コミック | ||
game | ゲーム | ||
hobby | ホビー | ||
rental | rental_dvd | 月額DVDレンタル | |
rental_cd | 月額CDレンタル | ||
ppr_dvd | 単品DVDレンタル | ||
ppr_cd | 単品CDレンタル | ||
rental_comic | コミック | ||
nandemo | fashion_ladies | レディースファッションレンタル | |
fashion_mens | メンズファッションレンタル | ||
rental_iroiro | いろいろ |
たとえば大人のおもちゃのデータが欲しい場合は次のようにリクエストURLを作ります。
一般のラノベ作品データが欲しい場合はこんな感じ。
さらに細かくジャンルを指定したい場合はリクエストURLに絞りこみ項目(&article=actress or author or genre or series or maker)と対応するIDを指定(&article_id=各ID)する事でできます。
各絞り込み項目に対する要素IDはそれぞれAPIが用意されているのでそこから調べられます。
それぞれのAPIを全部検証していると長くなるので割愛、例えばFANZA内のギャル動画のジャンルIDは1034なので、ギャル動画のデータだけ欲しい場合はこんな感じ。
ちなみに絞り込みのIDをAPI叩いて調べるのが面倒な方は、FANZAサイトのmenuに絞り込みページがたくさんあるんでそこのURLから確認する事もできます。
同様の手順で女優・メーカー・シリーズとかのIDも確認できますね。
まとめ
DMMAPIの仕様と使い方を一通り説明してみましたがどうでしょうか、使えるようになりましたか?特徴としては商品情報が膨大にあるため任意のデータにソートするためにいくつもパラメータが用意されているという所ですかね。
次回は取得したFANZA動画データを用いてwordpressの記事データを自動作成してみる回です、良かったら読んでみて下さい(‘ω’)ノ
DMMの商品データを一括取得するアプリ「DeepKiss」
DMMの商品をツイッターに投稿したりアフィリエイトサイトを作りたかったんですが、DMMAPIでは100件刻みでしかデータ取得が出来なかったのでMAX50,000件まで1発で取得できるデスクトップアプリを作りました。
使っている様子はこんな感じ。
DMMの商品データが大量にあればブログのランキング記事も簡単に作れるようになりますし、商品データベースとして用いればアフィリエイトサイトの構築も難しくないです。取得できる項目には在庫情報も含まれているので、限定品やレア物をピックアップすればそのまませどり用のリストにも使えます。
データ取得はアプリにお任せ、商品紹介でゴリゴリ稼ぎたい方はぜひお試し下さいm(_ _)m
個人開発プログラマーを応援するメンバーシップを始めました('ω')ノ
質問・要望・共同作業など、みんなのやりたい事をスマイルがお手伝いします。立ち上げたばかりでよく分かってないので、とりあえず何でもありやってみます。
コメント
API用のID(990~999)で商品が売れると報酬は発生しますか?
また、別にサイト毎にIDが割り当てられています。
2つのIDが混在しますが、どうなんでしょう?
DIYプログラミングのスマイルです(‘ω’)ノ
> API用のID(990~999)で商品が売れると報酬は発生しますか?
しますよ。
> 2つのIDが混在しますが、どうなんでしょう?
中身の仕様に違いは感じていませんが、僕はサイト内で広告を貼る際にはサイト別のアフィリエイトID、アプリとか作る時用の商品情報APIだと思って使い分けてますね。ローカルアプリなんかはサイトURLが存在しないので個別に申請できませんから。
こんにちは。
単体作品で絞り込みしたいのですが、どのようにすればいいのかわかりません。
実際にサイトから単体作品で絞り込んだURLを参考にAPIをたたきましたが、だめでした。
DIYプログラミングのスマイルです∠( ゚д゚)/
> 単体作品で絞り込みしたいのですが、どのようにすればいいのかわかりません。
商品IDをパラメータにつけて実行すると出来ると思います。
> 実際にサイトから単体作品で絞り込んだURLを参考にAPIをたたきましたが、だめでした。
あだおじさんが何を試したのか分からないので、ピンポイントでアドバイスするのは難しいです。
よろしくお願いしますm(_ _)m
minipopでレンタルサーバーを借り、記事を参考にさせていただき環境を構築中です。
そこで壁にぶつかってしまいご教授いただきたいのですが、APIの申請が通り、ブラウザのアドレス欄に打ち込んで情報が取得出来るのを確認したのですが、phpで実行すると情報が取れないのは何が原因だと思われるでしょうか?
ソースは、記事に書かれているものをコピーしてアドレス部分をブラウザに入力したものに置き換えたものです。
うんこの表示まではうまく行きました。
DIYプログラミングのスマイルです(‘ω’)ノ
> phpで実行すると情報が取れないのは何が原因だと思われるでしょうか?
実際のスクリプトと実行結果の画面を見ないとなんとも言えないですね、まだ困っていましたらお問い合わせからヒントになりそうな画面をスクショして送って下さい。
よろしくお願いしますm(_ _)m
json_last_error_msgでメッセージを表示してみたところ、syntax errorが表示され戻り値がnullになっているようでした。
以下の簡単な記述なのですが何か原因分かりますでしょうか。(XXXXの部分はキーとIDを設定しております。
$request_url=’https://api.dmm.com/affiliate/v3/ItemList?api_id=XXXX&affiliate_id=XXXX&site=FANZA&service=digital&floor=videoa&hits=2&article=genre&article_id=1034′;
$res_data=json_decode(@file_get_contents($request_url), true);
var_dump($res_data);
return($res_data);
お疲れ様です(‘ω’)ノ
>以下の簡単な記述
冒頭に<?phpがついてないですね、修正して見て下さい。
よろしくお願いしますm(_ _)m