当前位置:   article > 正文

wget下载需登录的网页中的文件_wget下载网页接口内文件

wget下载网页接口内文件

wget下载需登录的网页中的文件(使用cookie)

wget简介

以网络下载 maven 包为例
wget -c http://mirrors.shu.edu.cn/apache/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gz

  • wget是linux下一个从网络上自动下载文件的常用自由工具。它支持HTTP,HTTPS和FTP协议,可以使用HTTP代理。一般的使用方法是: wget + 空格 + 参数 + 要下载文件的url路径。默认下载到当前目录中。
    Wget常用参数
    -b:后台下载,Wget默认的是把文件下载到当前目录。
    -O:将文件下载到指定的目录中。
    -P:保存文件之前先创建指定名称的目录。
    -t:尝试连接次数,当Wget无法与服务器建立连接时,尝试连接多少次。
    -c:断点续传,如果下载中断,那么连接恢复时会从上次断点开始下载。
    -r:使用递归下载
    –http-user=USERNAME :指定用户名
    –http-passwd=PASSWARD :指定密码
  • tips:当https网址无法建立ssl连接,可以改为http试一下。

校园网网关登录

  • 由于本人使用的服务器是在学校的局域网上的,下载数据集时需要使用curl Post登录校园网网关:
    curl -X POST http://10.3.8.211/login -F user=USERNAME -F pass=PASSWORD -F line=
    解释:上面的网址是北邮的网关登录地址,请替换为自己学校的网关;USERNAME和PASSWARD替换为自己的账号密码,line=的后面不用写东西,空着就好。

  • 检查网络是否接通:
    ping www.baidu.comping通了
    上图这样就表示ping通了(使用ctrl+c)退出。

使用浏览器cookie信息帮助你登录网站

  • 命令:
    wget --header=“Cookie: XXXX” -b URL
    例如:wget --header=“Cookie:PHPSESSID=g7fjsdfhujl1kp4ttn” -b http://www.cityscapes-dataset.com/file-handling/?packageID=14
    -b表示启用后台下载。由于是后台下载,不会显示进度条,成功启动下载会提示进程号,如下:
    带-b命令的描述

  • 查看你的用户目录下的进程。
    ps -u USERNSME 找到上面提示的pid即说明已经出于后台下载中。-

  • 查看下载进度:
    cat wget-log
    在下载目录下,cat下载任务对应的log文件
    或者使用命令:
    tail -f wget-log

  • 取得Cookie信息(重点!)

  1. 用你的浏览器打开下载文件所在的网站,并登录好。(这里我用的edge浏览器)
  2. F12键打开网页源代码,调到网络一栏,然后刷新网页,这时右侧标头(headers)栏中会出现cookie信息,把它复制下来。如下
    获取cookie
  3. 把–header="Cookie: XXXX"里的XXXX用复制的cookie信息替代即可。
    OVER!!

参考资料:https://www.cnblogs.com/hankal/p/9815068.html

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/316716
推荐阅读
相关标签
  

闽ICP备14008679号