【代码分享】Python 网页定时访问程序

这个程序是一个基础的框架,你可以根据自己的需求进行扩展,例如:

  • 记录日志: 将每次访问的结果(成功/失败、状态码等)写入文件。
  • 自定义请求头: 如果某些网站需要特定的User-Agent或其他请求头。
  • 代理设置: 如果您需要通过代理访问。
  • 更复杂的检查: 不仅仅检查状态码,还可以检查网页内容是否包含特定关键词,以确定网页是否正常。

python 网页定时访问程序

它会按照指定的时间间隔访问一个网页:

import requests
import time

def visit_website_periodically(url, interval_seconds):
    """
    按照指定时间间隔访问网页。

    Args:
        url (str): 要访问的网页URL。
        interval_seconds (int): 访问之间的时间间隔(秒)。
    """
    print(f"程序将每隔 {interval_seconds} 秒访问一次: {url}")
    try:
        while True:
            print(f"\n[{time.strftime('%Y-%m-%d %H:%M:%S')}] 正在访问: {url}")
            try:
                response = requests.get(url)
                response.raise_for_status()  # 检查HTTP请求是否成功 (2xx状态码)
                print(f"访问成功!HTTP 状态码: {response.status_code}")
                # 如果需要,您可以打印网页内容的一部分,例如:
                # print("网页内容前200字符:\n", response.text[:200])
            except requests.exceptions.RequestException as e:
                print(f"访问失败!错误: {e}")
            
            time.sleep(interval_seconds) # 等待指定的时间间隔
    except KeyboardInterrupt:
        print("\n程序已停止。")
    except Exception as e:
        print(f"发生意外错误: {e}")

if __name__ == "__main__":
    # 配置要访问的网址和时间间隔
    target_url = "https://www.example.com"  # 替换为您要访问的网址
    visit_interval = 10  # 访问间隔,单位为秒

    visit_website_periodically(target_url, visit_interval)

如何使用

  1. 安装requests:
    如果还没有安装requests库,请在命令行中运行以下命令:

    pip install requests
    
  2. 保存代码:
    将上面的代码保存为一个.py文件,例如web_visitor.py

  3. 修改配置:
    在代码中找到target_urlvisit_interval变量:

    • target_url = "https://www.example.com": 将https://www.example.com替换为您希望定时访问的实际网址
    • visit_interval = 10: 将10替换为您希望的时间间隔(秒)。例如,如果您想每分钟访问一次,就设置为60
  4. 运行程序:
    打开命令行或终端,导航到保存文件的目录,然后运行:

    python web_visitor.py
    

程序说明

  • requests: 用于发送HTTP请求,这里使用requests.get(url)来获取网页内容。
  • time: time.sleep(interval_seconds)函数会使程序暂停执行指定秒数,从而实现定时访问。
  • visit_website_periodically函数:
    • 接受两个参数:url(要访问的网址)和interval_seconds(时间间隔)。
    • 使用while True创建一个无限循环,使程序持续运行。
    • 每次循环中,它会尝试使用requests.get()访问网址。
    • response.raise_for_status(): 这是一个非常有用的方法,如果HTTP请求返回的状态码是错误码(如4xx或5xx),它会抛出HTTPError异常,方便我们捕获和处理错误。
    • 错误处理: 使用try...except块来捕获requests.exceptions.RequestException(网络请求相关的错误)和KeyboardInterrupt(当您按Ctrl+C停止程序时)。
  • if __name__ == "__main__":: 这是Python的标准用法,确保只有在直接运行这个脚本时,target_urlvisit_interval才会被设置和执行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

技术与健康

你的鼓励将是我最大的创作动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值