内裤超人 发表于 2019-5-4 21:42

自己用python写了一个简单的获取表情包

才开始学习几天,很简单的代码# -*- coding: utf-8 -*
import json
import requests
import re
import os
import pysnooper

#创建文件夹
os.makedirs('./image/',exist_ok=True)
# 获取表情包图片路径
# @pysnooper.snoop('log.txt')
def get_express(text):
    from urllib.request import urlretrieve
    url = 'https://www.doutula.com/api/search?keyword='+text+'&mime=0&page=1'
    result = requests.get(url,timeout = 30)
    result.raise_for_status()
    data = eval(result.content)
    img_url = data['data']['list']
    try:
      print('共获取到 ',len(img_url),'张图片')
      for i in range(len(img_url)):
            image_url = img_url['image_url']
            if(image_url != ''):
                imgUrl = image_url.replace('\\','')
                print(imgUrl)
                name = re.findall(r'[^/]+(?!.*/)',imgUrl)
                print('开始下载第',i+1,'张')
                urlretrieve(imgUrl,'./image/'+name)
            else:
                print('图片路径为空:',image_url)   
    except IOError:
      print('下载图片出错!')


text = input('请输入下载表情关键字:')
get_express(text)

为了青春 发表于 2019-5-4 23:49

本帖最后由 为了青春 于 2019-5-5 00:01 编辑

youyeaini 发表于 2019-5-4 23:17
我是新手学爬虫;我想问楼主是怎么找到'https://www.doutula.com/api/这个地址的?api这个地址。。。。

~~在网站搜索栏里输入关键字后搜索跳转后的网页地址就是啦。~~
抱歉,我理解错误了,我尝试后并不能得到带***api***的网址。
只能得到如下网址`https://www.doutula.com/search?keyword=周杰伦`

lilips 发表于 2019-5-5 08:59

youyeaini 发表于 2019-5-4 23:17
我是新手学爬虫;我想问楼主是怎么找到'https://www.doutula.com/api/这个地址的?api这个地址。。。。

注意这个网站的导航,站长开发里直接提供了个api。。。。其它我是用F12

fire_flag 发表于 2019-5-4 21:59

支持分享

zwk123456 发表于 2019-5-4 22:20

感谢分享,来看看

木子六 发表于 2019-5-4 22:24

python如今太火了,一定要好好学习一下才是。用它来做数据分析,做出复杂的可视化报表,简直对企业经营管理如虎添翼。

内裤超人 发表于 2019-5-4 22:27

木子六 发表于 2019-5-4 22:24
python如今太火了,一定要好好学习一下才是。用它来做数据分析,做出复杂的可视化报表,简直对企业经营管理 ...

是的啊,觉得还是挺有意思的

youyeaini 发表于 2019-5-4 23:17

我是新手学爬虫;我想问楼主是怎么找到'https://www.doutula.com/api/这个地址的?api这个地址。。。。

为了青春 发表于 2019-5-4 23:24

感谢楼主分享,可以考虑加个翻页的功能,否则好像只爬取了第一页的图。

merk 发表于 2019-5-5 02:31

走在前边的python前辈,你好
页: [1] 2
查看完整版本: 自己用python写了一个简单的获取表情包