[PYTHON] Je souhaite créer un profil utilisateur Ubuntu Chrome avec Colab uniquement

introduction

Comment gérez-vous la limite de temps de Colab? Je pense que de nombreux pionniers se sont automatiquement connectés à colab et ont lutté pour éviter les règles des 90 minutes et des 12 heures. La solution la plus réaliste est peut-être celle de l'article ci-dessous. [Connexion entièrement automatique] Résolution du problème de 90 minutes / 12 heures avec uniquement le fichier Colaboratory [Utilisation de Selenium] Je pense qu'il existe différentes méthodes, mais je pense que le premier goulot d'étranglement est la connexion à Google. Cet article l'ignore en demandant au sélénium de charger un profil utilisateur connecté. J'ai également essayé de me référer à cet article, mais je suis resté coincé dans la création d'un profil utilisateur pour Ubuntu chrome. L'article ci-dessus semble avoir fonctionné sur Mac OS, mais il semble que ce n'était pas possible avec UserProfile de Mac, j'ai donc démarré Ubuntu sur Docker et créé UserProfile qui s'est connecté à Chrome (Pour plus de détails, voir Voir l'article ci-dessus). Cet article s'adresse donc aux personnes suivantes. ・ Il n'y a qu'un environnement Windows en premier lieu ・ Je ne suis pas sûr de Docker

Le bloc-notes Colab créé cette fois sera ici. Si vous exécutez la cellule par le haut, vous pouvez (devriez) accéder à la connexion Google.

L'erreur qui s'est produite

Cette fois, je n'arrivais parfois pas à me connecter en raison des problèmes suivants. thread-22873505-6216761167860044958.png J'ai créé un autre compte et j'ai pu me connecter, mais veuillez me faire savoir s'il existe une solution.

Que fais tu

Les deux articles suivants ont été mentionnés cette fois. [1] [Connexion entièrement automatique] Résolution du problème de 90 minutes / 12 heures avec uniquement le fichier Colaboratory [Utilisation de Selenium] [2] Poème sur le sélénium sur les techniques de collaboration et d'évitement des limites de temps [1] est l'article ci-dessus, mais [2] a du mal à passer la certification de Google au sein de colab. En sélénium, c'est une option au démarrage

"--user-data-dir=dir_path"

Si vous spécifiez, UserProfile sera créé dans ce répertoire. Cette fois, j'ai réussi à me connecter à Google dans Colab par la méthode de [2] et à enregistrer le profil utilisateur.

Différence avec l'article de [2]

En regardant le code source de la personne qui a écrit l'article dans [2], La commande était "Entrez l'adresse e-mail-> Entrez le mot de passe-> Entrez l'exemple de chaîne de caractères squishy", mais à partir du 9 mai 2020, vous deviez authentifier la chaîne de caractères squishy immédiatement après avoir entré l'adresse e-mail. De plus, lorsque je l'ai essayé moi-même cette fois, on m'a également demandé une authentification SMS pour le téléphone. Probablement, le processus de connexion continuera d'être différent en raison des changements dans les spécifications du système d'authentification de Google.

Pour ceux qui ne pouvaient pas le faire de cette façon

La fonction de sélénium la plus utilisée pour créer ce code est ・ Webdriver.save_screenshot () ・ Webdriver.page_source (Webdriver est une instance). La première est une fonction qui enregistre une capture d'écran de la page actuellement affichée. Il peut également être utilisé en mode sans tête, ce qui est utile pour vérifier ce qui est affiché à ce moment-là. La seconde est d'obtenir la source html de la page. En vérifiant la capture d'écran et en voyant s'il s'agit de la page cible, je pense que ce sera d'une manière ou d'une autre si vous recherchez le formulaire de saisie et le bouton en jetant un coup d'œil sur html.

Ayons une bonne vie de corab! !!

Recommended Posts

Je souhaite créer un profil utilisateur Ubuntu Chrome avec Colab uniquement
Je veux être OREMO avec setParam!
Je veux convertir une image en WebP avec sucette
Je souhaite créer manuellement une légende avec matplotlib
J'ai essayé de créer un article dans Wiki.js avec SQL Alchemy
Je veux faire ○○ avec les Pandas
Je veux déboguer avec Python
Je souhaite utiliser une bibliothèque externe avec IBM Cloud Functions
Je veux analyser les journaux avec Python
Je veux jouer avec aws avec python
Je veux faire un programme d'automatisation!
Je souhaite créer facilement un modèle de bruit
Je souhaite créer une API qui retourne un modèle avec une relation récursive dans Django REST Framework
Je souhaite afficher uniquement différentes lignes du fichier texte avec diff
Je veux utiliser MATLAB feval avec python
Je souhaite envoyer Gmail avec Python, mais je ne peux pas en raison d'une erreur
Je veux moquer datetime.datetime.now () même avec pytest!
Je souhaite afficher plusieurs images avec matplotlib.
Je veux frapper 100 sciences des données avec Colaboratory
J'ai essayé de créer un environnement Ubuntu 20.04 LTS + ROS2 avec Raspberry Pi 4
Je veux écrire un élément dans un fichier avec numpy et le vérifier.
Je souhaite utiliser le répertoire temporaire avec Python2
J'ai essayé de détecter un objet avec M2Det!
Je ne veux pas utiliser -inf avec np.log
#Unresolved Je veux compiler gobject-introspection avec Python3
Je souhaite créer un type d'implémentation pouvant être branché
Je souhaite utiliser ip vrf avec SONiC
Je veux résoudre APG4b avec Python (chapitre 2)
Je veux recommencer avec Migrate de Django
J'ai essayé de créer un environnement à vérifier régulièrement en utilisant Selenium avec AWS Fargate
Je veux réaliser quelque chose comme AutoHotkey avec AutoKey sur Ubuntu (Kali Linux)
Je veux écrire dans un fichier avec Python
J'ai essayé de créer un environnement avec WSL + Ubuntu + VS Code dans un environnement Windows
Je souhaite envoyer un message d'erreur en japonais avec le formulaire de changement de mot de passe django
Je souhaite extraire uniquement les pods avec l'étiquette spécifiée à l'aide du sélecteur d'étiquettes dans Client-go
Je souhaite détecter une connexion non autorisée à Facebook avec Jubatus (1)
Je veux faire la transition avec un bouton sur le ballon
Je veux gérer l'optimisation avec python et cplex
Je veux escalader une montagne avec l'apprentissage par renforcement
Un moyen simple de créer un module d'importation avec jupyter
J'ai essayé d'implémenter le perceptron artificiel avec python
Je veux hériter de l'arrière avec la classe de données python
Je veux travailler avec un robot en python.
Je veux diviser une chaîne de caractères avec hiragana
Je veux AWS Lambda avec Python sur Mac!
[TensorFlow] Je souhaite traiter des fenêtres avec Ragged Tensor
Je souhaite utiliser OpenJDK 11 avec Ubuntu Linux 18.04 LTS / 18.10
J'ai essayé de créer une application OCR avec PySimpleGUI
Je veux faire fonctionner un ordinateur quantique avec Python
J'ai essayé de trouver la classe alternative avec tensorflow
Je veux lier une variable locale avec lambda
Je souhaite améliorer l'efficacité avec Python même dans les systèmes expérimentaux (2) RS232C et pySerial
Je souhaite améliorer l'efficacité avec Python même dans un système expérimental (1) Installer Anaconda avec Chocolatey
[Solution] Lorsque j'essaye de me connecter à CloudSQL avec GAE, j'obtiens une ImportError uniquement lorsque dev_appserver.
Je souhaite supprimer l'avertissement d'importation non résolue de Python avec vsCode
Je souhaite utiliser facilement les fonctions R avec le notebook ipython
Je souhaite spécifier une autre version de Python avec pyvenv