前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python爬取堆糖网优美古风头像(附源码)

Python爬取堆糖网优美古风头像(附源码)

作者头像
松鼠爱吃饼干
发布2020-11-11 10:51:18
6530
发布2020-11-11 10:51:18
举报
文章被收录于专栏:Python分享Python分享

前言

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理

如果大家想要完成爬虫程序,先安装和导入几个包

  • requests 网络库
  • bs4 页面选择器 网页上筛选数据

安装包

  • pip install requests
  • pip install bs4

os python语言自带的一个工具库

ssl工具包 https协议的网站是基于ssl加密从而传输数据的一种网站

一般爬虫的过程

  • 模拟浏览器
  • 强制取消证书认证 看情况去做的 http的协议网站 则不需要
  • requests去做http请求,并且拿到网页数据
  • 数据筛选 拿到我们想要的数据
  • 下载

本次目标

爬取堆糖网图片

代码语言:javascript
复制
https://www.duitang.com/

爬虫代码

导入工具

代码语言:javascript
复制
import ssl
import os
# 下载包
import urllib.request
# 网络包
import requests
# 网页选择器
from bs4 import BeautifulSoup

请求头

代码语言:javascript
复制
headers = {
    'User-Agent':
        'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36'
}

默认请求https网站不需要证书认证

代码语言:javascript
复制
ssl._create_default_https_context = ssl._create_unverified_context

爬虫流程

代码语言:javascript
复制
def get_images(url):
    images_html = requests.get(url, headers=headers).text
    # print(images_html)
    soup = BeautifulSoup(images_html, 'lxml')
    images_list = soup.find_all('div', class_='mbpho')
    # print(images_list)

    for image in images_list:
        image_data = image.find('a', class_='a')
        image_url = image_data.find('img')['src']
        # 获取图片名称 下载图片时需要给图片文件一个文件名
        image_id = image_data.find('img')['data-rootid']
        # print(image_url, image_id)
        print(os.path.splitext(image_url)[-1])

        try:
            urllib.request.urlretrieve(image_url, './古风头像/' + image_id + os.path.splitext(image_url)[-1])
            print('下载成功...')
        except:
            pass

url = 'https://www.duitang.com/search/?kw=%E5%8F%A4%E9%A3%8E%E5%A4%B4%E5%83%8F&type=feed'
get_images(url)

效果图

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-11-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 松鼠爱吃饼干 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 一般爬虫的过程
  • 本次目标
  • 爬虫代码
  • 效果图
相关产品与服务
SSL 证书
腾讯云 SSL 证书(SSL Certificates)为您提供 SSL 证书的申请、管理、部署等服务,为您提供一站式 HTTPS 解决方案。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档