Python + sélénium pour GW beaucoup de publicités par courrier électronique

introduction

Comment allez-vous chez GW? Il me reste beaucoup de temps, je publierai donc pour la première fois. Puisqu'il s'agit de mon premier message, il se peut que certaines parties ne soient pas atteintes, mais merci.

Cet article a été rédigé sans l'autorisation de © Melad Poi Poi. Si vous rencontrez des problèmes, veuillez nous contacter et nous les supprimerons immédiatement.

But de cette fois

C'est soudain Connaissez-vous les sites suivants? https://m.kuku.lu/

C'est un service qui génère un nombre infini d'adresses e-mail. C'est très pratique, mais c'est compliqué de cliquer sur chaque adresse e-mail pour la générer, donc le but de cette fois est de l'automatiser. Il y a des moments où vous voulez beaucoup d'adresses e-mail (^ _ ^;)

Préparation

Préparer Je dois préparer l'environnement pour python et sélénium

sélénium est un outil qui vous permet de tester des pages Web. python est un langage de programmation et vous écrirez ici le script de cette opération de page Web.

installation de python

Veuillez vous référer aux articles suivants. Nous créerons un lien sans autorisation. Excusez-moi

・ Windows (article de taipon_rock) http://qiita.com/taipon_rock/items/f574dd2cddf8851fb02c    http://qiita.com/socket1016/items/fdcc454e4ffe70a07507

・ Mac (article de ramma) ← Veuillez utiliser pyenv pour terminer l'installation de 3.5.1. http://qiita.com/ramma/items/5c3cb3bb371e6a6286f1

・ Linux (article de uryyyyyyy) http://qiita.com/uryyyyyyy/items/268f8dc0d6ec3d7da7e3 Pour être honnête, je pense que c'est beaucoup plus rapide à intégrer dans l'environnement ubuntu. Cela semble assez terne avec les fenêtres

Puisque mon environnement est ubuntu 16.04 LTS, je vais l'expliquer ici.

Installez le sélénium

le sélénium entre dans le terminal avec le code suivant.

pip install selenium

Installer le pilote Web Chrome

Ensuite, vous avez besoin d'un pilote pour faire fonctionner Chrome. https://sites.google.com/a/chromium.org/chromedriver/downloads Téléchargez-le ici et placez-le au même endroit que le programme qui exécute le fichier "chromedriver" à l'intérieur.

L'environnement est maintenant prêt.

Ecrire un script

Cette fois, j'ai automatiquement reçu une adresse e-mail de Melad Poi Poi J'ai créé un programme d'exportation de texte. Voici le code source.



import os
import time
from selenium import webdriver

#Démarrez le navigateur
browser = webdriver.Chrome('./chromedriver')
#Navigation dans la page
browser.get('https://m.kuku.lu/')
time.sleep(1)
#Obtenez ID et PW avec xpath
browser.find_element_by_xpath('//*[@id="link_logindata"]').click()
ID=browser.find_element_by_xpath('//*[@id="area_numberview"]')
PW=browser.find_element_by_xpath('//*[@id="area_passwordview"]')
f=open('poipoiIDPWmaillist.txt','w')
f.write('Si vous ne connaissez pas votre identifiant et votre PW, vous ne pourrez pas recevoir d'e-mails.\n Veillez à ne pas le perdre.\n\n')
f.write('ID='+ID.text+'\n')
f.write('PW='+PW.text+'\n\n')
f.write('Adresse mail ci-dessous\n\n')

for num in range(1,1900):
	browser.find_element_by_xpath('//*[@id="link_addMailAddrByAuto"]').click()
	time.sleep(2)
	mailadresu=browser.find_element_by_xpath('//*[@id="area-newaddress-view-data"]/div/div[1]/u')       
	f.write(mailadresu.text+'\n')
	time.sleep(2)
	browser.find_element_by_xpath('//*[@id="link_newaddr_close"]').click()
	time.sleep(1)   






En gros, récupérez le xpath de l'endroit où vous souhaitez opérer sur la page et décrivez-le dans le code source Vous pouvez obtenir xpath dans chrome en cliquant avec le bouton droit de la souris → copier → xpath en mode développeur standard. Pour plus de détails, veuillez consulter la page suivante http://ptech.g.hatena.ne.jp/noromanba/20120528/1338307299

browser.get('Adresse de la page Web sur laquelle vous souhaitez vous rendre ici')
browser.find_element_by_xpath('Xpath obtenu ici').click() #← Cliquez avec ce gars
time.sleep(Nombre de secondes que vous souhaitez retarder) #← C'est le temps d'attente, le temps d'attente pour l'opération de la page.

Veuillez consulter le document officiel japonais pour une explication détaillée du sélénium. http://selenium-python.a-zumi.net/installation.html#introduction

Enregistrez le code source suivant sous «nom approprié.py» à partir de la ligne de commande

nom approprié python3.py

Le navigateur Chrome démarre automatiquement et vous recevez l'annonce par e-mail.

Pour le moment, vous pouvez obtenir une adresse e-mail de Melad Poi Poi avec ce code. Les données texte existent sous la forme "poipoiIDPWmaillist.txt" dans le même dossier. Veuillez utiliser l'ID et le PW à partir de là.

Environnement d'exécution

ubuntu 16.04 LTS python 3.5.1 selenium 3.4.1

Recommended Posts

Python + sélénium pour GW beaucoup de publicités par courrier électronique
Je veux démarrer beaucoup de processus à partir de python
Comment déterminer l'existence d'un élément sélénium en Python
Connectez beaucoup de Python ou et et
Mémo connecté à HiveServer2 d'EMR avec python
Comment écrire un type liste / dictionnaire de Python3
Python qui fusionne beaucoup d'excellence en un seul Excel
Note Python: Le mystère de l'attribution d'une variable à une variable
Une route vers Python intermédiaire
Commencez à Selenium en utilisant python
[Python] Comment créer une liste de chaînes de caractères caractère par caractère
Comment mélanger une partie de la liste Python (au hasard.shuffle)
Une collection de techniques professionnelles compétitives à résoudre avec Python
Obtenez une liste des livres électroniques DMM achetés avec Python + Selenium
[Blender x Python] Organisons une grande quantité de Susanne proprement !!
Comment obtenir une liste d'exceptions intégrées pour python
Un enregistrement de patcher un package python
L'exécution d'un grand nombre de Python3 Executor.submit peut consommer beaucoup de mémoire.
Une bonne description des décorateurs Python
[Python] Comment forcer une méthode d'une sous-classe à effectuer un processus spécifique
Essayez d'obtenir la liste des fils du bulletin d'information (je n'aime pas) avec Python.
[Python] Un mémorandum de belle soupe4
Un bref résumé de la collection Python
Comment vérifier la taille de la mémoire d'une variable en Python
J'ai essayé de créer une expression régulière de "temps" en utilisant Python
J'ai créé beaucoup de fichiers pour la connexion RDP avec Python
J'ai essayé de créer une expression régulière de "date" en utilisant Python
Comment vérifier la taille de la mémoire d'un dictionnaire en Python
J'ai essayé de faire un processus d'exécution périodique avec Selenium et Python
[Python3] Définition d'un décorateur qui mesure le temps d'exécution d'une fonction
5 façons de créer un chatbot Python
Sélénium et python pour ouvrir Google
[Python] Comment créer une matrice de motifs répétitifs (repmat / tile)
[python] Une note que j'ai commencé à comprendre le comportement de matplotlib.pyplot
[Python] Une fonction simple pour trouver les coordonnées du centre d'un cercle
[Python] Un programme qui fait pivoter le contenu de la liste vers la gauche
J'ai fait beaucoup de recherches sur la façon dont Python est exécuté
[EC2] Comment faire une capture d'écran de votre smartphone avec du sélénium
J'ai créé un outil pour parcourir automatiquement plusieurs sites avec Selenium (Python)
[Python] Un programme qui calcule le nombre de chaussettes jumelées
Comment envoyer une image visualisée des données créées en Python à Typetalk
Envoyer des e-mails à une adresse e-mail spécifique avec python sans paramétrer SMTP
[Python] Comment mettre n'importe quel nombre d'entrées standard dans la liste
[Introduction à Python] Comment trier efficacement le contenu d'une liste avec le tri par liste
[Python] Si vous souhaitez dessiner un diagramme de dispersion de plusieurs clusters
[Python] Comment lire le fichier csv (méthode read_csv du module pandas)
Je veux colorer une partie de la chaîne Excel avec Python
[Outlook] J'ai essayé de créer automatiquement un e-mail de rapport quotidien avec Python
Code Python pour déterminer les signaux mensuels pour les investissements de force relative
Comment bien formater une liste de dictionnaires (ou d'instances) en Python
Essayez de résoudre un problème défini de mathématiques au lycée avec Python
J'ai fait un programme pour vérifier la taille d'un fichier avec Python
[Python] [Word] [python-docx] Essayez de créer un modèle de phrase de mot en Python en utilisant python-docx
Python: je souhaite mesurer proprement le temps de traitement d'une fonction
J'ai essayé d'implémenter le jeu de cartes de Trump en Python
J'ai créé une fonction pour voir le mouvement d'un tableau à deux dimensions (Python)