akaayy
V2EX  ›  问与答

发现了一个超棒的在线网页下载工具(仿站工具),求问有没源码或者原理

  •  
  •   akaayy · Jul 2, 2018 · 11662 views
    This topic created in 2963 days ago, the information mentioned may be changed or developed.
    一般来说,不过是另存为还是用 wget 来下载,总会有这样那样的问题,要再下载资源,再整理,才能得到满意的效果

    但是今天发现了一个在线工具,输入网址,提交后直接就给你一个跟原来网页一样呈现的页面,包含所有资源,保留原有文件结构,可以直接打包下载

    这个工具地址是: http://code68.com/DownWebSite/Index

    太好用了,就怕这个站长有一天不提供这个服务了,所以想问问大家,有没有这个工具的源码,或者同类的工具,或者这种工具的实现原理。

    谢谢!
    SingeeKing
        1
    SingeeKing  
    PRO
       Jul 2, 2018   ❤️ 1
    不再提供的话就用 SiteSucker
    zbinlin
        2
    zbinlin  
       Jul 2, 2018   ❤️ 1
    用 puppeteer 应该可以实现
    zro
        3
    zro  
       Jul 2, 2018   ❤️ 1
    (看到头像,有点怀念大头死变态。。)
    yangqi
        4
    yangqi  
       Jul 2, 2018   ❤️ 1
    放弃仿站,回头是岸
    lhx2008
        5
    lhx2008  
       Jul 2, 2018 via Android   ❤️ 1
    原理不难,从 html 开始递归遍历所有链接,并且修改为本地链接,对 css 则把所有资源链接转化为本地链接,并且下载。难点在于对 js 的解析,里面有很多链接很难完整转为本地链接。已经有很多轮子,但是没有很好用的。
    flyxl
        6
    flyxl  
       Jul 2, 2018 via Android   ❤️ 1
    puppeteer intercept request 应该可以
    Akkuman
        7
    Akkuman  
       Jul 3, 2018 via Android   ❤️ 1
    wget --mirror -p --convert-links -P ./LOCAL URL
    就可以下载整站了
    akaayy
        8
    akaayy  
    OP
       Jul 3, 2018
    @SingeeKing
    @Akkuman

    很多时候,我并不想下载整站,只想下载一个页面和它需要的所有资源😜
    Akkuman
        9
    Akkuman  
       Jul 3, 2018   ❤️ 1
    @akaayy 那改改 wget 参数就行了,具体你可以查查
    akaayy
        10
    akaayy  
    OP
       Jul 3, 2018
    @Akkuman

    在网上找了一个 https://blog.csdn.net/lizhitao/article/details/29817315

    wget 下载一个页面以及所需的所有文件(包括嵌入的 js,css 等)
    wget -E -H -k -K -p http://jsonviewer.stack.hu

    运行之后,还是不行,css 里面的图片都没有下载下来
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3245 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 13:06 · PVG 21:06 · LAX 06:06 · JFK 09:06
    ♥ Do have faith in what you're doing.