You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Instagram无效用户名页面仍返回200状态码,如何修正检测逻辑?

修正Instagram用户名存在性检测的代码

问题原因

Instagram对不存在的用户名不会返回404状态码,而是返回200并跳转到显示"Sorry, this page isn't available."的页面,因此仅通过状态码判断会失效。

解决方案

需要读取页面内容,检查是否包含用户名不存在的特征文本。以下是修正后的代码:

import urllib.request
from urllib.error import HTTPError, URLError

username = input('Enter username: ')
url_instagram = f'https://www.instagram.com/{username}'

instagram_exists = False

try:
    with urllib.request.urlopen(url_instagram) as response:
        # 读取页面内容并解码为字符串
        page_content = response.read().decode('utf-8')
        # 检查是否存在用户不存在的特征文本
        if "Sorry, this page isn't available." not in page_content:
            instagram_exists = True
except (HTTPError, URLError) as e:
    # 处理网络错误或非200状态码的情况
    instagram_exists = False

print(f"Username exists: {instagram_exists}")

代码说明

  • 不再仅依赖状态码,而是读取页面实际内容进行判断
  • 检测页面中是否包含Instagram用于提示用户不存在的特定文本
  • 新增URLError捕获,处理网络连接失败等异常情况
  • 使用with语句自动管理请求资源,避免资源泄漏

内容的提问来源于stack exchange,提问作者Hamza Khan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 13:10:46