7个实用的Python自动化代码

Python技术

共 7587字,需浏览 16分钟

 · 2023-08-02

大家注意:因为微信最近又改了推送机制,经常有小伙伴说错过了之前被删的文章,比如前阵子冒着风险写的爬虫,再比如一些限时福利,错过了就是错过了。


所以建议大家加个星标,就能第一时间收到推送。👇


8e6e94e8de3554eb4f2d14fcf0a85512.webp



来源:爱数据
关于Python有一句名言:不要重复造轮子 但是问题有三个: 1、你不知道已经有哪些轮子已经造好了,哪个适合你用。有名有姓的的著名轮子就400多个,更别说没名没姓自己在制造中的轮子 2、确实没重复造轮子,但是在重复制造汽车。包括好多大神写的好几百行代码,为的是解决一个Excel本身就有的成熟功能 3、很多人是用来抓图,数据,抓点图片、视频、天气预报自娱自乐一下,然后呢?抓到大数据以后做什么用呢?比如某某啤酒卖得快,然后呢?比如某某电影票房多,然后呢? 以下是经过Python3.6.4调试通过的代码,与大家分享:

1396543ab09efb01a91131dd95dfd352.webp

抓取知乎图片,只用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

6d7a7775ab22f3bf5a9e5d56ba3c6e4f.webp

没事闲的时候,听两个聊天机器人互相聊天
    
    
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])

fb9bb74d38e144004d91c545f3debf9f.webp

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

    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, Truefor 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))

ecd3d8849b4854d4573dc9c49eac44c1.webp

彩票随机生成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])

41299fd74b86853b612d417e68ff0bdd.webp

自动写检讨书

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(160)
    rows = sheet.row_values(s)
    i.append(*rows)
print(" "*8+"检讨书"+"\n"+"老师:")
print("我不应该" + str(x)+",", *i)
print("再次请老师原谅!")
'''
以下是样稿:

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

e5278a035047e54855aa84eee3586698.webp

屏幕录相机,抓屏软件

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

c055edaf05740a0530e0c908c605cd2d.webp

制作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,)

交流群

时隔2个月,摸鱼学习交流群再次限时开放了。

fd85c4a9c55d36cfbb022686743e18e2.webp

Python技术交流群(技术交流、摸鱼、白嫖课程为主)又不定时开放了,感兴趣的朋友,可以在下方公号内回复:666,即可进入,一起 100 天计划

老规矩 ,酱友们还记得么, 右下角的 “在看” 点一下 如果感觉文章内容不错的话,记得分享朋友圈让更多的人知道!

bd3c850b6c41b74adee712663f416088.webp

      

神秘礼包获取方式

扫描下方二维码添加私人微信,再送一套精华电子书! ,回复 电子书


浏览 15
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报