美文网首页大数据 爬虫Python AI Sql
女神聊天喜欢发表情,总说我不懂风趣 可惜她忘了我是做什么的!

女神聊天喜欢发表情,总说我不懂风趣 可惜她忘了我是做什么的!

作者: 1a076099f916 | 来源:发表于2018-12-19 11:04 被阅读2次

    现在和妹子聊天,没有表情包也会被嫌弃了么?

    女神聊天喜欢发表情,总说我不懂风趣 可惜她忘了我是做什么的!

    那为了能和妹子更愉快的聊天,咱们爬他个天昏地暗的表情包

    进群:943752371即可获取各类Python入门学习资料 视频+书籍等等 还有大牛在线讲解!

    准备

    环境:Windows + Python3.6

    模块:

    1 import requests # 请求网页2 3 from lxml import etree # 解析网页4 5 from urllib import request # 下载内容6 7 import os # 系统包

    Python爬虫常规三步俗称:“爬虫三板斧”

    第一斧:抓取目标网页

    1. 简单的反爬虫机制
    2. 获取服务器响应,获取请求响应的状态码
    3. 从响应里提取出网页,获取整个网页
    4. 将抓取的网页作为参数返回

    1 def parse_page(url): 2 # 2.1简单的反爬虫机制 3 HEADERS = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36'} 4 # 2.2获取服务器响应 5 # 获取请求响应的状态码 6 response = requests.get(url, headers=HEADERS) 7 # 2.3 从响应里提取出网页 8 # 获取整个网页 9 text = response.text10 # 将抓取的网页作为参数返回11 return text

    第二斧:解析网页获取数据

    1. 将网页保存在HTML对象里
    2. 从网页对象根据一定的规则提取数据
    3. 根据URL的规则对URL进行循环,获取多页URL,并传给parse_page()进行抓取数据
    4. 对列表里的img对象进行提取
    5. try.... except 对程序进行异常处理,避免因为其他原因报错
    6. 获取所有表情的URL并保存在列表里
    7. 从列表里提取出表情的URL,至于为啥不取零,列表中有空值,取零报错
    8. 对表情的URL进行处理,提取出表情图片的格式,用于组成表情的名字
    9. 获取表情的名字
    10. alt = re.sub(r'[,。??,/·]','',alt) #利用正则表达式对表情名字中存在的特殊字符进行处理
    11. 用 alt+suffix组成表情的新名字

    1 def main(): 2 # 根据URL的规则对URL进行循环,获取多页URL,并传给parse_page()进行抓取数据 3 # for x in range(1, 11): 5 url = "http://www.doutula.com/photo/list/?page=%d" % x 6 # 调用parse_page()函数并把url给进去 7 text=parse_page(url) 8 # 接收parse_page()返回的网页,并传给page_list()函数进行解析 9 imgs = page_list(text)10 # 3.3 对列表里的img对象进行提取11 for img in imgs:12 # try.... except 对程序进行异常处理,避免因为其他原因报错13 try:14 # 3.4获取所有表情的URL并保存在列表里15 imgurl = img.xpath(".//@data-original")16 # 3.5从列表里提取出表情的URL,至于为啥不取零,列表中有空值,取零报错17 for img_url in imgurl:18 # print(img_url)19 # 分割后缀名:.jpg .png20 # 3.6对表情的URL进行处理,提取出表情图片的格式,用于组成表情的名字21 suffix = os.path.splitext(img_url)[1]22 suffix = suffix.split("!")[0]23 24 # 3.7获取表情的名字25 alt = img.xpath(".//@alt")[0]26 # alt = re.sub(r'[,。??,/\·]','',alt) #利用正则表达式对表情名字中存在的特殊字符进行处理27 # 3.8用 alt+suffix组成表情的新名字28 img_name = alt + suffix

    第三斧:批量下载

    使用request.urlretrieve()对表情进行下载并保存在images文件里

    1 # 使用request.urlretrieve()对表情进行下载并保存在images文件里 2 #3 request.urlretrieve(img_url, 'images/' + img_name) 4 # 打印出那些表情已经下载 5 print(img_name + '下载完毕!') 6 7 except: 8 print("表情报错") 9 10 # 执行函数11 if name == 'main':12 main()

    女神聊天喜欢发表情,总说我不懂风趣 可惜她忘了我是做什么的! 女神聊天喜欢发表情,总说我不懂风趣 可惜她忘了我是做什么的!

    所以Python爬虫的“三板斧”你了解了吗,是不是感觉到“三板斧”的强大!哈哈哈

    女神聊天喜欢发表情,总说我不懂风趣 可惜她忘了我是做什么的! 女神聊天喜欢发表情,总说我不懂风趣 可惜她忘了我是做什么的! 女神聊天喜欢发表情,总说我不懂风趣 可惜她忘了我是做什么的!

    相关文章

      网友评论

        本文标题:女神聊天喜欢发表情,总说我不懂风趣 可惜她忘了我是做什么的!

        本文链接:https://www.haomeiwen.com/subject/drwdkqtx.html