叫我PT 2020-01-30 18:11 采纳率: 100%
浏览 1393
已采纳

python爬取动态网页时为什么动态网页的url的源码和网页源码不一样?

想用python爬虫爬burberry官网https://cn.burberry.com/mens-new-arrivals-new-in/
的最新上架衣服图片,但网页是动态加载的(有一个查看全部按钮)

图片说明

点击查看更多后有一个XHR请求如图图片说明

修改爬虫header后访问该请求的url,得到的html和在原网页上按f12显示的源码不相同,如图(图一为原网页点击加载全部后的源码,图二为访问url得到的源码)

图片说明
图片说明
为什么会不一样呢????而且不一样的话按照url得到的格式我就没法用美丽汤了,只能正则找图片链接,怎么样得到原网页点击加载全部后的源码呢???(小白刚学爬虫,希望大佬指教)

  • 写回答

1条回答 默认 最新

  • threenewbee 2020-01-30 21:21
    关注

    加载更多是通过ajax异步加载的
    请求的是 Request URL: https://cn.burberry.com/service/shelf/mens-new-arrivals-new-in/?_=1580390113449

    1580390113449应该是时间戳,没有特殊含义,表示1970-1-1到现在的毫秒数

    包括如下附加的http header

    x-content-type-options: nosniff
    x-newrelic-app-data: PxQEVV9WDwQTVVhQAQMEU1MTGhE1AwE2QgNWEVlbQFtcCxYkSRFBBxdFXRJJJH1nH0sSB0VHXgUBHkVbBwoFQBxSFFIWCQQBAFEBVAhNHlNIFAVQVAIPVlYCVQcPA1NeRh1QUg4VBj8=
    x-xss-protection: 1; mode=block
    

    返回的json就是你要的。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵