• Linux的shell脚本爬虫实战之图片爬取


    一、爬虫原理

    1、模拟计算机对服务器发起Request请求

    2、接收服务器端的Response内容并解析、提取所需的信息

    如果我们把互联网比作一张大的蜘蛛网,数据便是存放于蜘蛛网的各个节点,而爬虫就是一只小蜘蛛,

    沿着网络抓取自己的猎物(数据)爬虫指的是:向网站发起请求,获取资源后分析并提取有用数据的程序;

    从技术层面来说就是 通过程序模拟浏览器请求站点的行为,把站点返回的HTML代码/JSON数据/二进制数据(图片、视频) 爬到本地,进而提取自己需要的数据,存放起来使用;

    我们把网址看成是一个.html的网页文件,本身网址内容就是存在这份文件里面的,有点像砸门小时候做黑板报时候的这个板块,那个板块这里涂啥那里抹点啥,他们显示音乐图片,通过应用网址链接来加载出来,此时我们做的就是获取该链接,获取该文字,下载下来存放某个文件夹分类。

    我们先建立一个txt文件,里面存些图片地址等标签信息,然后分析获取。

    1. #!/bin/bash
    2. echo "./pachong file1.txt>>>>爬取文件中的网址图片信息下载"
    3. #循环获取参数名称
    4. for i in $*
    5. do
    6. echo $i
    7. #获取文件后缀
    8. txtname=`echo $i|grep ".txt"|awk -F "." '{print $2}'`
    9. echo $txtname
    10. #判断参数是否存在
    11. if [ $# -lt 1 ]
    12. then
    13. echo "lost canshu"
    14. exit
    15. #如果后缀是txt执行
    16. elif [ $txtname = "txt" ]
    17. then
    18. #核心获取图片下载地址,具体网站具体分析
    19. pic=`cat $1|grep "img class="|awk -F "src=" '{print $2}'|awk '{print $1}'|sed 's/"//g'`
    20. echo $pic
    21. curl -s -O $pic
    22. echo "ok>>>"
    23. exit
    24. else
    25. echo "end"
    26. exit
    27. fi
    28. done

    建立txt文件的内容如下

    "nature lazyload" src="https://p11.wnsimages.com/jingping/2022/09/03/7cb554a5-b28e-469a-9e10-769af352047d/001.jpg" data-original="https://p11.wnsimages.com/jingping/2022/09/03/7cb554a5-b28e-469a-9e10-769af352047d/001.jpg" alt="MiStar高清写真图VOL.303月音瞳" style="transition: all 1s ease 0s; opacity: 1; display: block;">

     

    我们获取其中网址下载图片

     我们尝试打开看下这张图片

     

    这个就完成今天的内容了,小伙伴们可以试试用linux的shell写一些更加复杂的批量程序,爬取更多有趣土图片

     

  • 相关阅读:
    jarvisoj_level5
    C语言——求10个整数中最大值
    html5——CSS3_文本样式属性
    贤鱼的刷题日常--P1665 正方形计数--题目详解
    在 React 中创建带有突出显示的目录
    java基础练习--基础语法
    Spring Security多种用户定义方式
    网站在线监控工具Statping
    ZZULIOJ:1191-1199
    Jetpack Compose学习(8)——State及remeber
  • 原文地址:https://blog.csdn.net/wtfsb/article/details/126681808