博客
关于我
Python爬取堆糖网优美古风头像(附源码)
阅读量:634 次
发布时间:2019-03-14

本文共 1207 字,大约阅读时间需要 4 分钟。

前言

文中文字及图片均来源网络供学习交流使用,版权归原作者,若有问题请联系处理。

若想完成爬虫程序,需先安装以下工具包:

  • requests 网络库
  • bs4 页面选择器

安装步骤:

  • pip install requests
  • pip install bs4

os 是 Python 自带工具库,用于文件操作。

SSL 证书支持:

https 网站基于 SSL 加密传输,需注意证书验证。

一般爬虫流程

1. 模拟浏览器访问目标网站 2. 使用 requests 发起 HTTP 请求获取网页数据 3. 通过 bs4 筛选所需数据 4. 根据规则下载图片

本次目标

爬取堆糖网图片: 目标网站:https://www.duitang.com/

爬虫代码

导入工具: ```pythonimport requestsimport osfrom bs4 import BeautifulSoup```

设置请求头:

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'}

证书验证:

import sslssl._create_default_https_context = ssl._create_unverified_context

图片爬取函数:

def get_images(url):    images_html = requests.get(url, headers=headers).text    soup = BeautifulSoup(images_html, 'lxml')    images_list = soup.find_all('div', class_='mbpho')        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']                try:            urllib.request.urlretrieve(image_url, f'./古风头像/{image_id}{os.path.splitext(image_url)[-1]}')            print('下载成功...')        except:            pass

效果图

(以下均为图片链接,已去除外部资源引用)

转载地址:http://cqioz.baihongyu.com/

你可能感兴趣的文章
NIFI汉化_替换logo_二次开发_Idea编译NIFI最新源码_详细过程记录_全解析_Maven编译NIFI避坑指南001---大数据之Nifi工作笔记0068
查看>>
NIFI集群_内存溢出_CPU占用100%修复_GC overhead limit exceeded_NIFI: out of memory error ---大数据之Nifi工作笔记0017
查看>>
NIFI集群_队列Queue中数据无法清空_清除队列数据报错_无法删除queue_解决_集群中机器交替重启删除---大数据之Nifi工作笔记0061
查看>>
NIH发布包含10600张CT图像数据库 为AI算法测试铺路
查看>>
Nim教程【十二】
查看>>
Nim游戏
查看>>
NIO ByteBuffer实现原理
查看>>
Nio ByteBuffer组件读写指针切换原理与常用方法
查看>>
NIO Selector实现原理
查看>>
nio 中channel和buffer的基本使用
查看>>
NIO基于UDP协议的网络编程
查看>>
NISP一级,NISP二级报考说明,零基础入门到精通,收藏这篇就够了
查看>>
Nitrux 3.8 发布!性能全面提升,带来非凡体验
查看>>
NI笔试——大数加法
查看>>
NLog 自定义字段 写入 oracle
查看>>
NLog类库使用探索——详解配置
查看>>
NLP 基于kashgari和BERT实现中文命名实体识别(NER)
查看>>
NLP 项目:维基百科文章爬虫和分类【01】 - 语料库阅读器
查看>>
NLP_什么是统计语言模型_条件概率的链式法则_n元统计语言模型_马尔科夫链_数据稀疏(出现了词库中没有的词)_统计语言模型的平滑策略---人工智能工作笔记0035
查看>>
NLP学习笔记:使用 Python 进行NLTK
查看>>