zoukankan      html  css  js  c++  java
  • 利用Python网络爬虫成为朋友圈内斗图小高手

    【一、项目背景】
    你是否在寻找可以与高手斗图的应用? 你是否在寻找可以自制表情的应用?你是否在寻找最全、最爆笑的表情库?
    斗图网是一个收集了成千上万的撕逼斗图表情包,在这里你可以快速找到想要的表情, 更好的“斗图”,助您成为真正的斗图终结者!
     
     
    【二、项目目标】
    下载表情包,保存文档。
    【三、涉及的库和网站】
    1、网址如下:
    2、涉及的库:requests****、lxml、ssl****、time
    3、软件:PyCharm
    【四、项目分析】
    1、如何找到表情包图片地址?
    F12右键检查,找到对应的图片的地址。
     
     
    观察网址的变化(一般取前三页):
    发现点击下一页时,page{}每增加一页自增加1,用{}代替变换的变量,再用for循环遍历这网址,实现多个网址请求。
    2. 如何解除ssl验证?
    因为这个网址是https,需要导入一个ssl模块,忽略ssl验证。
     
     
    3. ****如何获取Cookie?
    右键检查,找到NetWork,随便复制一个Cookie即可。
     
     
    【五、项目实施】
    1、我们定义一个class类继承object,然后定义init方法继承self,再定义一个主函数main继承self。导入需要的库。
    2、导入网址和构造请求头,防止反爬。
    3、发送请求 ,获取响应,页面回调,方便下次请求。
    4、xpath解析页面。
    这里我们先获取父节点,在通过for循环遍历,找到对应的子节点(图片地址)。
     
    运行的结果:
     
     
    5、对图片地址发生请求,取对应图片地址后10位,作为图片的命名,写入文件(每一张图片的后缀名不一样,所有这里不采用image_name作为图片的命名)。
    6、调用方法,实现功能。
    7、time模块打出执行时间。
    【六、效果展示】
    1、点击绿色小三角运行输入起始页,终止页。
     
     
    2、将下载成功信息显示在控制台。
     
     
    3、保存文档,在本地可以看到斗图。
     
     
    【七、总结】
    1、不建议抓取太多数据,容易对服务器造成负载,浅尝辄止即可。
    2、本文基于Python网络爬虫,利用爬虫库,获取表情包,存入文档。
    3、希望通过这个项目能够了解到,对于HTTPS网站,解除ssl验证的有大致的了解。
    4、可以尝试的去爬取其他的分类的表情包,按照步骤去实现,实现的时候,总会有各种各样的问题,切勿眼高手低,勤动手,才可以理解的更加深刻。
     
    此文转载文,著作权归作者所有,如有侵权联系小编删除!
     
    需要源代码或者素材的
  • 相关阅读:
    Java实现 LeetCode 455 分发饼干
    Java实现 LeetCode 455 分发饼干
    Java实现 LeetCode 455 分发饼干
    Java实现 LeetCode 454 四数相加 II
    Java实现 LeetCode 454 四数相加 II
    Java实现 LeetCode 454 四数相加 II
    FFmpeg解码H264及swscale缩放详解
    linux中cat more less head tail 命令区别
    C语言字符串操作总结大全(超详细)
    如何使用eclipse进行嵌入式Linux的开发
  • 原文地址:https://www.cnblogs.com/wxys/p/13736661.html
Copyright © 2011-2022 走看看