python 3编写贴吧图片下载软件(超简单)
业余时间初学者作品,大佬勿喷,代码都很简单。
py文件打包成exe教程:python3.7 打包成exe程序,
本程序体验下载地址:python编译的贴吧图片下载工具
先上效果图
启动后是这样的:

按提示输入内容运行后是这样的:

上代码(基本都是最基本的语法,不多解释了):
import requests
import os
from bs4 import BeautifulSoup
from pip._vendor.distlib.compat import raw_input
def down(type, num, url, img_path):
if type == '1':
url2 = url + '&pn={}'.format(num)
else:
url2 = url + '?pn={}'.format(num)
if not os.path.exists(img_path):
os.makedirs(img_path)
req = requests.get(url2)
req.encoding = "utf-8"
bs = BeautifulSoup(req.text, 'html.parser')
img = bs(class_='BDE_Image')
con = 0
if img.__len__() == 0:
print("<--第{}页无图片,跳转下一页-->".format(num))
else:
for xx in img:
con += 1
url = xx.get('src')
height = xx.get('height')
width = xx.get('width')
name = '\\' + str(num) + '_' + str(con) + '(' + height + 'x' + width + ')'
res = requests.get(url)
with open("{}{}{}".format(img_path, name, '.jpg'), 'wb')as f:
f.write(res.content)
print("第{}页,第{}张,下载完毕".format(num, con))
if __name__ == '__main__':
print('贴吧图片下载工具v1.0 by wjup\n\n说明:输入内容请按要求填写,填错会退出程序。'
'\n请规范输入帖子地址,像这样-->\n只看楼主:https://tieba.baidu.com/p/3430697608?see_lz=1\n'
'不是只看楼主:https://tieba.baidu.com/p/3430697608'
'\n图片保存路径写法:F:\\\image,如果不填会默认下载到E:\\\贴吧图片 目录下\n\n')
type = raw_input('开始吧!\n\n请选择是否为只看楼主类型的地址\n(输入1或2即可) 1:是 2:否 :')
while type.strip() == '':
type = raw_input('请选择是否为只看楼主类型的地址\n(输入1或2即可) 1:是 2:否 :')
url = raw_input('\n请输入贴子地址:')
while url.strip() == '':
print('地址都不输入,还下载个毛!')
url = raw_input('请输入贴子地址:')
end_page = input('\n请输入帖子总页数:')
if end_page.strip() == '':
print('页数为空,默认下载前3页图片内容')
end_page = 3
img_path = raw_input('\n请输入图片保存路径(例:F:\\\image):')
print('-------------下载--------------')
if not img_path.strip():
print('地址为空默认保存到 E:\\\贴吧图片')
print('-------------下载--------------\n')
img_path = 'E:\\贴吧图片'
for i in range(1, int(end_page) + 1):
down(type, i, url, img_path)
python 3编写贴吧图片下载软件(超简单)的更多相关文章
- 手把手教你用python打造网易公开课视频下载软件1-总述
写作前面的话:最近准备重温一下算法导论,感谢大网易把MIT算法导论课程全部贴出来,地址为:http://v.163.com/special/opencourse/algorithms.html,在线看 ...
- 手把手教你用python打造网易公开课视频下载软件2-编码相关说明
函数getdownLoadInfo(url)主要实现核心功能:根据url地址,获取课程信息:课程名(courseTitle),课程数目(courseCount),可下载视频数目(videoCount) ...
- 手把手教你用python打造网易公开课视频下载软件4-图形化界面
上一篇讲解完函数:def getdownLoadInfo (url): 传入公开课的url地址,就可以提取课程的信息,这一篇讲解一下如何编写图像化界面.大概思考一下图像化界面需要的内容: (1)一个标 ...
- 手把手教你用python打造网易公开课视频下载软件3-对抓取的数据进行处理
上篇讲到抓取的数据保存到rawhtml变量中,然后通过编码最终保存到html变量当中,那么html变量还会有什么问题吗?当然会有了,例如可能html变量中的保存的抓取的页面源代码可能有些标签没有关闭标 ...
- 手把手教你用python打造网易公开课视频下载软件5-python生成exe程序
python程序生成exe文件,使用的是py2exe扩展包,下面写下具体的步骤: 第一步:新建conver2exe.py,内容如下: #coding:utf-8 from distutils.core ...
- 第三百四十一节,Python分布式爬虫打造搜索引擎Scrapy精讲—编写spiders爬虫文件循环抓取内容—meta属性返回指定值给回调函数—Scrapy内置图片下载器
第三百四十一节,Python分布式爬虫打造搜索引擎Scrapy精讲—编写spiders爬虫文件循环抓取内容—meta属性返回指定值给回调函数—Scrapy内置图片下载器 编写spiders爬虫文件循环 ...
- 二十 Python分布式爬虫打造搜索引擎Scrapy精讲—编写spiders爬虫文件循环抓取内容—meta属性返回指定值给回调函数—Scrapy内置图片下载器
编写spiders爬虫文件循环抓取内容 Request()方法,将指定的url地址添加到下载器下载页面,两个必须参数, 参数: url='url' callback=页面处理函数 使用时需要yield ...
- python简易爬虫来实现自动图片下载
菜鸟新人刚刚入住博客园,先发个之前写的简易爬虫的实现吧,水平有限请轻喷. 估计利用python实现爬虫的程序网上已经有太多了,不过新人用来练手学习python确实是个不错的选择.本人借鉴网上的部分实现 ...
- Python实战:美女图片下载器,海量图片任你下载
Python应用现在如火如荼,应用范围很广.因其效率高开发迅速的优势,快速进入编程语言排行榜前几名.本系列文章致力于可以全面系统的介绍Python语言开发知识和相关知识总结.希望大家能够快速入门并学习 ...
随机推荐
- 【洛谷P3605】晋升者计数
题目大意:给定一棵 N 个点的树,点有点权,求对于每个点来说,以该点为根的子树内比该点点权小的点的个数. 题解:考虑对于每个点开一棵权值线段树.递归过程中,将子树的信息合并到父节点上,统计答案后,再将 ...
- Recurrent Neural Networks(RNN) 循环神经网络初探
1. 针对机器学习/深度神经网络“记忆能力”的讨论 0x1:数据规律的本质是能代表此类数据的通用模式 - 数据挖掘的本质是在进行模式提取 数据的本质是存储信息的介质,而模式(pattern)是信息的一 ...
- 深入学习c++(虚函数遇到析构函数就退化了)
1. 在构造函数和析构函数中调用的虚函数并不具备虚函数的特性 因为基类的构造函数先构造, 析构函数后析构
- [物理学与PDEs]第3章习题4 理想磁流体的能量守恒方程
试证明: 对理想磁流体, 能量守恒方程 (4. 14) 可以写为如下形式: $$\beex \bea \cfrac{\p}{\p t}&\sex{\rho e+\cfrac{1}{2}\rho ...
- SQLServer数据库文件由高版本向低版本转换
这个只能用2012的生成脚本功能,在高级里面把脚本兼容设置成2008,并且选择生成架构和数据(默认是只有架构)拿这个脚本在2008上跑一次就行了 sqlserver 中使用sqlcmd 执行*.sql ...
- webpack学习笔记——path
__dirname + '/src' path.resolve(__dirname, 'src') path.resolve(__dirname, './src') path.join(__dirna ...
- sql server 2008 windows验证改为混合登陆SqlServer身份验证用户名密码
安装过程中,SQL Server 数据库引擎设置为 Windows 身份验证模式或 SQL Server 和 Windows 身份验证模式.本主题介绍如何在安装后更改安全模式. 如果在安装过程中选择“ ...
- win10免安装版本的MySQL的下载安装和配置
下载mysql-xxx.zip(免安装版) 解压到自己想要的目录下(我的是D:\mysql\),打开mysql-5.7.21-winx64文件夹,新建my.ini文件,输入: [mysql] # 设置 ...
- CF1119B Alyona and a Narrow Fridge
题目地址:CF1119B Alyona and a Narrow Fridge \(O(n^2)\) 暴力枚举+贪心 从小到大枚举答案 假设枚举到 \(i\) ,将 \(a_1\) 到 \(a_i\) ...
- [Kubernetes]yaml文件详解
应前一段时间夸下的海口:[Kubernetes]如何使用yaml文件使得可以向外暴露服务,说过要写一篇关于yaml文件详解的文章出来的,今天来总结一下.yaml文件用在很多地方,但是这里以介绍在Kub ...