网站建设课程设计报告总结网站的管理包括

diannao/2026/1/18 16:06:13/文章来源:
网站建设课程设计报告总结,网站的管理包括,wordpress怎么做手机端,php wap网站源码场景 业务上有许多发送邮件的场景#xff0c;发送的邮件基本上都是自动发送的#xff0c;而且邮件内容是很重要的#xff0c;对于邮件发没发送#xff0c;发送的时间点对不对每次回归测试工作量太大了#xff0c;所以考虑把这部分内容加入到自动化测试中 工具 python g…场景 业务上有许多发送邮件的场景发送的邮件基本上都是自动发送的而且邮件内容是很重要的对于邮件发没发送发送的时间点对不对每次回归测试工作量太大了所以考虑把这部分内容加入到自动化测试中 工具 python gmail 要访问gmail先要去console.cloud.google.com创建访问凭证如图所示进行下载后获取一个json文件credentials.json 实现代码 其中DateFormat 和get_path是自定义方法分别是获取时间和获取文件 from __future__ import print_function import base64 import os.path import logging import timefrom utils.get_file_path import get_path from google.auth.transport.requests import Request from google.oauth2.credentials import Credentials from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.discovery import build from googleapiclient.errors import HttpError from utils.date_format import DateFormat from datetime import datetime # If modifying these scopes, delete the file token.json. SCOPES [https://www.googleapis.com/auth/gmail.readonly, https://www.googleapis.com/auth/gmail.modify]class GmailSearch:def __init__(self):get token.json.self.creds None# The file token.json stores the users access and refresh tokens, and is# created automatically when the authorization flow completes for the first# time.file_token get_path(token.json, utils)if os.path.exists(file_token):self.creds Credentials.from_authorized_user_file(file_token, SCOPES)# If there are no (valid) credentials available, let the user log in.if not self.creds or not self.creds.valid:if self.creds and self.creds.expired and self.creds.refresh_token:self.creds.refresh(Request())else:flow InstalledAppFlow.from_client_secrets_file(get_path(credentials.json, utils), SCOPES)self.creds flow.run_local_server(port0)# Save the credentials for the next runwith open(file_token, w) as token:token.write(self.creds.to_json())def search_email(self, **kwargs):search email by keywords ( from, sender , subject, before, after, unread, interval):param kwargs: 默认查询当前时间前后10分钟未读的邮件, 如果第一次未查询到默认会间隔10s钟查询一次共查询三次 如果找到的话会将找到的标记成已读查询主题参数 subject发送人参数 sender是否已读 : unread (bool类型查询时间段参数 before, after设置查询间隔 interval设置查询次数 count:return: the email, if no result is found, return nonecount kwargs.get(count) if kwargs.get(count) is not None else 3if count 0:return no email foundsearch_str [in:inbox]unread False if kwargs.get(unread) else Trueif unread:search_str.append(is:unread)if kwargs.get(attachment):search_str.append(has:attachment)if kwargs.get(sender): # value like atestemail.com, btestemail.comsearch_str.append(ffrom:({kwargs.get(sender)}))if kwargs.get(to): # value like atestemail.com, btestemail.comsearch_str.append(fto:({kwargs.get(to)}))if kwargs.get(subject): search_str.append(fsubject:({kwargs.get(subject)}))if kwargs.get(before):search_str.append(fbefore:{kwargs.get(before)})else: # default value is current 10.minutessearch_str.append(fbefore:{DateFormat.from_current_minutes(10)})if kwargs.get(after):search_str.append(fafter:{kwargs.get(after)})else: # default value is current - 10.minutessearch_str.append(fafter:{DateFormat.from_current_minutes(-10)})interval kwargs.get(interval) if kwargs.get(interval) else 10query .join(search_str)unread kwargs.get(unread)time.sleep(interval)logging.info(datetime.now().strftime(%H:%M:%S))logging.info(str(count - 1))try:# Call the Gmail APIservice build(gmail, v1, credentialsself.creds)results service.users().messages().list(userIdme, qquery).execute()messages results.get(messages)if not messages:logging.info(No email found, continue to search)kwargs.update({count: count-1})return self.search_email_content(**kwargs)# get the last email, mark read, return email body# body []last_email service.users().messages().get(userIdme, idmessages[0][id]).execute()payload last_email[payload]# internalDate last_email[internalDate]# The Body of the message is in Encrypted format. So, we have to decode it.# Get the data and decode it with base 64 decoder.parts payload.get(parts)[0][body] if payload.get(parts) else payload.get(body)data parts[data]data data.replace(-, ).replace(_, /)decoded_data base64.b64decode(data)body str(decoded_data, utf-8)# mark readif unread:logging.info( mark read);service.users().messages().modify(userIdme, idmessages[0][id],body{removeLabelIds: [UNREAD]}).execute()return bodyexcept HttpError as error:logging.info(fAn error occurred: {error})# testGmailSearch() # test.search_email(before2023/10/3, after2023/9/25, totesttest.com, unreadTrue) 参考文档Gmail api文档

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/90649.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

东坑网页设计东莞seo网络营销策划

vue中keep-alive组件主要有三个常用的props。 1,include存放的name是组件自身的name属性,只有名称匹配的组件会被缓存2,exclude,任何名称匹配的组件都不会被缓存3,max,最多可以缓存多少组件实例&#xff0…

网站内容上传要求中天钢铁 网站建设

使用腾讯云服务器搭建网站全流程,包括轻量应用服务器和云服务器CVM建站教程,轻量可以使用应用镜像一键建站,云服务器CVM可以通过安装宝塔面板的方式来搭建网站,腾讯云服务器网txyfwq.com整理使用腾讯云服务器建站教程,…

网上停车场做施工图人员网站内蒙古赤峰市信息网官网

点击此处查看原题​​​​​​​ *思路:首先要求 00 11 尽可能的多,所以尽可能多的多配对,配对只在i , i 1之间发生,所以只需要关注str[i] 和 str[i 1]即可,如果str[i] str[i 1] ,那么一定配对&#x…

怎么建个废品网站投资建设网站

一、前言这几年前端的发展速度就像坐上了火箭,各种的框架一个接一个的出现,需要学习的东西越来越多,分工也越来越细,作为一个 .NET Web 程序猿,多了解了解行业的发展,让自己扩展出新的技能树,对…

做网站在手机显示怎么很乱太原建站

一 中断线程 1.1 中断概念 1.在java中,没有提供一种立即停止一条线程。但却给了停止线程的协商机制-中断。 中断是一种协商机制。中断的过程完全需要程序员自己实现。也即,如果要中断一个线程,你需要手动调用该线程的interrupt()方法&…

怎样做音视频宣传网站做体育直播网站

在C语言中,static的字面意思很容易把我们导入歧途,其实它的作用有三条。 (1)先来介绍它的第一条也是最重要的一条:隐藏。 当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。…

淘宝网站icp备案PHP+Ajax网站开发典型实例

0小桥的神秘礼物盒 - 蓝桥云课 (lanqiao.cn) 问题描述 在一个阳光明媚的早晨,小桥收到了一份神秘的礼物--一只魔法盒子。这个盒子有四个按钮,每个按钮都有特殊的功能: 按钮 A:“添加”,将一个神秘物品 (每个物品都有一个独特的编号)放入盒子中…

铁岭做网站cms是啥

一、什么是字典?字典是Python语言中唯一的映射类型。映射类型对象里哈希值(键,key)和指向的对象(值,value)是一对多的的关系,通常被认为是可变的哈希表。字典对象是可变的,它是一个容器类型,能存储任意个数…

各大网站网址跑流量的网站

vscode 扩展商店链接 https://marketplace.visualstudio.com/vscode settings sync 插件

做网站做哪个行业好什么装修网站做的好的

参考自B站该视频 1:电阻 贴片电阻的读取方式 四环电阻 2:电容 其他的电子元器件

优秀高端网站建设公司国内酷炫网站

最近在电子工业出版社做的《计算机视觉入门路线图》讲座的部分PPT。 主要介绍了计算机视觉的学习基本路线。

温州做网站多少钱瑞安哪里有做百度的网站

什么是套接字?Socket基本介绍一、什么是套接字?二、套接字特性三、套接字缓冲区一、什么是套接字? 套接字是一种通信机制(通信的两方的一种约定),socket屏蔽了各个协议的通信细节,提供了tcp/ip…

天猫网站什么时候建设云服务器可以做两个网站

根据IDC最新发布的《中国商业智能和分析软件市场跟踪报告,2023H2》显示,2023下半年,中国商业智能与分析软件市场规模为5.2亿美元,同比增长为3.7%。其中,本地部署收入占比为89.3%,同比增长1.7%;公…

浙江百度代理公司seo站长平台

文章目录 情景一 : 二分查找情景二 : 找出一个 > num 的最左侧的位置情景三 : 找出一个 < num 的最右侧的位置leetcode 162 :寻找峰值leetcode 69 : x 的平方根 首先来简介一下二分搜索算法,二分搜索是一种每次砍半的算法,最经典的案例当然是我们的二分查找算法,但是大部…

百度网站打开百度关键词工具

列表的遍历&#xff1a; a [10,20,30,40] for obj in a: #obj 是临时变量名称&#xff0c;随意起名print(obj) 执行结果&#xff1a; 复制列表所有的元素到新列表对象&#xff1a; list1 [30,40,50] list2 list1 #只是将list2也指向了列表对象。也就是说list…

杭州公司做网站青海微信网站建设

OSS网页上传和断点续传主要根据BrowserJS-SDK和相关文档整理而得&#xff0c;快速构建OSS上传应用 一、Bucket设置 浏览器中直接访问OSS需要开通Bucket的CORS设置 将allowed origins设置成 *将allowed methods设置成 PUT, GET, POST, DELETE, HEAD将allowed headers设置成 *将e…

官渡网站设计制作浙江省城乡建设住房厅网

导读&#xff1a; 欢迎阅读《AI大模型日报》&#xff0c;内容基于Python爬虫和LLM自动生成。目前采用“文心一言”生成了每条资讯的摘要。 标题: 速递&#xff5c;木头姐 ARK 宣布已投资 OpenAI&#xff01;还将 Anthropic 及 Figure1 等 AI 独角兽一网打尽摘要: ARK已通过其风…

可以打开所有网站的浏览器wordpress企业网站定制教程 一

1.简介 Java NIO是从Java 1.4引入的库。 自从Java NIO推出以来&#xff0c;它提供了另一种方法来处理I / O和网络事务。 它被认为是Java网络和Java IO库的替代方法。 开发Java NIO的目的是使输入和输出的事务异步和非阻塞。 阻塞和非阻塞IO的概念将在后面的部分中介绍。 目录…

上海外贸网站制作网络服务商在哪咨询

目录 而不使用enabled属性 现在&#xff0c;使用enabled属性 我们可以使用enabled属性来忽略类中的所有情况吗&#xff1f; Test注解有很多属性&#xff0c;enabled也是其中之一。在这篇文章中&#xff0c;我们将详细讨论enabled属性。 enabled属性有什么作用&#xff1f;当…

办网站流程天河网站建设方案

1.TEXTAREA自适应文字行数的多少 2.脚本永不出错<script LANGUAGE"javascript"></script>3.ENTER键可以让光标移到下一个输入框4.预定秒数内自动转到指定网址5.怎么改变滚动条的颜色&#xff0c;只有ie5.5版本以上才能支持。 这是使用CSS语言&#xff0c…