Table des matières
Configurer l'environnement
Récupérer le contenu du site Web
保存并比较网站内容
自动化网站监控
结论
Maison développement back-end Tutoriel Python Script Python pour surveiller les modifications du site Web

Script Python pour surveiller les modifications du site Web

Aug 29, 2023 pm 12:25 PM
监控 Modifications du site Web script python

Script Python pour surveiller les modifications du site Web

À l'ère numérique d'aujourd'hui, connaître les dernières modifications sur votre site Web est crucial à diverses fins, telles que le suivi des mises à jour sur le site Web de votre concurrent, la surveillance de la disponibilité des produits ou rester informé des informations importantes. Vérifier manuellement les modifications apportées à votre site Web peut prendre du temps et être inefficace. C’est là que l’automatisation entre en jeu.

Dans cet article de blog, nous explorerons comment créer un script Python pour surveiller les modifications d'un site Web. En tirant parti de la puissance de Python et de certaines bibliothèques pratiques, nous pouvons automatiser le processus de récupération du contenu d'un site Web, le comparer aux versions précédentes et nous informer de toute modification. Cela nous permet de rester proactifs et de réagir rapidement aux mises à jour ou modifications apportées aux sites que nous surveillons.

Configurer l'environnement

Avant de commencer à écrire des scripts pour surveiller les modifications du site Web, nous devons configurer un environnement Python et installer les bibliothèques nécessaires. Suivez ces étapes pour commencer -

  • Installez Python Téléchargez et installez Python sur votre système si vous ne l'avez pas déjà fait. Vous pouvez visiter le site officiel de Python (https://www.python.org/) et télécharger la dernière version compatible avec votre système d'exploitation. Assurez-vous de sélectionner l'option permettant d'ajouter Python à votre chemin système lors de l'installation.

  • Créer un nouvel environnement virtuel Python (facultatif) Il est recommandé de créer un environnement virtuel pour ce projet afin de garder les dépendances isolées. Ouvrez un terminal ou une invite de commande, accédez au répertoire du projet souhaité et exécutez la commande suivante :

python -m venv website-monitor-env
Copier après la connexion

Cela créera un nouvel environnement virtuel appelé "website-monitor-env" dans le répertoire de votre projet.

  • Activer l'environnement virtuel Activez l'environnement virtuel en exécutant la commande appropriée en fonction de votre système d'exploitation :

Pour Windows

website-monitor-env\Scripts\activate.bat
Copier après la connexion

Pour macOS/Linux

source website-monitor-env/bin/activate
Copier après la connexion

Vous devriez voir le nom de l'environnement virtuel dans l'invite de commande ou le terminal, indiquant que vous travaillez dans un environnement virtuel.

  • Installez les bibliothèques requises Après avoir activé l'environnement virtuel, installons les bibliothèques nécessaires. Dans un terminal ou une invite de commande, exécutez la commande suivante :

pip install requests beautifulsoup4
Copier après la connexion
  • La bibliothèque "requests" nous aidera à récupérer le contenu du site Web, tandis que "beautifulsoup4" nous aidera à analyser le HTML.

Après avoir configuré l'environnement Python et installé les bibliothèques requises, nous pouvons commencer à créer le script de surveillance des modifications du site Web. Dans la section suivante, nous passerons en revue le processus de récupération du contenu d'un site Web à l'aide de la bibliothèque « requests ».

Récupérer le contenu du site Web

Pour surveiller les modifications du site Web, nous devons récupérer le contenu actuel du site Web et le comparer avec les versions précédemment enregistrées. Dans cette section, nous utiliserons la bibliothèque « requêtes » pour obtenir le contenu du site Web. Veuillez suivre ces étapes :

  • Importez les modules nécessairesOuvrez votre script Python et importez d'abord les modules requis

import requests
from bs4 import BeautifulSoup
Copier après la connexion

Le module « request » gérera les requêtes HTTP, tandis que la classe « BeautifulSoup » du module « bs4 » nous aidera à analyser le contenu HTML.

  • Spécifiez l'URL du site Web Déterminez l'URL du site Web que vous souhaitez surveiller. Par exemple, nous utilisons l'URL « https://example.com » à des fins de démonstration. Remplacez-le par l'URL réelle du site Web que vous souhaitez surveiller.

url = "https://example.com"
Copier après la connexion
  • 发送 GET 请求并检索内容 使用“requests.get()”方法向网站 URL 发送 GET 请求并检索内容。将响应分配给变量以进行进一步处理。

response = requests.get(url)
Copier après la connexion
  • 检查响应状态最好检查响应的状态以确保请求成功。我们将使用“response.status_code”属性,该属性应在请求成功时返回状态代码 200。

if response.status_code == 200:
    # Proceed with further processing
else:
    print("Failed to retrieve website content. Status code:", response.status_code)
    # Handle error or exit the script
Copier après la connexion

检索网站内容后,您可以将其与之前保存的版本进行比较,以确定是否有任何更改。

保存并比较网站内容

一旦我们检索了网站内容,我们需要将其保存以供将来比较。在本节中,我们将讨论如何保存内容并将其与以前保存的版本进行比较。请按照以下步骤操作

  • 保存初始网站内容 − 检索网站内容后,将其保存到文件中以供将来比较。创建一个新文件并使用“write()”方法将内容写入其中。例如

with open("website_content.txt", "w") as file:
    file.write(response.text)
Copier après la connexion
Copier après la connexion

这会将网站内容保存在当前目录中名为“website_content.txt”的文件中。

  • 与之前的内容进行比较 为了检测更改,我们需要将当前网站内容与之前保存的版本进行比较。从保存的文件中读取内容并将其与新内容进行比较。例如

with open("website_content.txt", "r") as file:
    previous_content = file.read()

if response.text == previous_content:
    print("No changes detected.")
else:
    print("Website content has changed.")
    # Perform further actions for handling the changes
Copier après la connexion

在这里,我们将响应中的新内容与从文件中读取的内容进行比较。如果它们匹配,则不会检测到任何更改。否则,我们会打印一条消息,表明网站内容已更改。

  • 更新保存的内容  如果检测到更改,我们应该使用新版本更新保存的内容。这将确保下一次比较是针对最新内容进行的。使用与之前相同的文件写入逻辑来更新内容:

with open("website_content.txt", "w") as file:
    file.write(response.text)
Copier après la connexion
Copier après la connexion

通过覆盖文件,我们将新内容保存为最新版本。

通过执行以下步骤,您可以保存初始网站内容,将其与未来版本进行比较,并识别任何更改。在下一节中,我们将探讨如何使用 Python 脚本自动执行此过程。

自动化网站监控

每次我们想要监视网站的更改时手动运行脚本可能是乏味且不切实际的。在本节中,我们将讨论如何使用 Python 脚本和调度工具自动化网站监控过程。请按照以下步骤操作:

  • 创建 Python 脚本 打开您喜欢的 Python 编辑器或 IDE 并创建一个新的 Python 脚本文件。您可以将其命名为“website_monitor.py”。

  • 导入必要的模块 在脚本的开头,导入所需的模块,包括用于发出 HTTP 请求的“请求”和用于在请求之间添加延迟的“时间”。此外,导入您可能需要的任何其他模块,用于根据网站更改发送通知或执行其他操作。

import requests
import time
# Import other modules as needed
Copier après la connexion
  • 定义网站网址和监控间隔  通过将要监控的网站的 URL 分配给变量来设置它。另外,指定您要检查更改的时间间隔。此间隔可以以秒、分钟或任何其他合适的单位为单位。

website_url = "https://example.com"
monitoring_interval = 300  # Check every 5 minutes
Copier après la connexion
  • 创建监控函数 定义一个封装监控逻辑的函数。该函数将负责发出 HTTP 请求、比较网站内容并根据更改执行任何所需的操作。

def monitor_website():
    while True:
        # Make the HTTP request to the website
        response = requests.get(website_url)

        # Compare the current content with the saved content
        with open("website_content.txt", "r") as file:
            previous_content = file.read()

        if response.text != previous_content:
            print("Website content has changed.")
            # Perform desired actions for handling the changes

        # Update the saved content
        with open("website_content.txt", "w") as file:
            file.write(response.text)

        # Wait for the specified interval before the next check
        time.sleep(monitoring_interval)
Copier après la connexion
  • 调用监控函数 在脚本末尾添加对 monitor_website() 函数的调用以启动监控过程。

monitor_website()
Copier après la connexion
  • 保存脚本  将 Python 脚本文件保存在系统上的适当位置。

  • 安排脚本  要自动化监控过程,您可以使用 cron(在基于 Unix 的系统上)或任务计划程序(在 Windows 上)等调度工具。设置计划以所需的时间间隔执行脚本,确保其在后台连续运行。

此脚本将定期检查网站内容的更改并相应地执行任何指定的操作。

结论

监控网站更改对于及时了解最新内容或检测可能影响您的业务或个人利益的任何修改至关重要。在本文中,我们探讨了如何创建 Python 脚本来监控网站更改。通过利用 Python 及其库的强大功能,我们可以自动化该过程并及时收到有关任何修改的通知。

我们首先了解网站监控的重要性及其带来的好处。然后,我们深入研究了构建监控脚本所需的步骤。我们学习了如何发出 HTTP 请求、比较网站内容以及根据更改执行操作。此外,我们还讨论了使用调度工具自动执行脚本的选项,确保无需人工干预即可持续监控。

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Connaissez-vous quelques raisons pour lesquelles les tâches planifiées de crontab ne sont pas exécutées ? Connaissez-vous quelques raisons pour lesquelles les tâches planifiées de crontab ne sont pas exécutées ? Mar 09, 2024 am 09:49 AM

Résumé de quelques raisons pour lesquelles les tâches planifiées crontab ne sont pas exécutées. Heure de mise à jour : 9 janvier 2019 09:34:57 Auteur : Hope on the field Cet article résume et vous présente principalement quelques raisons pour lesquelles les tâches planifiées crontab ne sont pas exécutées. tout le monde Des solutions sont données pour chacun des déclencheurs possibles, qui ont une certaine valeur de référence et d'apprentissage pour les collègues qui rencontrent ce problème. Les étudiants dans le besoin peuvent suivre l'éditeur pour apprendre ensemble. Préface : J'ai récemment rencontré des problèmes au travail. La tâche n'a pas été exécutée. Plus tard, lors d'une recherche sur Internet, j'ai découvert qu'Internet mentionnait principalement ces cinq incitations : 1. Le service crond n'est pas démarré n'est pas une fonction du noyau Linux, mais repose sur un cron.

Explorer Orange3 : ouvrir un nouveau monde de data mining et d'apprentissage automatique ! Explorer Orange3 : ouvrir un nouveau monde de data mining et d'apprentissage automatique ! Mar 04, 2024 pm 08:16 PM

Orange3 est un puissant outil open source de visualisation de données et d'apprentissage automatique. Il dispose de riches fonctions de traitement, d'analyse et de modélisation des données, offrant aux utilisateurs des solutions simples et rapides d'exploration de données et d'apprentissage automatique. Cet article présentera brièvement les fonctions de base et l'utilisation d'Orange3, et le combinera avec des scénarios d'application réels et des cas de code Python pour aider les lecteurs à mieux maîtriser les compétences d'utilisation d'Orange3. Les fonctions de base d'Orange3 incluent le chargement des données, le prétraitement des données, la sélection des fonctionnalités, l'établissement et l'évaluation du modèle, etc. Les utilisateurs peuvent utiliser l'interface intuitive pour glisser-déposer des composants afin de créer facilement des processus de données. Dans le même temps, des tâches plus complexes de traitement de données et de modélisation peuvent également être réalisées via des scripts Python. Ci-dessous, nous passerons par un exercice pratique

Comment lire des données Excel dans Pycharm Comment lire des données Excel dans Pycharm Apr 03, 2024 pm 08:42 PM

Comment lire des données Excel avec PyCharm ? Les étapes sont les suivantes : installer la bibliothèque openpyxl ; importer la bibliothèque openpyxl ; charger le classeur Excel ; accéder aux cellules de la feuille de calcul ;

Comment répéter une chaîne dans le didacticiel de chaîne répétitive python_python Comment répéter une chaîne dans le didacticiel de chaîne répétitive python_python Apr 02, 2024 pm 03:58 PM

1. Ouvrez d’abord pycharm et accédez à la page d’accueil de pycharm. 2. Créez ensuite un nouveau script python, cliquez avec le bouton droit sur nouveau - cliquez sur fichier python. 3. Entrez une chaîne, code : s="-". 4. Ensuite, vous devez répéter les symboles de la chaîne 20 fois, code : s1=s*20 5. Entrez le code de sortie d'impression, code : print(s1). 6. Enfin, exécutez le script et vous verrez notre valeur de retour en bas : - répété 20 fois.

Tutoriel d'installation et de configuration de Flask : un outil pour créer facilement des applications Web Python Tutoriel d'installation et de configuration de Flask : un outil pour créer facilement des applications Web Python Feb 20, 2024 pm 11:12 PM

Tutoriel d'installation et de configuration de Flask : Un outil pour créer facilement des applications Web Python, des exemples de code spécifiques sont nécessaires Introduction : Avec la popularité croissante de Python, le développement Web est devenu l'une des compétences nécessaires pour les programmeurs Python. Pour réaliser du développement web en Python, nous devons choisir un framework web adapté. Parmi les nombreux frameworks Web Python, Flask est un framework simple, facile à utiliser et flexible qui est privilégié par les développeurs. Cet article présentera l'installation du framework Flask,

Quels sont les outils de requête de sous-domaines de sites Web ? Quels sont les outils de requête de sous-domaines de sites Web ? Mar 07, 2024 am 09:49 AM

Les outils de requête de sous-domaine de site Web comprennent : 1. Whois Lookup : peut interroger les informations d'enregistrement d'un nom de domaine, y compris les noms de sous-domaines ; 2. Sublist3r : peut analyser automatiquement le nom de sous-domaine d'un nom de domaine à l'aide de moteurs de recherche et d'autres outils ; . DNSdumpster : peut interroger des informations telles que le nom de sous-domaine, l'adresse IP et l'enregistrement DNS du nom de domaine ; 4. Fierce : vous pouvez interroger les informations de nom de sous-domaine du nom de domaine via le serveur DNS : 5. Nmap ; 7. Google Piratage.

Erreurs de surveillance Laravel : améliorer la stabilité des applications Erreurs de surveillance Laravel : améliorer la stabilité des applications Mar 06, 2024 pm 04:48 PM

La surveillance des erreurs dans Laravel est un élément important de l'amélioration de la stabilité des applications. Au cours du processus de développement, diverses erreurs seront inévitablement rencontrées, et la manière de détecter et de résoudre ces erreurs en temps opportun est l'une des clés pour garantir le fonctionnement normal de l'application. Laravel fournit une multitude d'outils et de fonctions pour aider les développeurs à surveiller et à gérer les erreurs. Cet article présentera certaines des méthodes importantes et joindra des exemples de code spécifiques. 1. Utiliser la journalisation La journalisation est l'un des moyens importants de surveillance des erreurs. Laravel dispose d'un puissant système de journalisation intégré, les développeurs

Comment appeler le framework du moteur de workflow Python Comment appeler le framework du moteur de workflow Python Mar 02, 2024 am 09:00 AM

Pour appeler le framework du moteur de workflow Python, vous devez suivre les étapes ci-dessous : Installer le framework du moteur de workflow : Tout d'abord, vous devez installer le framework du moteur de workflow requis dans l'environnement Python. Les frameworks courants de moteur de flux de travail Python incluent Celery, airflow, Luigi, etc. Vous pouvez utiliser la commande pip pour installer le framework requis, par exemple : pipinstallcelery Importer le framework du moteur de workflow : Dans le script Python, vous devez importer le framework du moteur de workflow utilisé. Importez le framework dans le script à l'aide de l'instruction import, par exemple : importcelery Définir les tâches de workflow : Ensuite, vous devez définir les tâches de workflow. Les tâches de flux de travail sont

See all articles