iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >利用Python制作百度图片下载器
  • 213
分享到

利用Python制作百度图片下载器

2024-04-02 19:04:59 213人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

前段时间写了一个百度图片下载器,结果发现有很多人需要使用。说实话之前写的那一款百度图片下载器比较LOW,今天刚好有时间就做了一下升级。 更新了两个BUG,一个是图片下载达到几千张的时

前段时间写了一个百度图片下载器,结果发现有很多人需要使用。说实话之前写的那一款百度图片下载器比较LOW,今天刚好有时间就做了一下升级。

更新了两个BUG,一个是图片下载达到几千张的时候就没有图片可以下载了。另一个是下载进度不能实时的展示出来不知道下载到什么程度了。

同样的,我们先把需要的第三方库导入进来。

'''UI界面相关的库'''

from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
from PyQt5.QtGui import *

'''应用操作相关的库'''
import sys
import os

from scripy_images import ScripyImages

UI 界面在原来的基础上面增加了文本浏览器可以实时的查看下载进度,还有增加了每一页下载的图片数量的控制让下载数据更加精确。

 def init_ui(self):
        self.setWindowTitle('百度图片下载器2.0  公众号:[python 集中营]')
        self.setWindowIcon(QIcon('下载.ico'))
        self.setFixedSize(550, 300)

        grid = QGridLayout()

        self.page_label = QLabel()
        self.page_label.setText('设置爬取页数:')
        self.page_line_text = QLineEdit()
        self.page_line_text.setPlaceholderText('输入整数')
        self.page_line_text.setValidator(QIntValidator(1, 99))
        self.page_line_text.setFocus()

        self.page_num_label = QLabel()
        self.page_num_label.setText('每页爬取数量:')
        self.page_num_text = QSpinBox()
        self.page_num_text.setRange(50, 100)
        self.page_num_text.setSingleStep(10)
        self.page_num_text.setWrapping(True)

        self.keyWord_label = QLabel()
        self.keyword_label.setText('设置图关键字:')
        self.keyword_line_text = QLineEdit()
        self.keyword_line_text.setValidator(QRegExpValidator(QRegExp('[\u4E00-\u9FA5]+')))
        self.keyword_line_text.setMaxLength(6)
        self.keyword_line_text.setPlaceholderText('输入汉字')

        self.file_path = QLineEdit()
        self.file_path.setPlaceholderText('自定义文件路径')
        self.file_path.setReadOnly(True)
        self.file_path_button = QPushButton()
        self.file_path_button.setText('自定义路径')
        self.file_path_button.clicked.connect(self.file_path_click)

        self.request_button = QPushButton()
        self.request_button.setText('快速开始抓取图片')
        self.request_button.clicked.connect(self.download_image)

        self.brower = QTextBrowser()
        self.brower.setPlaceholderText('抓取进度结果展示...')

        grid.addWidget(self.page_label, 0, 0, 1, 1)
        grid.addWidget(self.page_line_text, 0, 1, 1, 2)
        grid.addWidget(self.page_num_label, 1, 0, 1, 1)
        grid.addWidget(self.page_num_text, 1, 1, 1, 2)
        grid.addWidget(self.keyword_label, 2, 0, 1, 1)
        grid.addWidget(self.keyword_line_text, 2, 1, 1, 2)
        grid.addWidget(self.file_path, 3, 0, 1, 2)
        grid.addWidget(self.file_path_button, 3, 2, 1, 1)
        grid.addWidget(self.brower, 4, 0, 1, 3)
        grid.addWidget(self.request_button, 5, 0, 1, 3)

        self.thread_ = ScripyImages(self)
        self.thread_.trigger.connect(self.update_log)
        self.thread_.finished.connect(self.finished)

        self.setLayout(grid)

增加控制向文本浏览器中实时写入数据的槽函数。

  def update_log(self, text):
        '''
        槽函数:向文本浏览器中写入内容
        :param text:
        :return:
        '''
        cursor = self.brower.textCursor()
        cursor.movePosition(QTextCursor.End)
        self.brower.append(text)
        self.brower.setTextCursor(cursor)
        self.brower.ensureCursorVisible()

优化了图片的下载过程,使用专门的子线程来处理图片下载的部分。

  def download_image(self):
        self.request_button.setEnabled(False)
        self.thread_.start()

到此这篇关于利用Python制作百度图片下载器的文章就介绍到这了,更多相关Python图片下载器内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: 利用Python制作百度图片下载器

本文链接: https://www.lsjlt.com/news/163777.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 利用Python制作百度图片下载器
    前段时间写了一个百度图片下载器,结果发现有很多人需要使用。说实话之前写的那一款百度图片下载器比较LOW,今天刚好有时间就做了一下升级。 更新了两个BUG,一个是图片下载达到几千张的时...
    99+
    2024-04-02
  • PyQt5实现百度图片下载器GUI界面
    通过 Pyqt5 实现一个界面化的下载器,在通过网络请求实现各种类型的图片的下载。可以通过界面上输入不同图片的关键字从而实现下载图片并将下载好的图片保存到自定义的文件路径中。 在介...
    99+
    2024-04-02
  • PyQt5如何实现百度图片下载器GUI界面
    本篇内容主要讲解“PyQt5如何实现百度图片下载器GUI界面”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“PyQt5如何实现百度图片下载器GUI界面”吧!通过 Pyqt5 实现一个界面化的下载器...
    99+
    2023-06-22
  • 利用Python多线程实现图片下载器
    目录导语开发工具环境搭建原理简介效果展示导语 之前有很多小伙伴说想学习一下多线程图片下载器,虽然好像已经过去很久了,不过还是上来安排一波吧。至于题目为什么说是构建一个小型数据集,因为...
    99+
    2024-04-02
  • 利用Python+Excel制作一个视频下载器
    说起Excel,那绝对是数据处理领域王者般的存在。 而作为网红语言Python,在数据领域也是被广泛使用。 其中Python的第三方库-xlwings,一个Python和Excel的...
    99+
    2024-04-02
  • python利用lxml库剩下操作svg图片
    目录lxml 操作 svg 图片示例lxml 给 svg 图片添加新元素lxml 删除 svg 图片中的元素在大多数场景中,我们都用 lxml 库解析网页源码,但...
    99+
    2023-01-28
    python lxml操作svg python 操作svg python lxml svg python lxml
  • 利用Python制作一个MOOC公开课下载器
    目录导语开发工具环境搭建先睹为快原理简介导语 记得很久以前写过一些中国大学MOOC上的视频下载器,不过好像都已经年久失修了。正好最近有需要,所以重新写了一个,顺便上来分享一波,寒假大...
    99+
    2024-04-02
  • python调用百度AI提取图片文字
    python本身也有识别图片转文字的框架,但是相比调用接口,识别的精度就略显不行了; 这是 百度AI 的网站: https://ai.baidu.com/ ; 点击右上角的 控制台 ,申请或者登陆; 进去之后左侧有 【文字识别】:点击【创建...
    99+
    2023-01-31
    文字 图片 python
  • python 使用requests爬取百度图片并显示
    爬取百度图片并显示 引言一、图片显示二、代码详解2.1 得到网页内容2.2 提取图片url2.3 图片显示 三、完整代码 引言 爬虫(Spider),又称网络爬虫(Web Crawle...
    99+
    2023-10-04
    python 爬虫 百度图片 requests
  • 怎么用Python制作图片
    这篇文章主要介绍“怎么用Python制作图片”,在日常操作中,相信很多人在怎么用Python制作图片问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用Python制作图片”的疑惑有所帮助!接下来,请跟着小编...
    99+
    2023-06-15
  • 用python制作个论文下载器(图形化界面)
    目录一、使用说明二、代码分析1. 功能函数2. 回调函数3. 线程生成函数4. 效果展示写在最后在科研学习的过程中,我们难免需要查询相关的文献资料,而想必很多小伙伴都知道SCI-HU...
    99+
    2024-04-02
  • 利用python制作词云图
    目录 前言 一、使用步骤 1.下载所需库 2.引入库 3.打开文本 4.分词 5.生成词云图 6.保存文件 总结 前言         词云图是一种为了文本数据的视觉表示,由词汇组成类似云的彩色图形,当需要统计文本中出现词汇的规模大小时,...
    99+
    2023-09-08
    python matplotlib
  • 怎么利用IDM加速下载百度网盘大文件
    这篇文章主要介绍“怎么利用IDM加速下载百度网盘大文件”,在日常操作中,相信很多人在怎么利用IDM加速下载百度网盘大文件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么利用IDM加速下载百度网盘大文件”的疑...
    99+
    2023-07-04
  • nodejs如何制作爬虫实现批量下载图片
    小编给大家分享一下nodejs如何制作爬虫实现批量下载图片,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!今天想获取一大批猫的图片,然后就在360流浪器搜索框中输入 猫 ,然后点击图片。就看...
    99+
    2024-04-02
  • Python如何利用百度地图获取两地距离
    这篇文章主要介绍“Python如何利用百度地图获取两地距离”,在日常操作中,相信很多人在Python如何利用百度地图获取两地距离问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python如何利用百度地图获取两...
    99+
    2023-06-20
  • 利用Python展示文件下载进度条
    目录1、前言2、requests3、思考1、前言 大家在用Python写一些小程序的时候,经常都会用到文件下载,对于一些较小的文件,大家可能不太在乎文件的下载进度,因为一会就下载完毕...
    99+
    2024-04-02
  • 使用python如何随心所欲地爬取百度图片
    小编给大家分享一下使用python如何随心所欲地爬取百度图片,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、前言之前爬取了很多静态网页的内容,包括:小说、图片等...
    99+
    2023-06-06
  • 怎么用Python制作表白图片
    本篇内容主要讲解“怎么用Python制作表白图片”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用Python制作表白图片”吧!在Python中一般使用Turtle来绘制对就是之前画樱花树的那...
    99+
    2023-06-01
  • Python+PyQt5制作一个图片查看器
    目录前言实现方式测试前言 在 PyQt 中可以使用很多方式实现照片查看器,最朴素的做法就是重写 QWidget 的 paintEvent()、mouse...
    99+
    2024-04-02
  • 利用Python制作心型照片墙效果
    每到一年一度的520等节假日,作为一个地地道道的程序猿心里慌得一批。除了吃饭买礼物看电影好像就没有更多的想法了,于是想想将女友从以前到现在的所有照片整理了一下准备制作一个前所未有的照...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作