見出し画像

DMMアフィリエイトを使ってpythonyとtwitterで収益化を図る方法

これまでもtwitterを使った収益化方法についてnoteでまとめてきました

どちらも多くの方にお読みいただけているようで、書いてよかったなと思います。

何かで収益化を図ろうと考えたときに、大切なことは「どれだけ自動化できるか」だと考えています。

そのため、pythonとtwitterやその他のSNSを活用した方法は収益化に向いており、これらをうまく活用することで、自動収益化を図ることができます。

SNSを見ているとたまに「この人の講座をnoteにまとめて固定ツイートに貼っておけば、自動で収益化できます!」みたいなツイートとか見ますけど、そんな方法使わなくても自動収益化は図れます。

必要としているところに必要な情報を流してあげれば、そこから収益が生まれます。
興味のない人に猛プッシュしても、売れないです。
なので、ターゲット層を決めることはとても大切になります。

今回のnoteで書いていく方法のターゲット層は「30代以降の男性」です。
結構ぼやっと書いてますけど、実際にリーチを行うときには、もう少し具体的にしていきます。


DMMアフィリエイトを使った自動収益化

今回はDMMアフィリエイトを活用していきます。
DMMですが、fanzaというものですね。

これをAPIを使って情報を抜き出してきて、ツイートしていくことになります。

まだ完全自動化にはできていないので、無料版になっています。
一部手動で実施していくことになりますので、ご了承ください。

まずはDMMアフィリエイトに登録します。

画像1
画像2
画像3
画像4
画像5

twitter URLはパソコンでログインして、プロフィールに飛び、そのページのURLをコピペです

スクリーンショット 2022-08-03 22.45.27

この時に登録サイトは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}')

この記事が気に入ったらサポートをしてみませんか?