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

如何用BeautifulSoup获取Instagram个人主页的简介内容?

问题解决方法

一、爬虫返回空列表的原因与解决

Instagram个人主页内容是动态渲染的,你用urlopen获取的只是页面初始静态HTML,带_aacl _aacp _aacu _aacx _aad6 _aade类的元素是通过JavaScript动态加载的,所以BeautifulSoup在静态源码里找不到它们。

解决思路1:解析页面内嵌的JSON数据

Instagram会把用户核心信息(包括简介)打包在页面的特定script标签里,直接提取JSON就能获取数据,无需依赖动态渲染。示例代码:

from urllib.request import urlopen
import json
from bs4 import BeautifulSoup

userpage = urlopen("https://instagram.com/tarantinoxx/")
bs = BeautifulSoup(userpage, "lxml")

# 尝试提取application/ld+json格式的用户数据
script_tag = bs.find('script', type='application/ld+json')
if script_tag:
    user_data = json.loads(script_tag.string)
    bio = user_data.get('description')
    print(bio)
else:
    # 若上面的标签不存在,尝试__NEXT_DATA__标签
    next_data = bs.find('script', id='__NEXT_DATA__')
    if next_data:
        data = json.loads(next_data.string)
        bio = data['props']['pageProps']['user']['biography']
        print(bio)

解决思路2:用Selenium模拟浏览器加载

如果JSON方法失效,可通过Selenium模拟真实浏览器加载页面,等动态内容渲染完成后抓取:

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

driver = webdriver.Chrome()  # 需提前安装ChromeDriver并配置环境变量
driver.get("https://instagram.com/tarantinoxx/")

# 等待简介元素加载完成
bio_element = WebDriverWait(driver, 10).until(
    EC.presence_of_element_located((By.CLASS_NAME, "_aacl._aacp._aacu._aacx._aad6._aade"))
)
print(bio_element.text)

driver.quit()

二、Instagram API注册与使用

Instagram API已整合进Meta Graph API,操作步骤如下:

  • 注册Meta开发者账号:用Facebook账号登录Meta开发者平台,完成身份验证(填写基础信息,验证邮箱/手机号)。
  • 创建应用:在后台点击"创建应用",选择"消费者"类型(个人使用选此),填写应用名称、联系邮箱完成创建。
  • 添加Instagram产品:在应用产品列表中找到"Instagram Graph API"并添加,关联你的Instagram账号(需为业务账号,无则可将个人账号转为业务账号)。
  • 申请权限:根据需求申请user_profile等权限(用于获取用户简介、头像等基础信息)。
  • 获取访问令牌:通过平台工具生成短期访问令牌,或通过OAuth流程生成长期令牌,之后即可调用API接口获取数据。

注意:API调用有速率限制,需遵守Meta开发者条款,避免违规导致账号受限。

内容的提问来源于stack exchange,提问作者Deivid Willy

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 08:25:20