DMMアフィリエイトを使ってpythonyとtwitterで収益化を図る方法
これまでもtwitterを使った収益化方法についてnoteでまとめてきました
どちらも多くの方にお読みいただけているようで、書いてよかったなと思います。
何かで収益化を図ろうと考えたときに、大切なことは「どれだけ自動化できるか」だと考えています。
そのため、pythonとtwitterやその他のSNSを活用した方法は収益化に向いており、これらをうまく活用することで、自動収益化を図ることができます。
SNSを見ているとたまに「この人の講座をnoteにまとめて固定ツイートに貼っておけば、自動で収益化できます!」みたいなツイートとか見ますけど、そんな方法使わなくても自動収益化は図れます。
必要としているところに必要な情報を流してあげれば、そこから収益が生まれます。
興味のない人に猛プッシュしても、売れないです。
なので、ターゲット層を決めることはとても大切になります。
今回のnoteで書いていく方法のターゲット層は「30代以降の男性」です。
結構ぼやっと書いてますけど、実際にリーチを行うときには、もう少し具体的にしていきます。
DMMアフィリエイトを使った自動収益化
今回はDMMアフィリエイトを活用していきます。
DMMですが、fanzaというものですね。
これをAPIを使って情報を抜き出してきて、ツイートしていくことになります。
まだ完全自動化にはできていないので、無料版になっています。
一部手動で実施していくことになりますので、ご了承ください。
まずはDMMアフィリエイトに登録します。
twitter URLはパソコンでログインして、プロフィールに飛び、そのページのURLをコピペです
この時に登録サイトはtwitterアカウントでOKです
fanzaなのでちょっと大人な動画を数件引用リツイートしておけばOKです
僕は引用リツイート3件くらいで申請許可おりました。
DMMのwebサービス利用申請をする
DMMのwebサービス利用申請をすることで、DMMのAPIを使用することができます
以下のページから、利用申請を行います
あとはpythonを使って、APIからjsonを引っ張ってきて、必要な部分を抜き出し・ツイートでOKです
フォロワー少なくても結構食いつきがいいので、収益化は期待できます
DMMアフィリエイト自動化のためのpythonコード
pythonコードは以下になります
一応キーワードにhitした商品を10件、csvにエクスポートさせるようにしています。
抜き出してくる情報は、サンプル動画とタイトル、商品URLです。
# モジュールのインポート
import dmm
import re
import requests
import pandas as pd
import os
import json
# API ID と アフィリエイトIDをセット
# ****には自分のIDを入力
api_id = "****"
affiliate_id = "******"
# [APPID]と[アフィリエイトID]は自分のものを入れる
REQUEST_URL="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"
# ここも自分のIDを入力
api = dmm.API(api_id="****", affiliate_id="*****")
# hitsは何件検索するか.現在は10件
# keywordは好きなキーワードを入力
serch_params ={
"api_id": "****",
"affiliate_id": "*****",
"site": "FANZA",
"service": "digital",
"floor": "videoa",
"hits":10,
"offset":1,
"keyword":"素人"
}
response = requests.get(REQUEST_URL,serch_params)
result = response.json()
title=result['result']['items'][0]['title']
URL=result['result']['items'][0]['affiliateURL']
sample=result['result']['items'][0]['sampleMovieURL']['size_644_414']
title1=result['result']['items'][1]['title']
URL1=result['result']['items'][1]['affiliateURL']
sample1=result['result']['items'][1]['sampleMovieURL']['size_644_414']
title2=result['result']['items'][2]['title']
URL2=result['result']['items'][2]['affiliateURL']
sample2=result['result']['items'][2]['sampleMovieURL']['size_644_414']
title3=result['result']['items'][3]['title']
URL3=result['result']['items'][3]['affiliateURL']
sample3=result['result']['items'][3]['sampleMovieURL']['size_644_414']
title4=result['result']['items'][4]['title']
URL4=result['result']['items'][4]['affiliateURL']
sample4=result['result']['items'][4]['sampleMovieURL']['size_644_414']
title5=result['result']['items'][5]['title']
URL5=result['result']['items'][5]['affiliateURL']
sample5=result['result']['items'][5]['sampleMovieURL']['size_644_414']
title=result['result']['items'][6]['title']
URL=result['result']['items'][6]['affiliateURL']
sample=result['result']['items'][6]['sampleMovieURL']['size_644_414']
title6=result['result']['items'][7]['title']
URL6=result['result']['items'][7]['affiliateURL']
sample6=result['result']['items'][7]['sampleMovieURL']['size_644_414']
title7=result['result']['items'][8]['title']
URL7=result['result']['items'][8]['affiliateURL']
sample7=result['result']['items'][8]['sampleMovieURL']['size_644_414']
title8=result['result']['items'][9]['title']
URL8=result['result']['items'][9]['affiliateURL']
sample8=result['result']['items'][9]['sampleMovieURL']['size_644_414']
list1=[[title,sample,URL],[title1,sample1,URL1],[title2,sample2,URL2],[title3,sample3,URL3],[title4,sample4,URL4],
[title5,sample5,URL5],[title6,sample6,URL6],[title7,sample7,URL7],[title8,sample8,URL8]]
index=["No.1","No.2","No.3","No.4","No.5","No.6","No.7","N0.8","No.9"]
columns=["title","sample","URL"]
df=pd.DataFrame(data=list1,index=index,columns=columns)
df.to_csv("fanza.csv")
あんまりスマートなコードじゃなくていやなんですけど、現状はこれで情報を抜いてきて、csvからサンプル動画をダウンロード、twitterにup、リプライ欄に商品URLを掲載
という手順でやっています。
jsonとfor文の組み合わせがいまいちまだちゃんと理解できていないので、ダメですね。
でも、これ理解したら有料版にしますので、理解できない方がいいかもですね。
twitterに自動投稿することもできるんですが、サンプル動画がない場合には、エラーになってしまうので、手動になっています。
ただ、手動でも手動でやるだけの結果は出ます。
あとはtwitterアカウントをうまく運用していけばOKです
少しでも参考になったらスキをお願いします!!!!!
2024/4/4追記
APIが制限されてしまったので、Twitterの自動投稿ができないかつfor文がぐだぐだだったので、リファクタリングしました
キーワード指定は複数可能で、指定したキーワードに該当する動画のタイトル・サンプル動画URL・アフィリエイトURLをエクセルにまとめます
import requests
import pandas as pd
# API ID と アフィリエイトIDをセット
api_id = ""
affiliate_id = ""
# リクエストURLを設定(サンプルとして、あなたが提供したURLを使用)
REQUEST_URL = ""
# サーチパラメータを設定
serch_params = {
"api_id": api_id,
"affiliate_id": affiliate_id,
"site": "FANZA",
"service": "digital",
"floor": "videoa",
"hits": 20,
"keyword": "素人",
"output": "json"
}
# APIリクエストを実行
response = requests.get(REQUEST_URL, params=serch_params)
result = response.json()
# 必要なアイテムキー(ここで 'URL' を 'affiliateURL' に変更)
item_key = ['title', 'affiliateURL'] # 'sample'は特別に処理する
item_list = []
# APIからデータを取得してリストに追加
for item in result['result']['items']:
tmp_item = {key: item[key] for key in item_key if key in item}
# 'sample'の処理(もし必要なら)
if 'sampleMovieURL' in item and 'size_644_414' in item['sampleMovieURL']:
tmp_item['sample'] = item['sampleMovieURL']['size_644_414']
item_list.append(tmp_item)
# データフレームを作成
df = pd.DataFrame(item_list)
# Excelファイルに保存
excel_file_name = 'results_with_affiliate_links.xlsx'
df.to_excel(excel_file_name, index=False)
print(f'Data has been written to {excel_file_name}')
この記事が気に入ったらサポートをしてみませんか?