Essayez de vous connecter à qiita avec Python

Je me suis connecté à qiita en guise d'introduction au scraping Web. Lorsque vous cliquez sur le bouton de connexion, il semble que les données suivantes soient envoyées à https://qiita.com/login.

--utf-8: fixé à ✓ --authenticity_token: il semble être émis lorsque vous configurez une session: --identité: adresse e-mail ou identifiant d'utilisateur --password: mot de passe

Donc, tout ce dont vous avez besoin pour entrer votre code est authenticity_token. J'ai essayé de l'obtenir en utilisant la belle soupe dont je viens de me souvenir.

def get_authenticity_token(session, login_url):
    response = session.get(login_url)
    response.encoding = response.apparent_encoding
    bs = BeautifulSoup(response.text, 'html.parser')
    authenticity_token = str(bs.find(attrs={'name':'authenticity_token'}).get('value'))
    return authenticity_token

Lorsque vous vous connectez, ce sera comme suit.

import requests
import os
from bs4 import BeautifulSoup


user_name = 'user_name'
user_password = 'user_password'
login_url = 'https://qiita.com/login'


login_form = {
    'utf-8':'✓',
    'authenticity_token':'token',
    'identity':user_name,
    'password':user_password
}
    

def get_authenticity_token(session, login_url):
    response = session.get(login_url)
    response.encoding = response.apparent_encoding
    bs = BeautifulSoup(response.text, 'html.parser')
    authenticity_token = str(bs.find(attrs={'name':'authenticity_token'}).get('value'))
    return authenticity_token


if __name__ == '__main__':
    session = requests.Session()
    authenticity_token = get_authenticity_token(session, login_url)
    login_form['authenticity_token'] = authenticity_token
    session.post(login_url, login_form)

Recommended Posts

Essayez de vous connecter à qiita avec Python
Essayez d'exploiter Facebook avec Python
Essayez de calculer Trace en Python
Essayez de reproduire un film couleur avec Python
Essayez de travailler avec des données binaires en Python
Comment utiliser BigQuery en Python
Pour faire fonctionner la station d'horodatage en Python
Essayez de gratter avec Python.
Se connecter correctement en Python
Essayez gRPC en Python
Essayez 9 tranches en Python
Premiers pas pour essayer Google CloudVision en Python
Essayez d'implémenter Oni Mai Tsuji Miserable avec python
Calculons en fait le problème statistique avec Python
3.14 π jour, alors essayez de sortir en Python
[REAPER] Comment jouer à Reascript avec Python
Essayez auto pour évaluer automatiquement Enum dans Python 3.6
Convertissez des PDF en images en masse avec Python
Essayez de résoudre le diagramme homme-machine avec Python
Essayez de dessiner une courbe de vie avec python
Essayez de créer un code de "décryptage" en Python
Essayez de générer automatiquement des documents Python avec Sphinx
Connectez-vous à Yahoo Business avec Selenium Python
Essayez de calculer RPN avec Python (pour les débutants)
Essayez de travailler avec Mongo en Python sur Mac
Comment utiliser tkinter avec python dans pyenv
Essayez de créer un groupe de dièdre avec Python
Essayez d'utiliser l'API ChatWork et l'API Qiita en Python
Essayez de détecter les poissons avec python + OpenCV2.4 (inachevé)
Essayez de défier le sol par récursif
Connectez-vous à BigQuery avec Python
Comment convertir / restaurer une chaîne avec [] en python
Essayez de résoudre le livre des défis de programmation avec python3
Grattage au sélénium en Python
Essayez de créer un module Python en langage C
Pour vider stdout en Python
Exploitez LibreOffice avec Python
Faisons un outil de veille de commande avec python
Comment faire un calcul de hachage avec Salt en Python
Grattage avec chromedriver en python
Expliquez en détail comment créer un son avec python
Essayez de comprendre Python soi
Essayez d'améliorer votre propre quiz d'introduction avec Python
Débogage avec pdb en Python
Essayez de résoudre le problème d'affectation du médecin de formation avec Python
Essayez la sortie Python avec Haxe 3.2
Connectez-vous au site Web en Python
Connectez-vous à Wikipedia avec Python
Publiez sur Slack avec Python 3
Essayez d'implémenter la mémoire associative par hop field network en Python
Comment exécuter des tests avec Python unittest
Essayez le fonctionnement de la base de données avec Python et visualisez avec d3
Essayez d'incorporer Python dans un programme C ++ avec pybind11
Gérer les sons en Python
Grattage avec du sélénium en Python
Convertissez l'image au format .zip en PDF avec Python
Super Primer to python - Premiers pas avec python3.5 en 3 minutes
Essayez LINE Notify avec Python
J'étais accro au grattage avec Selenium (+ Python) en 2020