不同内容的网页源代码一样 是如何实现的?

  • l
    luzg2008
    如题,请高手分析一下德国最大的药妆店网站 dm.de
    用Chrome查看源代码 每个网页都是一样的,但显示内容都不同,请问是如何实现的?

    小白能看出是基于React框架的,但找不到内容相关的js在哪里
  • t
    thinkidea
    全在那个main.js里了小尾巴~
  • Z
    Zerolone
    这种不要指望可以修改了
  • l
    luzg2008
    回复2#thinkidea

    Main 也很奇怪 只有一段

    1. ReactInit.initReactComponent("composing-dm", "App", {}, document.getElementById("app"));
    2. if ('serviceWorker' in navigator) {
    3. navigator.serviceWorker.register('/service-worker.js');
    4. }
    复制代码


    这个service-worker.js更是一个故意设置的
    1. // empty service-worker file on purpose
    2. // service-worker is required for add-to-homescreen feature for progressive web apps
    3. //
    4. // caching strategy for content has to be brainstormed
    复制代码
  • 夜空
    回复4#luzg2008
    Js渲染的,你要做什么 iOS fly ~
  • d
    during2
    这个你要从浏览器f12里的network栏里查看,很明白
  • l
    luzg2008
    回复3#Zerolone

    很好奇是怎么实现的
  • Z
    Zerolone
    你去百度一下vue, vue 打包。
  • w
    wuketidai
    SPA 咯
  • p
    pocketsnail2003
    古老的asp就能做到了。
  • l
    luzg2008
    回复5#夜空

    想爬一些信息 看到这个​顿时懵圈了 很好奇怎么弄的
  • n
    napa0421
    按f12,不要鼠标右键查看网页源代码,所有的spa页面你这样查看都只有一个app节点 PM2.5
  • 内裤猪
    JS框架,mvvn的都是这样,react,vue,angular等等
  • l
    luzg2008
    谢谢各位高手指点。实在小白了
  • 4
    4color
    全身前端渲染了。单页js框架。
  • 7
    729088672
    这种得用无头浏览器爬
  • t
    treotreo
    用 Selenium+Chromedriver 爬
    不过你可以看看 network 栏,很多时候商品数据是个 json 包,python直接用 requests 访问就行,json很容易解析
  • l
    luzg2008
    回复17#treotreo

    好的 我去试试 多谢指点
  • 最低购
    回复17#treotreo

    Selenium+Chromedriver爬东西是很好的,爬下来的东西想要上传入库,有没有好的办法?例如杰奇的入库,用它自带的插件,经常丢章节没法用。书荒点我
  • P
    PangPang
    自己写sql 入库
  • m
    mijuu
    pwa应用
  • s
    sinapdb
    回复关注一下 iOS fly ~