python爬虫好友图片_Python爬取所有微信好友头像,制作微信好友图片墙
今天咱就试试怎么爬取微信列表中所有好友的头像,并做成一张图片墙,代码不长,60 行就可以搞定。
核心是利用三个库:wxpy 库,用于获取好友头像然后下载
Pillow 库,用于拼接头像
Pyinstaller 库,用来打包 Python 程序成 exe 文件
程序通过三个函数实现,第一个 creat_filepath 函数生成图片下载文件路径,第二个 save_avatar 函数循环获取微信好友头像然后保存到本地,第三个 joint_avatar 函数就是把头像拼接成一张大图。
完整代码如下:from wxpy import *
import math
from PIL import Image
import os
# 创建头像存放文件夹
def create_filePath():
avatar_dir = os.getcwd() + "\\wechat\\";
if not os.path.exists(avatar_dir):
os.mkdir(avatar_dir)
return avatar_dir
# 保存好友头像
def save_avatr(avatar_dir):
# 初始化机器人,扫码登录
bot = Bot()
friends = bot.friends(update=True)
num = 0
for friend in friends:
friend.get_avatar(avatar_dir + '\\' + str(num) + ".jpg")
print('好友昵称:%s' % friend.nick_name)
num = num + 1
# 拼接头像
def joint_avatar(path):
# 获取文件内头像个数
length = len(os.listdir(path))
# 设置画布大小
image_size = 2500
# 设置每个头像大小
each_size = math.ceil(2560 / math.floor(math.sqrt(length)))
# 计算所需各行列的头像数量
x_lines = math.ceil(math.sqrt(length))
y_lines = math.ceil(math.sqrt(length))
image = Image.new('RGB', (each_size * x_lines, each_size * y_lines))
x = 0
y = 0
for(root, dirs, files) in os.walk(path):
for pic_name in files:
# 增加头像读不出来的异常处理
try:
with Image.open(path + pic_name) as img:
img = img.resize((each_size, each_size))
image.paste(img, (x * each_size, y * each_size))
x += 1
if(x == x_lines):
x = 0
y += 1
except IOError:
print("头像读取失败")
img = image.save(os.getcwd() + "/wechat.png")
print('微信好友头像拼接完成!')
if __name__ == '__main__':
avatar_dir = create_filePath()
save_avatr(avatar_dir)
joint_avatar(avatar_dir)
点击运行就可以直接运行
python爬虫好友图片_Python爬取所有微信好友头像,制作微信好友图片墙相关推荐
- python爬虫下载小说_python 爬取小说并下载的示例
代码 import requests import time from tqdm import tqdm from bs4 import BeautifulSoup """ ...
- python爬虫天气数据_Python爬取真气网天气数据
使用工具:pycharm,Chrome driver 使用库:selenium 前言: 我们无时无刻不在呼吸着周围的空气, 可身边的空气质量怎样呢? 嗯~~~ 大多数人会沉思一会儿, 最后还是会说:不 ...
- python爬虫企业数据_python爬取企业名录并入库
#!/usr/bin/env python2#-*-coding:utf-8-*- '''@version: python2.7 @author: 'zyjsuper' @license: Apach ...
- python爬取图片教程-推荐|Python 爬虫系列教程一爬取批量百度图片
Python 爬虫系列教程一爬取批量百度图片https://blog.csdn.net/qq_40774175/article/details/81273198# -*- coding: utf-8 ...
- 转 Python爬虫实战一之爬取糗事百科段子
静觅 » Python爬虫实战一之爬取糗事百科段子 首先,糗事百科大家都听说过吧?糗友们发的搞笑的段子一抓一大把,这次我们尝试一下用爬虫把他们抓取下来. 友情提示 糗事百科在前一段时间进行了改版,导致 ...
- Python爬虫实战一之爬取糗事百科段子
点我进入原文 另外, 中间遇到两个问题: 1. ascii codec can't decode byte 0xe8 in position 0:ordinal not in range(128) 解 ...
- python爬虫如何实现每天爬取微信公众号的推送文章
python爬虫如何实现每天爬取微信公众号的推送文章 上上篇文章爬虫如何爬取微信公众号文章 上篇文章python爬虫如何爬取微信公众号文章(二) 上面的文章分别介绍了如何批量获取公众号的历史文章url ...
- Python爬虫【二】爬取PC网页版“微博辟谣”账号内容(selenium同步单线程)
专题系列导引 爬虫课题描述可见: Python爬虫[零]课题介绍 – 对"微博辟谣"账号的历史微博进行数据采集 课题解决方法: 微博移动版爬虫 Python爬虫[一]爬取移 ...
- python爬虫实例之小说爬取器
今天和大家分享一个爬取盗版小说的实例. 如今的网络小说可谓是百家齐放各领风骚,玄幻科幻穿越修仙都市- 各种套路看得我是心潮澎湃,笔者曾经也蛮喜欢看小说的,以前经常是拿着一台诺基亚看到深夜,第二天带着黑 ...
- python爬虫对炒股有没有用_使用python爬虫实现网络股票信息爬取的demo
实例如下所示: import requests from bs4 import BeautifulSoup import traceback import re def getHTMLText(url ...
最新文章
- 数字图像处理的Matlab实现(1)—绪论
- C#学习笔记(八)——定义类的成员
- 对于半结构化数据的讲解,这可能是最通俗易懂的一篇文章了
- php如何传递字符串,如何将PHP字符串传递给Javascript函数调用?
- 利用Packer自定义镜像创建容器集群
- ebm风扇选型手册_EBM风扇选择方法
- Hyperledger fabric学习笔记(一)
- Silverlight的资源
- php 编译安装gd 失败,编译安装php5 解决编译安装的php加载不了gd
- tif数据84坐标经纬度转Unity3D坐标
- Rme Babyface Pro FS娃娃脸声卡安装调试教程
- 基于BERT做中文文本分类(情感分析)
- 根据已经commit的数据,进行leader和peon之间的同步
- Nginx是什么?怎么用?(新手入门版)教程
- 计算机中的二进制实验报告,大学计算机实验报告(共5篇).doc
- 中国各省份省会地图json数据
- 通过C++类方法地址调用类的虚方法
- 51单片机 ADC0809模数转换与显示+Proteus仿真
- 史上最全的Waymo自动驾驶出租车体验来了!
- vivo 手机开发者模式运行安装apk失败