分享7个 Python 实战项目练习


Posted in Python onMarch 03, 2022

但是问题有三个:

  • 1、我们不知道已经有哪些轮子已经造好了,哪个适合你用。有名有姓的的著名轮子就400多个,更别说没名没姓自己在制造中的轮子。
  • 2、确实没重复造轮子,但是在重复制造汽车。包括好多大神写的好几百行代码,为的是解决一个Excel本身就有的成熟功能。
  • 3、很多人是用来抓图,数据,抓点图片、视频、天气预报自娱自乐一下,然后呢?抓到大数据以后做什么用呢?比如某某啤酒卖的快,然后呢?比如某某电影票房多,然后呢?

以下是经过Python3.6.4调试通过的代码,与大家分享:

  • 1、抓取知乎图片
  • 2、听两个聊天机器人互相聊天
  • 3、AI分析唐诗的作者是李白还是杜甫
  • 4、彩票随机生成35选7
  • 5、自动写检讨书
  • 6、屏幕录相机
  • 7、制作Gif动图

1.抓取知乎图片,只用30行代码

from selenium import webdriver
import time
import urllib.request

driver = webdriver.Chrome()
driver.maximize_window()
driver.get("https://www.zhihu.com/question/29134042")
i = 0
while i < 10:
    driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
    time.sleep(2)
    try:
        driver.find_element_by_css_selector('button.QuestionMainAction').click()
        print("page" + str(i))
        time.sleep(1)
    except:
        break
result_raw = driver.page_source
content_list = re.findall("img src=\"(.+?)\" ", str(result_raw))
n = 0
while n < len(content_list):
    i = time.time()
    local = (r"%s.jpg" % (i))
    urllib.request.urlretrieve(content_list[n], local)
    print("编号:" + str(i))
    n = n + 1

2.听两个聊天机器人互相聊天

from time import sleep
import requests
s = input("请主人输入话题:")
while True:
    resp = requests.post("http://www.tuling123.com/openapi/api",data={"key":"4fede3c4384846b9a7d0456a5e1e2943", "info": s, })
    resp = resp.json()
    sleep(1)
    print('小鱼:', resp['text'])
    s = resp['text']
    resp = requests.get("http://api.qingyunke.com/api.php", {'key': 'free', 'appid':0, 'msg': s})
    resp.encoding = 'utf8'
    resp = resp.json()
    sleep(1)
    print('菲菲:', resp['content'])
#网上还有一个据说智商比较高的小i机器人,用爬虫的功能来实现一下:

import urllib.request
import re

while True:
    x = input("主人:")
    x = urllib.parse.quote(x)
    link = urllib.request.urlopen(
        "http://nlp.xiaoi.com/robot/webrobot?&callback=__webrobot_processMsg&data=%7B%22sessionId%22%3A%22ff725c236e5245a3ac825b2dd88a7501%22%2C%22robotId%22%3A%22webbot%22%2C%22userId%22%3A%227cd29df3450745fbbdcf1a462e6c58e6%22%2C%22body%22%3A%7B%22content%22%3A%22" + x + "%22%7D%2C%22type%22%3A%22txt%22%7D")
    html_doc = link.read().decode()
    reply_list = re.findall(r'\"content\":\"(.+?)\\r\\n\"', html_doc)
    print("小i:" + reply_list[-1])

3.分析唐诗的作者是李白还是杜甫

import jieba
from nltk.classify import NaiveBayesClassifier

# 需要提前把李白的诗收集一下,放在libai.txt文本中。
text1 = open(r"libai.txt", "rb").read()
list1 = jieba.cut(text1)
result1 = " ".join(list1)
# 需要提前把杜甫的诗收集一下,放在dufu.txt文本中。
text2 = open(r"dufu.txt", "rb").read()
list2 = jieba.cut(text2)
result2 = " ".join(list2)

# 数据准备
libai = result1
dufu = result2


# 特征提取
def word_feats(words):
    return dict([(word, True) for word in words])


libai_features = [(word_feats(lb), 'lb') for lb in libai]
dufu_features = [(word_feats(df), 'df') for df in dufu]
train_set = libai_features + dufu_features
# 训练决策
classifier = NaiveBayesClassifier.train(train_set)

# 分析测试
sentence = input("请输入一句你喜欢的诗:")
print("\n")
seg_list = jieba.cut(sentence)
result1 = " ".join(seg_list)
words = result1.split(" ")

# 统计结果


lb = 0
df = 0
for word in words:
    classResult = classifier.classify(word_feats(word))
    if classResult == 'lb':
        lb = lb + 1
    if classResult == 'df':
        df = df + 1

# 呈现比例
x = float(str(float(lb) / len(words)))
y = float(str(float(df) / len(words)))
print('李白的可能性:%.2f%%' % (x * 100))
print('杜甫的可能性:%.2f%%' % (y * 100))

4.彩票随机生成35选7

import random

temp = [i + 1 for i in range(35)]
random.shuffle(temp)
i = 0
list = []
while i < 7:
    list.append(temp[i])
    i = i + 1
list.sort()
print('\033[0;31;;1m')
print(*list[0:6], end="")
print('\033[0;34;;1m', end=" ")
print(list[-1])

5.自动写检讨书

import random
import xlrd

ExcelFile = xlrd.open_workbook(r'test.xlsx')
sheet = ExcelFile.sheet_by_name('Sheet1')
i = []
x = input("请输入具体事件:")
y = int(input("老师要求的字数:"))
while len(str(i)) < y * 1.2:
    s = random.randint(1, 60)
    rows = sheet.row_values(s)
    i.append(*rows)
print(" "*8+"检讨书"+"\n"+"老师:")
print("我不应该" + str(x)+",", *i)
print("再次请老师原谅!")
'''

以下是样稿:

请输入具体事件:抽烟
老师要求的字数:200
        检讨书

老师:

我不应该抽烟, 学校一开学就三令五申,一再强调校规校纪,提醒学生不要违反校规,可我却没有把学校和老师的话放在心上,没有重视老师说的话,没有重视学校颁布的重要事项,当成了耳旁风,这些都是不应该的。同时也真诚地希望老师能继续关心和支持我,并却对我的问题酌情处理。 无论在学习还是在别的方面我都会用校规来严格要求自己,我会把握这次机会。 但事实证明,仅仅是热情投入、刻苦努力、钻研学业是不够的,还要有清醒的政治头脑、大局意识和纪律观念,否则就会在学习上迷失方向,使国家和学校受损失。
再次请老师原谅!
'''

6.屏幕录相机,抓屏软件

from time import sleep
from PIL import ImageGrab

m = int(input("请输入想抓屏几分钟:"))
m = m * 60
n = 1
while n < m:
    sleep(0.02)
    im = ImageGrab.grab()
    local = (r"%s.jpg" % (n))
    im.save(local, 'jpeg')
    n = n + 1

7.制作Gif动图

from PIL import Image

im = Image.open("1.jpg")
images = []
images.append(Image.open('2.jpg'))
images.append(Image.open('3.jpg'))
im.save('gif.gif', save_all=True, append_images=images, loop=1, duration=1, comment=b"aaab

到此这篇关于分享7个 Python 实战项目代码的文章就介绍到这了,更多相关 Python 实战项目内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python元组操作实例解析
Sep 23 Python
教大家使用Python SqlAlchemy
Feb 12 Python
Python字符编码与函数的基本使用方法
Sep 30 Python
python调用百度语音识别实现大音频文件语音识别功能
Aug 30 Python
python批量复制图片到另一个文件夹
Sep 17 Python
Python基于Opencv来快速实现人脸识别过程详解(完整版)
Jul 11 Python
程序员的七夕用30行代码让Python化身表白神器
Aug 07 Python
Python一键安装全部依赖包的方法
Aug 12 Python
numpy ndarray 按条件筛选数组,关联筛选的例子
Nov 26 Python
django框架cookie和session用法实例详解
Dec 10 Python
配置python的编程环境之Anaconda + VSCode的教程
Mar 29 Python
忆童年!用Python实现愤怒的小鸟游戏
Jun 07 Python
python工具dtreeviz决策树可视化和模型可解释性
Python GUI编程之tkinter 关于 ttkbootstrap 的使用详解
python机器学习实现oneR算法(以鸢尾data为例)
Mar 03 #Python
详解python的异常捕获
Mar 03 #Python
分享提高 Python 代码的可读性的技巧
Mar 03 #Python
使用python创建股票的时间序列可视化分析
Python Pandas读取Excel日期数据的异常处理方法
You might like
一步一步学习PHP(2)――PHP类型
2010/02/15 PHP
php字符编码转换之gb2312转为utf8
2013/10/28 PHP
PHP判断远程图片或文件是否存在的实现代码
2014/02/20 PHP
PHP5.3以上版本安装ZendOptimizer扩展
2015/03/27 PHP
浅谈COOKIE和SESSION区别
2015/07/19 PHP
Laravel框架实现的rbac权限管理操作示例
2019/01/16 PHP
laravel5.1 ajax post 传值_token示例
2019/10/24 PHP
php 多继承的几种常见实现方法示例
2019/11/18 PHP
js控制表单操作的常用代码小结
2013/08/15 Javascript
Javascript解析URL方法详解
2014/12/05 Javascript
javascript中 try catch用法
2015/08/16 Javascript
js获取及判断键盘按键的方法
2015/12/01 Javascript
javascript实现用户点击数量统计
2016/12/25 Javascript
vue源码学习之Object.defineProperty对象属性监听
2018/05/30 Javascript
Vue中的作用域CSS和CSS模块的区别
2018/10/09 Javascript
如何解决webpack-dev-server代理常切换问题
2019/01/09 Javascript
从0到1搭建element后台框架优化篇(打包优化)
2019/05/12 Javascript
Smartour 让网页导览变得更简单(推荐)
2019/07/19 Javascript
Layui实现数据表格默认全部显示(不要分页)
2019/10/26 Javascript
微信小程序分享小程序码的生成(带参数)以及参数的获取
2020/03/25 Javascript
微信跳一跳python辅助软件思路及图像识别源码解析
2018/01/04 Python
Python抽象和自定义类定义与用法示例
2018/08/23 Python
Python3 获取一大段文本之间两个关键字之间的内容方法
2018/10/11 Python
实例详解python函数的对象、函数嵌套、名称空间和作用域
2019/05/31 Python
详解使用PyInstaller将Pygame库编写的小游戏程序打包为exe文件
2019/08/23 Python
python正则表达式匹配IP代码实例
2019/12/28 Python
亚马逊加拿大网站:Amazon.ca
2020/01/06 全球购物
C++是不是类型安全的
2014/02/18 面试题
你们项目是如何进行变更控制的
2015/08/26 面试题
解决方案设计综合面试题
2015/08/31 面试题
九州传奇上机题
2014/07/10 面试题
会计专业自我评价
2014/02/12 职场文书
乡镇消防安全责任书
2014/07/23 职场文书
含预算的公司户外活动方案
2014/08/16 职场文书
经理助理岗位职责
2015/02/02 职场文书
Java 使用类型为Object的变量指向任意类型的对象
2022/04/13 Java/Android