Ein Themenpark, in dem aufgrund der jüngsten Verbreitung von Infektionskrankheiten Reservierungen für Tickets erforderlich sind! Jetzt kann ich meinen Traumpass nicht mehr bekommen, ohne den ganzen Tag auf meinen Computer oder mein Smartphone zu starren und die URL wiederholt zu drücken.
Also dachte ich, es sei ein guter Zeitpunkt, um das frustrierte Schaben zu üben, und versuchte, das Schaben zu verwenden, um meinen Pass so einfach wie möglich zu bekommen.
Auf der Website hier können Sie sehen, wie schwierig es ist, einen Traumlandpass zu erhalten.
Die erste Barriere besteht darin, dass die im Internet angezeigte URL zu der Seite springt, auf der die aktuelle Seite aufgrund übermäßigen Zugriffs nicht geöffnet werden kann.
Das Ziel dieser Zeit ist es zunächst, darüber hinwegzukommen und ein Programm zu implementieren, das jede Sekunde auf diese URL zugreift und Sie kontaktiert, da es einfach ist, eine Verbindung zu Ihrer E-Mail-Adresse herzustellen, wenn Sie darauf zugreifen können.
Auf python3 ausführen. Alle abhängigen Bibliotheken sollten mit pip3 installiert werden können. Wenn Sie es also noch nicht installiert haben
$pip3 install hoge
Die Umgebung sollte bereit sein.
main.py
import requests
from bs4 import BeautifulSoup
import time
import gmail
for i in range(100000):
urlName = "https://reserve.tokyodisneyresort.jp/ticket/search/"
url = requests.get(urlName)
soup = BeautifulSoup(url.content, "html.parser")
title = soup.find("h1").text
print(i)
if(title!="Hinweis vom Tokyo Disney Resort"):
print("SUCEED!")
gmail.send()
print(soup)#Alle Informationen ausgegeben
break
print("FAILURE")
time.sleep(1)
Da Google Mail ein später beschriebenes Skript ist, ist keine Installation erforderlich.
Überprüfen Sie hier den Durchfluss. Greifen Sie zunächst in einer langen oder Endlosschleife auf den Link zu. Wenn der Titel "Hinweis von einem bestimmten Themenpark" lautet, schlägt der Zugriff fehl. Versuchen Sie es erneut. Wenn der Titel ein anderer Titel ist, ist der Zugriff erfolgreich. Senden Sie daher Google Mail. Es endet damit, dass alle HTML-Informationen der Site ausgespuckt werden.
Hier möchte ich in Zukunft eine vollständige Automatisierung durchführen, damit HTML-Informationen standardmäßig ausgegeben werden.
Schreiben Sie als Nächstes ein Skript zum Senden von Google Mail.
gmail.py
import smtplib
from email.mime.text import MIMEText
from email.utils import formatdate
def send():
FROM_ADRESS = "Mead auf der Seite des Mailversands"
PASSWORD = "Passwort des Mail-Absenders"
TO_ADRESS = "Mail des Empfängers"
smtpobj = smtplib.SMTP('smtp.gmail.com', 587)
smtpobj.ehlo()
smtpobj.starttls()
smtpobj.ehlo()
smtpobj.login(FROM_ADRESS, PASSWORD)
#Beschreiben Sie den Inhalt der E-Mail
msg = MIMEText('https://reserve.tokyodisneyresort.jp/ticket/search/')
msg['Subject'] = 'EASY TO ACCESS NOW!'
msg['From'] = FROM_ADRESS
msg['To'] = TO_ADRESS
msg['Date'] = formatdate()
smtpobj.sendmail(FROM_ADRESS,TO_ADRESS,msg.as_string())
smtpobj.close()
Implementiert, damit die URL für den Ticketkauf gesendet werden kann, wenn send () mit dem minimal erforderlichen Code gelesen wird. Beachten Sie dabei, dass gmail.send () nur funktioniert, wenn dem Absender der E-Mail in den Sicherheitseinstellungen von Google Mail der Zugriff über eine unsichere App gewährt wird. Sie müssen die zulässige Einstellung ändern, bevor Sie sie verschieben (standardmäßig nicht zulässig).
Wenn Sie den gesamten Code kopieren, einfügen und im selben Verzeichnis wie main.py, gmail.py speichern
$python3 main.py
Sollte in ausgeführt werden.
Ich möchte das Scraping mit Python studieren, um Einkäufe mit den von diesem Programm erhaltenen HTML-Informationen vollautomatisch zu tätigen.
Recommended Posts