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

能否通过GET请求直接从HTML页面抓取Twitter帖子图片?

问题:直接抓取Twitter HTML无法获取图片,返回空页面

尝试通过requests库抓取Twitter帖子的HTML来提取图片,但执行代码后仅得到包含Twitter图标的空页面,无法获取到帖子内容及图片。

尝试的代码

import requests

# 替换为目标Twitter帖子链接
url = '<twitter post link here>'
# 发送GET请求
response = requests.get(url)

# 检查请求是否成功
if response.status_code == 200:
    # 保存HTML内容到变量
    html_content = response.text
    print(html_content)

    # 将内容写入本地HTML文件
    with open("my_file.html", "w", encoding="utf-8") as f:
        f.write(html_content)
else:
    print(f'请求失败,状态码: {response.status_code}')

问题原因分析

你推测是模态框导致的问题,但实际核心原因是Twitter采用前端动态渲染技术:

  • 直接用requests发送请求时,服务器仅返回基础的页面框架(包含静态图标等资源),实际的帖子内容(包括图片)是通过浏览器端的JavaScript动态加载的,不会出现在初始的HTML响应中。
  • 这类动态渲染的页面,需要模拟浏览器环境执行JavaScript才能获取到完整的页面内容,单纯抓取静态HTML无法拿到目标数据。

可行的解决方向

  • 模拟浏览器渲染:使用selenium、playwright等工具,模拟真实浏览器加载页面,等待JavaScript执行完毕后,再定位并提取图片元素;
  • 调用官方API:申请Twitter开发者账号,通过官方API直接获取帖子的媒体资源信息,这是最稳定且合规的方式。

内容的提问来源于stack exchange,提问作者Ferruccio Islam Bisceglia

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 19:38:21