7个实用的Python自动化代码,别再重复造轮子了!
关于Python有一句名言:不要重复造轮子。
但是问题有三个:
1、你不知道已经有哪些轮子已经造好了,哪个适合你用。有名有姓的的著名轮子就400多个,更别说没名没姓自己在制造中的轮子。
2、确实没重复造轮子,但是在重复制造汽车。包括好多大神写的好几百行代码,为的是解决一个Excel本身就有的成熟功能。
3、很多人是用来抓图,数据,抓点图片、视频、天气预报自娱自乐一下,然后呢?抓到大数据以后做什么用呢?比如某某啤酒卖的快,然后呢?比如某某电影票房多,然后呢?
以下是经过Python3.6.4调试通过的代码,与大家分享:
1、抓取知乎图片
2、听两个聊天机器人互相聊天
3、AI分析唐诗的作者是李白还是杜甫
4、彩票随机生成35选7
5、自动写检讨书
6、屏幕录相机
7、制作Gif动图
① 抓取知乎图片,只用30行代码
from
import
import
while
try
except
break
while
selenium
import webdriver
import
time
import
urllib.request
driver = webdriver.Chrome()
driver.maximize_window()
driver.get(
"https://www.zhihu.com/question/29134042")
i =
0while
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 =
0while
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② 没事闲的时候,听两个聊天机器人互相聊天
from
import
whileTrue
#网上还有一个据说智商比较高的小i机器人,用爬虫的功能来实现一下:
import
import
whileTrue
"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"
time
import sleep
import
requests
s = input(
"请主人输入话题:")
whileTrue
:
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
whileTrue
:
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])
③ 分析唐诗的作者是李白还是杜甫
import
from
# 需要提前把李白的诗收集一下,放在libai.txt文本中。
# 需要提前把杜甫的诗收集一下,放在dufu.txt文本中。
# 数据准备
# 特征提取
defword_feats(words):
return
# 训练决策
# 分析测试
# 统计结果
for
if
if
# 呈现比例
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
# 特征提取
defword_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 =
0df =
0for
word
in words:
classResult = classifier.classify(word_feats(word))
if
classResult ==
'lb':
lb = lb +
1if
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))
④ 彩票随机生成35选7
import
while
random
temp = [i +
1for i
in range(
35)]
random.shuffle(temp)
i =
0list = []
while
i <
7:
list.append(temp[i])
i = i +
1list.sort()
print(
'\033[0;31;;1m')
print(*list[
0:
6], end=
"")
print(
'\033[0;34;;1m', end=
" ")
print(list[
-1])
⑤ 自动写检讨书
import
import
while
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
检讨书
老师:
我不应该抽烟, 学校一开学就三令五申,一再强调校规校纪,提醒学生不要违反校规,可我却没有把学校和老师的话放在心上,没有重视老师说的话,没有重视学校颁布的重要事项,当成了耳旁风,这些都是不应该的。同时也真诚地希望老师能继续关心和支持我,并却对我的问题酌情处理。 无论在学习还是在别的方面我都会用校规来严格要求自己,我会把握这次机会。 但事实证明,仅仅是热情投入、刻苦努力、钻研学业是不够的,还要有清醒的政治头脑、大局意识和纪律观念,否则就会在学习上迷失方向,使国家和学校受损失。
再次请老师原谅!
'''
⑥ 屏幕录相机,抓屏软件
time
import sleep
from PIL
import ImageGrab
m = int(input(
"请输入想抓屏几分钟:"))
m = m *
60n =
1while n < m:
sleep(
0.02)
im = ImageGrab.grab()
local = (
r"%s.jpg" % (n))
im.save(local,
'jpeg')
n = n +
1⑦ 制作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"aaabb")
可以试着玩起来了。
链接:https://mp.weixin.qq.com/s/EkXTukayNzSYTkepVRMtNA
(版权归原作者所有,侵删)
最新评论
推荐文章
作者最新文章
你可能感兴趣的文章
Copyright Disclaimer: The copyright of contents (including texts, images, videos and audios) posted above belong to the User who shared or the third-party website which the User shared from. If you found your copyright have been infringed, please send a DMCA takedown notice to [email protected]. For more detail of the source, please click on the button "Read Original Post" below. For other communications, please send to [email protected].
版权声明:以上内容为用户推荐收藏至CareerEngine平台,其内容(含文字、图片、视频、音频等)及知识版权均属用户或用户转发自的第三方网站,如涉嫌侵权,请通知[email protected]进行信息删除。如需查看信息来源,请点击“查看原文”。如需洽谈其它事宜,请联系[email protected]。
版权声明:以上内容为用户推荐收藏至CareerEngine平台,其内容(含文字、图片、视频、音频等)及知识版权均属用户或用户转发自的第三方网站,如涉嫌侵权,请通知[email protected]进行信息删除。如需查看信息来源,请点击“查看原文”。如需洽谈其它事宜,请联系[email protected]。