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

2023-07-06 10:20:13 +08:00
 ungrown

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

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

696 次点击
所在节点    分享发现
4 条回复
lsk569937453
2023-07-06 14:11:00 +08:00
1.直接抓包看下最终发送的 http 请求是啥,有可能 header 不一样。
2.用命令行 curl 测试一下。
ungrown
2023-07-06 15:06:36 +08:00
@lsk569937453 #1 有道理,我回头试试
ungrown
2023-07-06 15:07:09 +08:00
@lsk569937453 #1 不过 header 是一样的,r.request.headers 检查过
joApioVVx4M4X6Rf
2023-07-07 09:46:11 +08:00
你把 url 改成 https://httpbin.org/get ,看看返回的是什么。httpbin 能把你的请求原封不动返回,方便 debug

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/954495

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX