python常用小脚本实例总结

Python常用小脚本实例总结

简介

本文将分享几个常用的Python小脚本实例,这些脚本几乎可以应用在任何领域,也可以作为日常工作生活的小工具。

实例1:批量下载网页图片

我们经常需要从一个网页上面抓取很多图片,如果手动一个一个下载的话效率太低,这时候可以使用Python进行批量下载。我们在代码中引入requestsos两个模块,前者用于向服务器发起请求,获取网页内容和图片,后者用于管理本地文件。

import requests
import os

def download_imgs_from_url(url, folder_path):
    response = requests.get(url)
    if not response.ok:
        print('Response error:', response.status_code)
        return
    if not os.path.exists(folder_path):
        os.makedirs(folder_path)
    for img_url in response.content.decode('utf-8').split('\n'):
        img_url = img_url.strip()
        if not img_url or img_url.startswith('#'):
            continue
        img_name = img_url.split('/')[-1]
        img_path = os.path.join(folder_path, img_name)
        with open(img_path, 'wb') as f:
            f.write(requests.get(img_url).content)
            print('Downloaded', img_path)
  • url是目标网页的链接;
  • folder_path是要保存图片的文件夹路径。

我们调用函数可以这样:

url = 'https://www.example.com/images/'
folder_path = './example/images/'
download_imgs_from_url(url, folder_path)

实例2:统计单词出现频率

我们可以使用Python统计一篇文章中不同单词出现的频率,这对于文本分析非常有用,这里使用的是纯文本文件,但同样适用于其他格式的文件。

import os

def count_words_freq(file_path):
    with open(file_path, encoding='utf-8') as f:
        words = f.read().lower().split()
    freq_dict = {}
    for word in words:
        if len(word) < 4:
            continue
        freq_dict[word] = freq_dict.get(word, 0) + 1
    freq_list = sorted(freq_dict.items(), key=lambda x:x[1], reverse=True)
    return freq_list
  • file_path是要分析的纯文本文件路径。

我们可以调用这个函数并打印出单词出现频率前十名:

file_path = 'example.txt'
freq_list = count_words_freq(file_path)
for word, freq in freq_list[:10]:
    print(word, freq)

总结

这里我们实现了两个小脚本,一个用于批量下载网页图片,一个用于统计单词出现频率,这些小脚本都可以在日常工作中使用,增强效率。在使用这些脚本时,我们需要注意数据来源的合法性和用户协议的要求,防止违反相关法律规定。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python常用小脚本实例总结 - Python技术站

(0)
上一篇 2023年5月13日
下一篇 2023年5月13日

相关文章

  • python实现五子棋程序

    下面是详细讲解Python实现五子棋程序的完整攻略: 确定需求 在实现五子棋之前,需要确定程序的具体需求,包括但不限于游戏规则、棋盘大小、输出方式等。在本攻略中,我们假设五子棋程序的具体需求如下: 游戏规则:使用标准的五子棋规则进行游戏,先连成五颗棋子的玩家获胜; 棋盘大小:默认棋盘大小为 15×15,玩家可以通过参数调整棋盘大小; 输出方式:使用字符画的方…

    python 2023年5月19日
    00
  • Python常用的正则表达式处理函数详解

    Python常用的正则表达式处理函数详解 正则表达式是一种强大的文本处理工具,可以用于各种文本处理,如数据清洗、文本分、信息提取等。在Python中,我们使用模块提供的函数来操作正则表达式。本攻略将详细讲解Python常用的正则表达式处理函数,包括re.match()、re.search()、re.findall()、re.sub()、re.split()等…

    python 2023年5月14日
    00
  • 在服务器端实现无间断部署Python应用的教程

    在服务器端实现无间断部署Python应用的教程 在服务器端实现无间断部署Python应用可以确保应用在更新时不会中断服务,从而提高应用的可用性。本文将详细讲解在服务器端实现无间断部署Python应用的教程,包括使用Nginx和Gunicorn、安装Python虚拟环境、部署Python应用等内容,并提供两个示例。 使用Nginx和Gunicorn 在服务器端…

    python 2023年5月15日
    00
  • 如何用python 操作MongoDB数据库

    下面就是如何用Python操作MongoDB数据库的攻略。 1. 安装MongoDB和PyMongo 在使用Python操作MongoDB之前,需要先安装MongoDB和PyMongo。 MongoDB官网:https://www.mongodb.com/ PyMongo官网:https://pypi.org/project/pymongo/ 安装好Mong…

    python 2023年5月14日
    00
  • 一文带你重温一下Python的对象模型

    以下是“一文带你重温一下Python的对象模型”的完整攻略: 什么是Python的对象模型? Python是一种面向对象的编程语言。在Python中,一切皆是对象。Python的对象模型是描述Python中对象、类型和值之间关系的体系结构。它定义了如何创建、操作和销毁对象以及它们之间的关系。 Python的对象模型是如何实现的? Python的对象模型是通过…

    python 2023年6月5日
    00
  • Python教程按照字典的键或值进行排序方法解析

    Python可以使用sorted方法来对字典进行排序。sorted方法返回一个由排序后的键、值组成的列表。 按照字典键排序 对字典按照键进行排序方法如下。使用sorted方法,对字典test_dict的键进行排序。 test_dict = {‘a’: 3, ‘b’: 4, ‘c’: 1, ‘d’: 2} sorted_dict = sorted(test_d…

    python 2023年5月13日
    00
  • 详解python内置模块urllib

    详解Python内置模块urllib urllib是Python中一个内置的HTTP请求库,可以方便地进行HTTP请求、URL解析、Cookie处理等操作。本文将详细讲解urllib模块的使用方法,包括HTTP请求、URL解析、Cookie处理等操作。 HTTP请求 以下是一个使用urllib模块发送HTTP请求的示例: import urllib.requ…

    python 2023年5月15日
    00
  • 11行Python代码实现解密摩斯密码

    下面是详细的攻略: 1.了解摩斯密码 摩斯密码是一种用点(·)和线(–)作为符号,用于传输字母、数字和标点符号的电报代码。点和线的不同排列组合代表不同的字符。例如,字母A的摩斯码是·—,字母B的摩斯码是—···。 2.理解代码思路 这段Python代码使用了一个字典来存储每个字符所对应的摩斯码,然后使用字符串处理方法join()和split()来实现编码和解…

    python 2023年5月20日
    00
合作推广
合作推广
分享本页
返回顶部