V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ungrown
V2EX  ›  分享发现

[ Python 相关 NSFW 注意 ] requests.get 同一个 url,在 ubuntu 和 windows 系统中,返回的 html 差异巨大

  •  
  •   ungrown · 2023-07-06 10:20:13 +08:00 · 695 次点击
    这是一个创建于 500 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我不知道原因,可能原因在网站那边,不是所有网站的普遍现象,但是……

    import requests
    url='https://www.pornhub.com/gif/44305571'
    r=requests.get(url)
    len(r.content)
    

    windows 这边得到的 content 长度 36137 字节,保存成 html 查看,778 行。不出所料很多页面元素都缺失,很多 script 内容不在其中。

    ubuntu 那边长度 337322 ,3700 行。html 代码和浏览器 F12 看到的完整页面代码几乎一模一样!

    不理解但大受震撼.jpg

    lsk569937453
        1
    lsk569937453  
       2023-07-06 14:11:00 +08:00
    1.直接抓包看下最终发送的 http 请求是啥,有可能 header 不一样。
    2.用命令行 curl 测试一下。
    ungrown
        2
    ungrown  
    OP
       2023-07-06 15:06:36 +08:00
    @lsk569937453 #1 有道理,我回头试试
    ungrown
        3
    ungrown  
    OP
       2023-07-06 15:07:09 +08:00
    @lsk569937453 #1 不过 header 是一样的,r.request.headers 检查过
    joApioVVx4M4X6Rf
        4
    joApioVVx4M4X6Rf  
       2023-07-07 09:46:11 +08:00   ❤️ 1
    你把 url 改成 https://httpbin.org/get ,看看返回的是什么。httpbin 能把你的请求原封不动返回,方便 debug
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3011 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 13:43 · PVG 21:43 · LAX 05:43 · JFK 08:43
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.