J'ai essayé d'automatiser le dépôt de 100 yens des courses de chevaux Rakuten (python / sélénium)

Objectif

** Élevez facilement le rang de Rakuten Happy Program **

table des matières

Qu'est-ce qu'un programme heureux?

Qu'est-ce que ** Happy Program **? Est-ce délicieux? Pour ceux qui disent Je vais coller l'image de référence. image.png

En termes simples, plus le ** rang ** est élevé, plus vous vous sentirez délicieux.

Il existe différentes manières d'élever ce ** rang **. Par exemple ...

  1. Déposez beaucoup d'argent à la banque.
  2. Recevez un salaire de la Rakuten Bank.
  3. Effectuez de nombreux virements vers d'autres banques. etc ...

Pour être honnête, je n'ai pas beaucoup d'argent * (je veux bientôt un bonus ...) * La réception du salaire est à la Miho Bank * (pas à proximité du guichet automatique de Miho ...) * Je ne souhaite pas transférer autant que possible de l'argent vers d'autres banques. * (Les frais sont trop élevés ...) *

Je pense qu'il y a beaucoup de gens qui pensent de la même manière. repos assuré.

Il existe un moyen d'élever le rang qui vous convient.

** Déposez seulement 100 yens à Rakuten Horse Racing chaque jour. ** **

!!!!!??????

C'est vrai, il vous suffit de déposer 100 yens à Rakuten Horse Racing une fois par jour.

Si vous continuez pendant 30 jours, il deviendra automatiquement ** Super VIP **.

De plus, les 100 yens vous seront restitués indemnes (sauf si vous pariez sur votre cheval).

C'est le meilleur. Mais ouvrez manuellement l'application Rakuten Horse Racing, saisissez votre adresse e-mail, C'est assez ennuyeux de taper le mot de passe et le code PIN.

Dans un tel cas, ** l'automatisation utilisant python et sélénium ** sera efficace.

Conditions préalables

  1. Google Chrome est installé
  2. Vous avez téléchargé le pilote Chrome pour votre version de Google Chrome. https://chromedriver.chromium.org/downloads (Si vous n'avez pas encore téléchargé, cliquez ici.)
  3. Avoir des connaissances de base sur Selenium et python

Si vous êtes nouveau sur python / sélénium, l'article suivant est recommandé https://qiita.com/memakura/items/20a02161fa7e18d8a693 https://qiita.com/mastar_3104/items/0a1ce2bfa1d29287bc35

code python

rakuten_automation.py


from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time
import chromedriver_binary
from selenium.webdriver.chrome.options import Options

options = Options()
options.add_argument('--headless')

driver = webdriver.Chrome("./chromedriver", options=options)
driver.get("https://keiba.rakuten.co.jp/?l-id=top_logo")

time.sleep(5)

if len(driver.find_elements_by_xpath("/html/body/section/div[2]/div")):
  pop = driver.find_element_by_xpath("/html/body/section/div[2]/div") 
  pop.click()
  send_money = driver.find_element_by_class_name("siteheader_actionlist_btn")
  send_money.click()
  driver.switch_to.window(driver.window_handles[1])
  driver.maximize_window()

  userid = driver.find_element_by_name("u")
  userid.send_keys("YourMailAddress")
  password = driver.find_element_by_name("p")
  password.send_keys("YourPassword")
  password.send_keys(Keys.RETURN)

  insert = driver.find_element_by_class_name("modal")
  insert.click()

  time.sleep(3)

  insert_money = driver.find_element_by_id("dialogDepositingInputPrice")
  insert_money.send_keys("amountOfMoney(ex.100)")
  confirm = driver.find_element_by_id("dialogDepositingConfirm")
  confirm.send_keys(Keys.RETURN)

  time.sleep(5)
  pincode = driver.find_element_by_id("dialogDepositingConfirmPin")
  pincode.send_keys("YourBankPINCode")
  complete_insert = driver.find_element_by_id("dialogDepositingComplete")
  complete_insert.send_keys(Keys.RETURN)
  
  time.sleep(3)

  driver.quit()

else:
  send_money = driver.find_element_by_class_name("siteheader_actionlist_btn")
  send_money.click()
  driver.switch_to.window(driver.window_handles[1])
  driver.maximize_window()

  userid = driver.find_element_by_name("u")
  userid.send_keys("YourMailAddress")
  password = driver.find_element_by_name("p")
  password.send_keys("YourPassword")
  password.send_keys(Keys.RETURN)

  insert = driver.find_element_by_class_name("modal")
  insert.click()

  time.sleep(3)

  insert_money = driver.find_element_by_id("dialogDepositingInputPrice")
  insert_money.send_keys("amountOfMoney(ex.100)")
  confirm = driver.find_element_by_id("dialogDepositingConfirm")
  confirm.send_keys(Keys.RETURN)

  time.sleep(5)
  pincode = driver.find_element_by_id("dialogDepositingConfirmPin")
  pincode.send_keys("YourBankPINCode")
  complete_insert = driver.find_element_by_id("dialogDepositingComplete")
  complete_insert.send_keys(Keys.RETURN)

  time.sleep(3)

  driver.quit()

Si vous déplacez cela, le dépôt automatique sera effectué pour le moment.

Attention ①

** "Votre adresse e-mail" (votre adresse e-mail) "Votre mot de passe" "Votre code PIN BANQUE" (mot de passe) "Somme d'argent" **

rewrite.py


userid.send_keys("YourMailAddress")
password.send_keys("YourPassword")
pincode.send_keys("YourBankPINCode")
insert_money.send_keys("amountOfMoney(ex.100)")

Veuillez saisir directement les valeurs appropriées pour les quatre valeurs ci-dessus.

Je saisis du texte brut dans mon adresse e-mail, mon mot de passe et mon mot de passe. Je veux arrêter car c'est un problème de sécurité. .. S'il vous plaît laissez-nous savoir dans les commentaires s'il existe un bon moyen.

Attention ②

L'emplacement de ChromeDriver doit être dans le même répertoire que le fichier python ci-dessus.

L'automatisation peut soudainement cesser de fonctionner, mais c'est parce que ** ChromeDriver sur dix est obsolète **. Si cela a fonctionné jusqu'à hier et que vous obtenez soudainement une erreur, vérifiez d'abord si votre version de Chrome et la version de votre pilote Chrome correspondent.

Je vais trouver l'heure et ajouter le mouvement de chaque code.

Recommended Posts

J'ai essayé d'automatiser le dépôt de 100 yens des courses de chevaux Rakuten (python / sélénium)
[Courses de chevaux] J'ai essayé de quantifier la force du cheval de course
J'ai essayé d'automatiser la mise à jour de l'article du blog Livedoor avec Python et sélénium.
J'ai essayé de résumer les opérations de chaîne de Python
J'ai essayé de trouver l'entropie de l'image avec python
[Python] J'ai essayé de visualiser la relation de suivi de Twitter
J'ai essayé d'obtenir une base de données sur les courses de chevaux en utilisant Pandas
J'ai essayé d'automatiser l'arrosage du pot avec Raspberry Pi
J'ai essayé d'améliorer l'efficacité du travail quotidien avec Python
J'ai essayé d'obtenir le code d'authentification de l'API Qiita avec Python.
(Python) J'ai essayé d'analyser 1 million de mains ~ J'ai essayé d'estimer le nombre d'AA ~
J'ai essayé de vérifier et d'analyser l'accélération de Python par Cython
J'ai essayé de rationaliser le rôle standard des nouveaux employés avec Python
J'ai essayé d'obtenir les informations sur le film de l'API TMDb avec Python
J'ai essayé de corriger la forme trapézoïdale de l'image
J'ai essayé d'automatiser la fabrication des sushis avec python
J'ai essayé de vectoriser les paroles de Hinatazaka 46!
[Python] J'ai essayé de juger l'image du membre du groupe d'idols en utilisant Keras
J'ai essayé de refactoriser le code de Python débutant (lycéen)
J'ai essayé d'automatiser le travail de masquage du visage de l'image de coordination pour l'usure
J'ai essayé d'envoyer automatiquement la littérature du nouveau virus corona à LINE avec Python
J'ai essayé de représenter graphiquement les packages installés en Python
J'ai essayé de résumer comment utiliser matplotlib de python
J'ai essayé de résumer la forme de base de GPLVM
J'ai essayé de toucher un fichier CSV avec Python
J'ai essayé de résoudre Soma Cube avec python
[Python] J'ai essayé de représenter graphiquement le top 10 des ombres à paupières
J'ai essayé de visualiser les informations spacha de VTuber
J'ai essayé d'effacer la partie négative de Meros
J'ai essayé de résoudre le problème avec Python Vol.1
[Python] J'ai essayé d'obtenir Json de squid ring 2
J'ai essayé de classer les voix des acteurs de la voix
Python pratique 100 coups J'ai essayé de visualiser l'arbre de décision du chapitre 5 en utilisant graphviz
J'ai essayé de visualiser les données de course du jeu de course (Assetto Corsa) avec Plotly
J'ai essayé de comparer la vitesse de traitement avec dplyr de R et pandas de Python
Le 15e temps réel hors ligne, j'ai essayé de résoudre le problème de l'écriture avec python
J'ai essayé la "correction gamma" de l'image avec Python + OpenCV
J'ai essayé de simuler la propagation de l'infection avec Python
J'ai essayé d'obtenir les informations de localisation du bus Odakyu
J'ai essayé de trouver la moyenne de plusieurs colonnes avec TensorFlow
Essayez d'automatiser le fonctionnement des périphériques réseau avec Python
J'ai essayé d'implémenter la fonction d'envoi de courrier en Python
[Apprentissage automatique] J'ai essayé de résumer la théorie d'Adaboost
Je veux connaître la nature de Python et pip
[Python] J'ai essayé de collecter des données en utilisant l'API de wikipedia
J'ai essayé d'énumérer les différences entre java et python
J'ai essayé de combattre le minimum local de la fonction Goldstein-Price
J'ai essayé de changer le script python de 2.7.11 à 3.6.0 sur Windows10
J'ai essayé d'implémenter le blackjack du jeu Trump en Python
J'ai essayé de résoudre le problème de F02 comment écrire en temps réel hors ligne avec Python
J'ai écrit un doctest dans "J'ai essayé de simuler la probabilité d'un jeu de bingo avec Python"
J'ai essayé d'automatiser la construction d'un environnement pratique à l'aide de l'API SoftLayer d'IBM Cloud
J'ai essayé de toucher Python (installation)
J'ai essayé de déplacer le ballon