有点无聊,来试试用Python采集下载漫画

前言

嗨嗨,大家好~

前段时间看小说看的上头,现在有点腻了,开始看漫画了

今天就来用Python采集一下漫画吧

就随便爬一个,大家搞清楚思路后,可以自己去采集自己喜欢看的漫画哦

请添加图片描述

知识点:

  • 爬虫基本流程
  • 保存海量漫画数据
  • requests的使用
  • base64解码

开发环境:

  • 版 本:python 3.8
  • 编辑器:pycharm
  • requests: pip install requests
  • parsel: pip install parsel

如何安装python第三方模块:

  1. win + R 输入 cmd 点击确定, 输入安装命令 pip install 模块名 (pip install requests)回车

  2. 在pycharm中点击Terminal(终端) 输入安装命令

实现代码:

  1. 发送请求
  2. 获取数据
  3. 解析数据
  4. 保存数据

请添加图片描述

代码

import base64
import requests
import re
import json
import parsel
import os
# 伪装
headers = {
    
    
    # 用户信息
    'cookie': '__AC__=1; tvf....

请添加图片描述

源码点击此处领取即可

select = parsel.Selector(requests.get(main_url, headers=headers).text)
title_list = select.css('.chapter-page-all.works-chapter-list li a::text').getall()
link_list = select.css('.chapter-page-all.works-chapter-list li a::attr(href)').getall()

for title, link in zip(title_list, link_list):
    url = 'https://ac.qq.com' + link
    title = title.strip()
    if not os.path.exists(f'中国惊奇先生/{title}'):
        os.makedirs(f'中国惊奇先生/{title}')python学习交流Q群:770699889 ### 源码领取
    # 1. 发送请求
    response = requests.get(url=url, headers=headers)
    print(title, url)
    # 2. 获取数据
    html_data = response.text
    # 3. 解析数据
    DATA = re.findall("var DATA = '(.*?)'", html_data)[0]
    for i in range(len(DATA)):
        try:
            json_str = base64.b64decode(DATA[i:].encode("utf-8")).decode("utf-8")
            json_str = re.findall('"picture":(\[.*?\])', json_str)[0]
            # 字符串 转 字典/列表
            json_list = json.loads(json_str)
            count = 1
            for imgInfo in json_list:
                imgUrl = imgInfo['url']
                print(imgUrl)
                # 4. 保存数据
                img_data = requests.get(url=imgUrl).content
                with open(f'中国惊奇先生/{title}/{count}.jpg', mode='wb') as f:
                    f.write(img_data)
                count += 1
            break
        except:
            pass

最后效果

请添加图片描述

在这里插入图片描述

最后

给大家推荐一些Python视频教程,希望对大家有所帮助:

Python零基础教学合集

对文章有问题的,或者有其他关于python的问题,可以在评论区留言或者私信我哦

觉得我分享的文章不错的话,可以关注一下我,或者给文章点赞(/≧▽≦)/

请添加图片描述

猜你喜欢

转载自blog.csdn.net/yxczsz/article/details/127812587
今日推荐