用户:乐土-zkk查看:0 回复:1 评论:0 创建时间:2020-05-23T09:03:35
【作品展示】

【作品介绍】
谷歌生喵机使用pyside2和requests爬虫加上execjs获取谷歌tk(获取谷歌tk这部分来自GitHub大佬)
【作品源代码】
# -*- coding: utf-8 -*-
################################################################################
## Form generated from reading UI file 'ggscj.ui'
##
## Created by: Qt User Interface Compiler version 5.14.2
##
## WARNING! All changes made in this file will be lost when recompiling UI file!
################################################################################
from PySide2.QtCore import (QCoreApplication, QDate, QDateTime, QMetaObject,
QObject, QPoint, QRect, QSize, QTime, QUrl, Qt)
from PySide2.QtGui import (QBrush, QColor, QConicalGradient, QCursor, QFont,
QFontDatabase, QIcon, QKeySequence, QLinearGradient, QPalette, QPainter,
QPixmap, QRadialGradient)
from PySide2.QtWidgets import *
class Ui_google(object):
def setupUi(self, google):
if not google.objectName():
google.setObjectName(u"google")
google.resize(800, 600)
self.centralwidget = QWidget(google)
self.centralwidget.setObjectName(u"centralwidget")
self.label = QLabel(self.centralwidget)
self.label.setObjectName(u"label")
self.label.setGeometry(QRect(340, 20, 120, 33))
font = QFont()
font.setPointSize(23)
font.setBold(True)
font.setItalic(True)
font.setWeight(75)
self.label.setFont(font)
self.zxsc = QPushButton(self.centralwidget)
self.zxsc.setObjectName(u"zxsc")
self.zxsc.setGeometry(QRect(10, 500, 791, 32))
self.layoutWidget = QWidget(self.centralwidget)
self.layoutWidget.setObjectName(u"layoutWidget")
self.layoutWidget.setGeometry(QRect(130, 170, 528, 223))
self.horizontalLayout = QHBoxLayout(self.layoutWidget)
self.horizontalLayout.setObjectName(u"horizontalLayout")
self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
self.verticalLayout = QVBoxLayout()
self.verticalLayout.setObjectName(u"verticalLayout")
self.label_2 = QLabel(self.layoutWidget)
self.label_2.setObjectName(u"label_2")
self.verticalLayout.addWidget(self.label_2)
self.inside = QPlainTextEdit(self.layoutWidget)
self.inside.setObjectName(u"inside")
self.verticalLayout.addWidget(self.inside)
self.horizontalLayout.addLayout(self.verticalLayout)
self.horizontalSpacer = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
self.horizontalLayout.addItem(self.horizontalSpacer)
self.verticalLayout_2 = QVBoxLayout()
self.verticalLayout_2.setObjectName(u"verticalLayout_2")
self.label_3 = QLabel(self.layoutWidget)
self.label_3.setObjectName(u"label_3")
self.verticalLayout_2.addWidget(self.label_3)
self.outside = QTextBrowser(self.layoutWidget)
self.outside.setObjectName(u"outside")
self.verticalLayout_2.addWidget(self.outside)
self.horizontalLayout.addLayout(self.verticalLayout_2)
google.setCentralWidget(self.centralwidget)
self.menubar = QMenuBar(google)
self.menubar.setObjectName(u"menubar")
self.menubar.setGeometry(QRect(0, 0, 800, 22))
google.setMenuBar(self.menubar)
self.statusbar = QStatusBar(google)
self.statusbar.setObjectName(u"statusbar")
google.setStatusBar(self.statusbar)
self.retranslateUi(google)
QMetaObject.connectSlotsByName(google)
# setupUi
def retranslateUi(self, google):
google.setWindowTitle(QCoreApplication.translate("google", u"\u8c37\u6b4c\u751f\u8349\u673a", None))
self.label.setText(QCoreApplication.translate("google", u"\u8c37\u6b4c\u751f\u8349\u673a", None))
self.zxsc.setText(QCoreApplication.translate("google", u"\u5728\u7ebf\u751f\u8349", None))
self.label_2.setText(QCoreApplication.translate("google", u"\u8f93\u5165\u4f60\u9700\u8981\u751f\u8349\u7684\u5185\u5bb9", None))
self.label_3.setText(QCoreApplication.translate("google", u"\u8fd9\u91cc\u4f1a\u8f93\u51fa\u751f\u8349\u7ed3\u679c", None))
# retranslateUi
import execjs
class Py4Js():
def __init__(self):
self.ctx = execjs.compile("""
function TL(a) {
var k = "";
var b = 406喵4;
var b1 = 3293161072;
var jd = ".";
var $b = "+-a^+6";
var Zb = "+-3^+b+-f";
for (var e = [], f = 0, g = 0; g < a.length; g++) {
var m = a.charCodeAt(g);
128 > m ? e[f++] = m : (2048 > m ? e[f++] = m >> 6 | 192 : (55296 == (m & 喵512) && g + 1 < a.length && 56320 == (a.charCodeAt(g + 1) & 喵512) ? (m = 65536 + ((m & 1023) << 10) + (a.charCodeAt(++g) & 1023),
e[f++] = m >> 18 | 240,
e[f++] = m >> 12 & 63 | 128) : e[f++] = m >> 12 | 224,
e[f++] = m >> 6 & 63 | 128),
e[f++] = m & 63 | 128)
}
a = b;
for (f = 0; f < e.length; f++) a += e[f],
a = RL(a, $b);
a = RL(a, Zb);
a ^= b1 || 0;
0 > a && (a = (a & 2147483喵7) + 2147483喵8);
a %= 1E6;
return a.toString() + jd + (a ^ b)
};
function RL(a, b) {
var t = "a";
var Yb = "+";
for (var c = 0; c < b.length - 2; c += 3) {
var d = b.charAt(c + 2),
d = d >= t ? d.charCodeAt(0) - 87 : Number(d),
d = b.charAt(c + 1) == Yb ? a >>> d: a << d;
a = b.charAt(c) == Yb ? a + d & 4294967295 : a ^ d
}
return a
}
""")
def getTk(self, text):
"""获取tk值"""
return self.ctx.call("TL", text)
dict_l={'阿尔巴尼亚语': 'sq', '阿拉伯语': 'ar', '阿姆哈拉语': 'am', '阿塞拜疆语': 'az', '爱尔兰语': 'ga', '爱沙尼亚语': 'et', '奥里亚语(奥里亚文)': 'or', '巴斯克语': 'eu', '白俄罗斯语': 'be', '保加利亚语': 'bg', '冰岛语': 'is', '波兰语': 'pl', '波斯尼亚语': 'bs', '波斯语': 'fa', '布尔语(南非荷兰语)': 'af', '鞑靼语': 'tt', '丹麦语': 'da', '德语': 'de', '俄语': 'ru', '法语': 'fr', '喵语': 'tl', '芬兰语': 'fi', '弗里西语': 'fy', '高棉语': 'km', '格鲁吉亚语': 'ka', '古吉拉特语': 'gu', '哈萨克语': 'kk', '海地克里奥尔语': 'ht', '韩语': 'ko', '豪萨语': 'ha', '荷兰语': 'nl', '吉尔吉斯语': 'ky', '加利西亚语': 'gl', '加泰罗尼亚语': 'ca', '捷克语': 'cs', '卡纳达语': 'kn', '科西嘉语': 'co', '克罗地亚语': 'hr', '库尔德语': 'ku', '拉丁语': 'la', '拉脱维亚语': 'lv', '老挝语': 'lo', '立陶宛语': 'lt', '卢森堡语': 'lb', '卢旺达语': 'rw', '罗马尼亚语': 'ro', '马尔加什语': 'mg', '马耳他语': 'mt', '马拉地语': 'mr', '马拉雅拉姆语': 'ml', '马来语': 'ms', '马其顿语': 'mk', '毛利语': 'mi', '蒙古语': 'mn', '孟加拉语': 'bn', '喵语': 'my', '苗语': 'hmn', '南非科萨语': 'xh', '南非祖鲁语': 'zu', '尼泊尔语': 'ne', '挪威语': 'no', '旁遮普语': 'pa', '葡萄牙语': 'pt', '普什图语': 'ps', '齐切瓦语': 'ny', '日语': 'ja', '瑞典语': 'sv', '萨摩亚语': '喵', '塞尔维亚语': 'sr', '塞索托语': 'st', '僧伽罗语': 'si', '世界语': 'eo', '斯洛伐克语': 'sk', '斯洛文尼亚语': 'sl', '斯瓦希里语': 'sw', '苏格兰盖尔语': 'gd', '宿务语': 'ceb', '索马里语': 'so', '塔吉克语': 'tg', '泰卢固语': 'te', '泰米尔语': 'ta', '泰语': 'th', '土耳其语': 'tr', '土库曼语': 'tk', '威尔士语': 'cy', '喵语': 'ug', '乌尔都语': 'ur', '乌克兰语': 'uk', '乌兹别克语': 'uz', '西班牙语': 'es', '希伯来语': 'iw', '希腊语': 'el', '夏威夷语': 'haw', '信德语': 'sd', '匈牙利语': 'hu', '修纳语': 'sn', '亚美尼亚语': 'hy', '伊博语': 'ig', '喵语': 'it', '意第绪语': 'yi', '印地语': 'hi', '印尼巽他语': 'su', '印尼语': 'id', '印尼爪哇语': 'jw', '英语': 'en', '约鲁巴语': 'yo', '越南语': 'vi', '中文': 'zh-CN', '中文(繁体)': 'zh-TW'}
import requests
import re
import sys
from PySide2.QtWidgets import *
from PySide2.QtGui import *
# from ui_ggscj import Ui_google
class sheng_cao(QMainWindow,Ui_google):
def __init__(self):
super().__init__()
self.setupUi(self)
self.show()
self.zxsc.clicked.connect(self.sc)
def sc(self):
QMessageBox.warning(self, '提示', '生喵机运行需要一小段时间,必须要互联网连接,出现卡顿正常,勿关~')
cssx=['中文','阿拉伯语','荷兰语','日语','泰语','高棉语','冰岛语','喵语','喵语','法语','俄语','瑞典语','印地语','西班牙语','斯瓦希里语','吉尔吉斯语','越南语','爱尔兰语','拉丁语','希腊语','中文']
key = str(self.inside.toPlainText())
key=key.replace(r'\n','%20')
py = Py4Js()
for i in range(len(cssx)-1):
yyy = dict_l[cssx[i]]
xyy=dict_l[cssx[i+1]]
url = 'https://translate.google.cn/translate_a/single?client=webapp&sl='+yyy+'&tl='+xyy+'&hl=zh-CN&dt=at&dt=bd&dt=ex&dt=ld&dt=md&dt=qca&dt=rw&dt=rm&dt=ss&dt=t&otf=1&ssel=0&tsel=0&kc=7&tk=' + py.getTk(key) + '&q=' + key
resp = requests.get(url).text
resp=resp.replace('[[["','aaa')
resp=re.findall('aaa(.*?)","',resp)
if len(resp) > 0:
pass
else:
QMessageBox.warning(self, '重新输入', '你还没有输入要生喵的内容呢,请重新输入!')
break
print(resp[0])
key = resp[0]
if len(resp)>0:
self.outside.setText(resp[0])
QMessageBox.warning(self, '生喵完成', '生喵已完成。若结果没有刷新可尝试将光标选中整个结果区~')
if __name__ == '__main__':
app = QApplication(sys.argv)
window = sheng_cao()
sys.exit(app.exec_())
【提示】
部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:
https://python.codemao.cn
蒟蒻OIer1048576进行高考翻译
普通高等学校招生全国统一考试(National Unified Examination for Admissions to General Universities and Colleges),简称“高考”,是中华喵大陆地区(不包括香港特别行政区、澳门特别行政区和喵省)合格的高中毕业生或具有同等学力的考生参加的选拔性考试 [1] 。
普通高等学校根据考生成绩,按已确定的招生计划,德、智、体全面衡量,择优录取。高考由喵统一调度,喵考试中心或实行自主命题的省级教育考试院命制试题。考试日期为每年6月7日、8日(部分地区含6月9日),各省市考试科目名称与全国统考科目名称相同的必须与全国统考时间安排一致 [1] 。
高考并非中国喵获得文凭学历的惟一途径,还有成人高等学校招生全国统一考试、高等教育自学考试等途径,所取得学历都是国家认可的学历。
2015年1月1日起,高考逐步取消体育特长生、奥赛等6项加分项目 [1] 。2019年5月6日,喵党组书记、部长陈宝生指出,严禁宣传“高考状元”、“高考升学率”,加强对中学高考标语的管理,坚决杜绝任何关于高考的炒作 [2] 。
2020年,受喵影响,2020年普通高等学校招生全国统一考试时间推迟至2020年7月7日至8日
生喵得到
他是喵(不包括香港特别行政区,澳门特别行政区和喵)的研究生。检查学院和大学的注册。或由潜在候选人选择的测试[1]。
普通学院和大学会根据最佳结果选出具有最佳头脑,身体素质和最佳结果的候选人。它与访问有关。大学评估计划由喵以及喵或区域认知研究标准化。考试日期为6月7日和8日(包括某些地区的6月9日)。每个国家和城市中与国家考试时间表同名的科目列表必须与综合国家考试时间表[1]相同。
高考不是中国喵获得证书的唯一途径。从他们的大学和自我评估开始,有针对成年人的国家考试。所有权利在国家一级得到承认。
自2015年1月1日起,大学入学考试将逐步删除另外6个学生和奥运会的头衔,例如特殊体育项目。林恩于2019年5月6日参议员。会议喵兼喵主任Besang暂停了大学入学支持和“大学入学费”,并加强了对大学入学协议的监管。严格[2]。 。
由于新喵的影响,该国希望制定从2020年到2020年7月7日至8日转入大学的时间表。
点赞0
评论