栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

爬虫练手项目

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

爬虫练手项目

表情包爬取
  • 确定目标网站并分析
    • 目标网站
    • 分析
  • 代码

确定目标网站并分析 目标网站

斗图啦: 链接https://www.doutula.com/
这个网站也是我聊天斗图时常用的网站之一
毕竟不太会说话,只能发图了

分析

打开网站,搜索关键词<狗头>,
发现url变成
https://www.doutula.com/search?keyword=狗头

然后F12打开开发人员工具
发现图片链接就放在标签下面


好家伙,这个竟如此简单,那就直接放代码吧

代码
import os
import re
import time
import  requests

#获取表情包对应的url列表
def get_imglist(key,num):
    url = 'https://www.doutula.com/search?keyword={}'.format(key)
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.159 Safari/537.36'
    }
    res = requests.get(url=url, headers=headers)
    img_urllist = re.findall('data-original="(.*?)"', res.text)
    if num>len(img_urllist)or num<0:
        num = len(img_urllist)
    return img_urllist[0:num]

#创建保存表情包的文件夹
def createpath(path):
    print('r正在创建下载路径', end="")
    if not os.path.exists(path):
        os.mkdir(path)
#下载表情包
def save_img(key,path,urllist):
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.159 Safari/537.36'
    }
    i = 0
    print('r2s后将开始下载{}表情包'.format(key), end="")
    time.sleep(2)
    for u in urllist:
        i += 1
        name = path + '/' + u[-25:]
        try:
            r = requests.get(url=u, headers=headers)
            with open(name, 'wb') as f:
                f.write(r.content)
            print('r下载进度:' + "{:3}%".format(int(100 * i / len(urllist))), end="")
        except:
            print('r{}下载失败'.format(name), end="")

if __name__=='__main__':
    key = input('输入表情包关键词(中文):')
    try:
        num = int(input('输入要爬取的张数(默认10张):'))
    except:
        num = 10
    path = './{}表情包下载'.format(key)
    createpath(path)
    urllist = get_imglist(key, num)
    save_img(key, path, urllist)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/269154.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号