楽天で検索するとポイントがザックリたまるんですよ。そこで、自動化するプログラムをpythonで書きました。
ウェブ検索画面→ランダムにキーワード入力→検索
という順番にプログラムを回しています。
楽天の検索システムは楽天ウェブ検索ツールバーを通して数回単語検索すると、最大「30口」たまり、最大「5ポイント」楽天スーパーポイントにたまるシステムです。
125万ポイント山分け!とありますが、最大1日30口までです。
1日5ポイント…30日で150ポイントか…。と思った方もいることでしょう。
実は月に1万5000円積立投資をして、ポイントをもらう金額と同じなのです。
複利として150ポイント×12ヶ月=1800ポイントとなります。
まぁ…続けてみましょう笑
今回はInternet Explorer を使います。google chromeだと拡張機能を使わなくてはなりませんし、最大5口(1ポイント)しかたまりません。
今回はログイン済みを対象としています。
Internet Explorerで楽天にログインすると、ログアウトするまでずっと会員情報を保持しているようです。
さて、準備です。
①IEDriverServerをダウンロードしてDドライブ直下にdriverフォルダを作り、そこにIEDriverServer.exeファイルを入れてください。
下記のリンクから32bit.verを選択してください。(64bitだとヌルヌル動く恐れあり)
IEDriverServer
②楽天ツールバーをInternet Explorerにダウンロード。
③IDELを起動して、コードをコピーペーストして、適当な名前をつけて保存。
④pyファイルを起動し実行。
以上になります。簡単でしょう。最下部にコードの詳細があります。
ここからは、コードを作成するまでの概要になります。参考にしたい人は見て下さい。飛ばしたい方は下にスクロールして下さい。
1、ログイン情報ページから自動で入る
自動で入るコードはこちらになります。
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.keys import Keys
driver = webdriver.Ie("c:/driver/IEDriverServer.exe")
driver.get("https://grp03.id.rakuten.co.jp/rms/nid/login?service_id=r12&return_url=login?tool_id=1&tp=&id=")
elem_search_word = driver.find_element_by_name("u")
elem_search_word.send_keys("※※※※※")
password = driver.find_element_by_name('p')
password.send_keys("※※※※")
elem_search_word = driver.find_element_by_name("submit").click()
# 下記※にあなたのID
elem_search_word = driver.find_element_by_name("u")
elem_search_word.send_keys("※※※※※")
# 下記※にあなたのパスワード
password = driver.find_element_by_name('p')
password.send_keys("※※※※")
これで自動で入れます。
2、キーワードを取得する
熟語が羅列されてるサイトなら何でも良いのですが、価格ドットコムのランキングから取りました。
下記がプログラムです。タグを巡回するコードにしました。
#access to kakaku.com
from selenium import webdriver
driver = webdriver.Chrome("c:/driver/chromedriver.exe")
driver.get("https://kakaku.com/keyword/")
for a in driver.find_elements_by_tag_name("a"):
print(a.text)
driver.quit()
3、取得したキーワードをエクセルに貼り整形する。
行列の入れ替えをして
メモにコピー&ペーストします。
検索置換で検索を「空白(タブ)」をコピーしてペーストします。
結果、内包リストの出来上がりです。(ここもpythonでできたらなぁと思います)
上記の説明は補足説明で、実際にコードを写したりする必要はありません。すでにコード中にキーワードリストは記載してあります。
製作環境:win7 32bit python3.7.2 IDLE
下記をコピーペーストしてください。
# coding: utf-8
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.keys import Keys
from time import sleep
import random
#楽天ウェブ検索に接続
driver = webdriver.Ie("c:/driver/IEDriverServer.exe")
driver.get("https://websearch.rakuten.co.jp/?l-id=header_left_top_logo")
driver.implicitly_wait(10)
#キーワードを30回自動入力して検索
for i in range(32):
#200のキーワードからランダムに抽出
keywordlist = ["ホーム","ポケトーク","4kチューナー","ipad","ipad mini","ネックスピーカー","α7iii","airpods","ipad air","翻訳機","ps4","windows10","ps4 本体","防犯カメラ ワイヤレス 屋外","ウェアラブルネックスピーカー","デジタルサイネージ ディスプレイ","モバイルディスプレイ","液晶テレビ 50インチ","血糖値測定器","ps4pro 本体","物置","プリンター","電気温水器","psvr","ipadmini","sv12ff","三輪 電動アシスト自転車","145r12 6pr","家庭用防犯カメラ","プロジェクター","ワイヤレスインターホン 無線インターホン","ポータブル電源","iphone8","bwv80c","ルンバ","surface go","SRS-WS1","フロントラインプラス","ドライブレコーダー バイク 防水","ミニ耕運機","apple pencil","ジャンプスターター","ログハウス キット","電話 録音機","50インチ モニター","フォーマル ミセス スーツ 50代","surface pro","セグウェイ","紙折り機","コンクリート 平板","キャノン 純正インク","枝 粉砕機","nebs1500","TS8230","ニンテンドースイッチ 本体","カラオケ 機器 家庭用","gopro","ipad pro","bwv70c","パーリーゲイツ キャディーバッグ","ドクターエア","手元スピーカー ワイヤレス","ウォークマン","夢ゲンクール","自転車通学 カッパ","4kテレビ 50インチ","フル電動自転車","ドクターシーラボ 200g","ca-dr150","60代 フォーマル ミセス 結婚式","物置 屋外","真空包装機 業務用","dyson v10","ウォシュレット","人工芝 ロール","シュレッダー 家庭用","ドローン カメラ付き","折りたたみ 自転車 超軽量","パルスオキシメーター","ドアスコープ カメラ","レ・ー・ダ・ー 探知器","おしゃれ 倉庫 屋外 物置","th55fz950","ipad mini キーボード","ダイソン","ps4 pro","タイヤチェンジャー","階段 昇降機","RX0","波板 トタン","auto-vox","ポータブル電源 suaoki","4tc50aj1","bwv100c","D850","シャワーヘッド マイクロバブル","bluetooth トランスミッター","mrovs8","タイヤ空気圧 モニタリングシステム","物置 倉庫","スピーカーセレクター","ポケトーク","夢ゲンクール","α7iii","棒寒天","血糖値測定器","電話 録音機","クリスチャンオリビエ バック","ポータブル電源","パルスイクロス","翻訳機","育苗器","プリンター","一本満足","ha-sd70bt","セグウェイ","モバイルディスプレイ","電気温水器","アイコス","液晶テレビ 50インチ","ドライブレコーダー バイク 防水","紙折り機","宅配ボックス","sv12ff","cbdオイル","コンクリート 平板","WH-1000XM3","EX-LD321DB","eos kiss x10","防草シート","枝 粉砕機","診断機 自動車","デジタルサイネージ ディスプレイ","ブラウン 洗浄液","絵の具 セット 小学校","人工芝 ロール","SSD 2tb","自転車通学 カッパ","ミニ耕運機","gopro","太陽光発電 ソーラーパネル","階段 昇降機","ジャージ上下 メンズ","酸素濃度計","遺伝子検査キット","145r12 6pr","ミラー型ドライブレコーダー","ipad 2018","surface go","グッドラックソファ","ウォシュレット","波板 トタン","頭皮マッサージ機","dmrbw550","シックスパッド","網戸 お掃除ローラー","TS8230","無線機 アマチュア無線","自転車通学 カッパ リュック","薬 フィラリア","ポケトーク 翻訳機","口臭チェッカー","リチウムイオン充電池 18650","コックリング","auto-vox","a3 複合機","bwv100c","メスティン","冷凍ストッカー 業務用","UNX-9130","レーザー彫刻機","ipad キーボード カバー","windows10","物置","耐火レンガ","キャノン 純正インク","タイヤ空気圧 モニタリングシステム","サイクルポート","ps vr","ケイカル板","ポータブル電源 suaoki","iphone8","レ・ー・ダ・ー 探知器","ワイヤレスインターホン 無線インターホン","ドクターエア","ポータブル電源 大容量","玄関ドア","ジンバル","ipad mini キーボード","5セカンズシャイン","200m 黒マルチ","家庭用防犯カメラ","ゲーミングモニター","iphone10","iphone7","navx9900","ワイヤレスマイク bluetooth","gps ロガー","麻雀卓 折りたたみ","土留め"]
sleep(2)
search_word = driver.find_element_by_name("qt")
sleep(2)
search_word.send_keys(random.choice(keywordlist))
sleep(3)
search_word.send_keys(Keys.ENTER)
sleep(4)
search_erase_icon = driver.find_element_by_xpath("//*[@id='cbtn']").click()
sleep(5)
print("終了")
IEでは重たい動作が続いたり不安定になることもあります。
その際は一度閉じて、やり直しをかけるか、スリープモジュールのsleep(2)を(4)にしたり少し秒数を変えてみたりして調節してみてください。
noteでも公開してます!
【楽天ウェブ自動検索システムを作りました。】
https://note.mu/merukari_/n/n1a11618e1f46
【pythonでinstagramに自動いいね!する】
https://note.mu/merukari_/n/nbe588104bd4c
【financedoglogブログ】
https://yydairy.hateblo.jp/