Sur un site normal, vous pouvez souvent obtenir des informations en utilisant des paramètres html, utilisez donc l'extension Firefix Selenium IDE. Vous pouvez facilement obtenir des informations simplement en les utilisant. Cependant, les sites aspx ont des informations à l'intérieur de la source, et il n'est pas possible d'obtenir des informations en utilisant uniquement les paramètres html. Du coup, j'ai décidé de ne pas chuter pour (!) Les sites Aspx en jouant un peu avec la source.
Mac OS Sierra est considéré comme l'environnement d'exécution.
Exécutez la commande suivante à partir du terminal.
pip install selenium bs4
brew install geckodriver
Ici, nous utilisons l'IDE Selenium. Enregistrez le comportement répétitif attendu sur le site que vous souhaitez obtenir avec Selenium IDE. Ensuite, la commande sera affichée dans le tableau.
Si vous pouvez confirmer la commande Sélectionnez la langue que vous souhaitez exporter à partir d'ici et exporter, et la source à ce moment-là sera affichée. Après avoir enregistré avec python2 / unittest / webdriver, lorsque vous ouvrez le source,
def test_<Titre enregistré>(self):
Je pense qu'il y a une partie, mais c'est là que le traitement proprement dit est effectué.
Il existe des processus itératifs dans le cas de python, mais je veux essentiellement répéter les pages 1-30, donc j'utilise range. Si la partie que vous souhaitez répéter est la suivante
- driver.find_element_by_link_text("page 1").click()
+ for i range(1, 30):
+ driver.find_element_by_link_text("page 1").click()
Mettez for i range (1, 30):
devant l'endroit où vous voulez répéter la phrase répétée sous la forme de, et indentez uniquement l'endroit que vous voulez répéter.
Après cela, trouvez un nombre correspondant au nombre de pages, tel que page 1
, et changez-le en page" + str (i) + "
.
J'utilise l'outil de formatage html pour obtenir les informations de la page, mais cette fois j'utiliserai BeautifulSoup4.
Vers le haut de la source
import unittest, time, re
+from bs4 import BeautifulSoup
Et au moment où vous voulez libérer la source
data = driver.page_source.encode('utf-8')
html = BeautifulSoup(data)
print(html.select("<sélecteur>"))
Veuillez coller. Faites un clic droit sur la balise html cible dans la fenêtre qui apparaît dans "Vérification des éléments" qui apparaît lorsque vous cliquez avec le bouton droit sur le <sélecteur>.
Choisissez ce chemin CSS et remplacez-le par
Vous êtes maintenant prêt à courir. Ouvrez le terminal
python <nom de fichier>.py > test.html
Si test.html est créé, il réussit.
Ce n'était pas du tout de la non-programmation, donc je serais heureux si quelqu'un qui connaît une méthode plus non-plugging pouvait me le dire.
Recommended Posts