c++调用python接口_Python调用有道智云文本翻译API接口实现“智能”伪原创
隨著人工智能的火熱,互聯網熱門韭菜行業SEO也貌似進入了AI的快車道,尤其以智能偽原創超級熱門,你會發現幾乎是個seo工具網站都掛著智能偽原創的“狗頭”招牌,抱著人無我有,人有我優的seo優化心態,都吹噓自己的偽原創最最最有效。
? ? ? ? ? ? ?
本質上智能偽原創都是翻譯來翻譯去而形成的內容,高級智能偽原創不妨試試各種小語種的翻譯,估計會有奇效,所謂大力出奇效,當然還有這個撈偏門的奇效方法。
市面上絕大部分智能偽原創的原理:
第一,把文本翻譯成英文
第二,把英文重新翻譯成中文
當然初始的文本內容是如何操作,以及最終獲得的文本內容再如何操作,那就看你自己的操作了,還有各種變態,衍生版本,比如前面提到的小語種翻譯,不妨自行嘗試效果。
優化處理本身就是一個細活,越精致是越好的!
回歸正題,應用Python調用有道智云官方文本翻譯API接口來實現“智能”偽原創的功能,當然本渣渣是不會寫的,官方文檔已經給出了Python調用例子,可以直接使用,ctrl+c,ctrl+v大法好,必須得學廢使用啊!
有道智云注冊
第一步:注冊一個有道智云賬號,需手機號驗證,實名認證。
? ? ? ? ? ? ?
新賬戶直接贈送50元體驗金
? ? ? ? ? ? ?
第二步:注冊成功后,創建應用獲取賬號及秘鑰。
? ? ? ? ? ? ?
第三步:創建翻譯實例,綁定應用
? ? ? ? ? ? ?
附上后臺設置一覽,接入方式,選擇API
? ? ? ? ? ? ?
有道智云API文檔文本翻譯服務幫助文檔(關鍵部分)
https://ai.youdao.com/DOCSIRMA/html/%E8%87%AA%E7%84%B6%E8%AF%AD%E8%A8%80%E7%BF%BB%E8%AF%91/API%E6%96%87%E6%A1%A3/%E6%96%87%E6%9C%AC%E7%BF%BB%E8%AF%91%E6%9C%8D%E5%8A%A1/%E6%96%87%E6%9C%AC%E7%BF%BB%E8%AF%91%E6%9C%8D%E5%8A%A1-API%E6%96%87%E6%A1%A3.html
? ? ? ? ? ? ?
重點提一下其簽名方法
signType=v3;
sign=sha256(應用ID+input+salt+curtime+應用密鑰);
其中,input的計算方式為:input=q前10個字符 + q長度 + q后10個字符(當q長度大于20)或 input=q字符串(當q長度小于等于20);
可想而知,逆向的難度!
調用api是常規操作,其官方文檔,幫助中心一定要研究好,不然容易翻車!
同理,python及框架官方文檔也需要把握好!
Python調用API接口實現“智能”偽原創
Python3 示例(官方文檔)
# 有道智云 API文檔 文本翻譯服務 Python3 示例# -*- coding: utf-8 -*-import sysimport uuidimport requestsimport hashlibimport time#from imp import reload imp 已經棄用,替換為 importlibfrom importlib import reloadimport jsonreload(sys)YOUDAO_URL = 'https://openapi.youdao.com/api'# APP_KEY = '應用賬號'# APP_SECRET = '秘鑰'def encrypt(signStr): hash_algorithm = hashlib.sha256() hash_algorithm.update(signStr.encode('utf-8')) return hash_algorithm.hexdigest()def truncate(q): if q is None: return None size = len(q) return q if size <= 20 else q[0:10] + str(size) + q[size - 10:size]def do_request(data): headers = {'Content-Type': 'application/x-www-form-urlencoded'} return requests.post(YOUDAO_URL, data=data, headers=headers)def connect(q,APP_KEY,APP_SECRET): #q = "The Story of Love, part 1" data = {} data['from'] = 'en' data['to'] = 'zh-CHS' data['signType'] = 'v3' curtime = str(int(time.time())) data['curtime'] = curtime salt = str(uuid.uuid1()) signStr = APP_KEY + truncate(q) + salt + curtime + APP_SECRET sign = encrypt(signStr) data['appKey'] = APP_KEY data['q'] = q data['salt'] = salt data['sign'] = sign response = do_request(data) contentType = response.headers['Content-Type'] if contentType == "audio/mp3": millis = int(round(time.time() * 1000)) filePath = "合成的音頻存儲路徑" + str(millis) + ".mp3" fo = open(filePath, 'wb') fo.write(response.content) fo.close() else: #print(response.content) #print(response.content.decode('utf-8')) print(json.loads(response.content.decode('utf-8'))['translation'][0]) return json.loads(response.content.decode('utf-8'))['translation'][0]if __name__ == '__main__': connect()本渣渣改寫的版本,中翻英有效,英翻中,就失效了,百思不得騎姐啊!!
日常翻車,無不如此!!
# 有道智云 API文檔 文本翻譯服務#20200801 by 微信:huguo00289# -*- coding: utf-8 -*-import uuidimport requestsimport hashlibimport timeimport jsonfrom setting import APP_KEY,APP_SECRETfrom demo import connectdef encrypt(signStr): hash_algorithm = hashlib.sha256() hash_algorithm.update(signStr.encode('utf-8')) return hash_algorithm.hexdigest()def translate(APP_KEY,APP_SECRET,text): url='https://openapi.youdao.com/api' headers={'Content-Type': 'application/x-www-form-urlencoded'} #文本格式轉化 size=len(text) if size<=20: q=text else: #text = urllib.parse.quote(text) q=f'{text[0:10]}{str(size)}{text[size-10:size]}' print(q) curtime=str(int(time.time())) #當前UTC時間戳(秒) salt=str(uuid.uuid1()) #UUID #實現簽名 signStr = f'{APP_KEY}{q}{salt}{curtime}{APP_SECRET}' hash_algorithm = hashlib.sha256() hash_algorithm.update(signStr.encode('utf-8')) sign=hash_algorithm.hexdigest() data={ # 'from': 'en', # 'to':'zh-CHS', 'signType': 'v3', #簽名類型 'curtime':curtime, 'appKey': APP_KEY, 'q':q, 'salt':salt, 'sign':sign, } response=requests.post(url,data=data,headers=headers) #print(response.content) result_text=json.loads(response.content.decode('utf-8'))['translation'][0] print(result_text) return result_textdef main(text,APP_KEY,APP_SECRET): print(">>> 開始偽原創中..") en_text = translate(APP_KEY, APP_SECRET, text) result_text=connect(en_text,APP_KEY, APP_SECRET) print(">>> 偽原創完成!") return result_textif __name__=='__main__': text="愛的故事上集" main(text,APP_KEY,APP_SECRET)希望可以來個大佬哥,指點一下下,救救渣渣!
這里采取了折中的方法,為了裝逼,不要臉了!
中文翻譯用自己的改寫版本
翻譯成英文直接用官方給出的實例版本
官方版本為deom.py文件引入
from demo import connect使用
def main(text,APP_KEY,APP_SECRET): print(">>> 開始偽原創中..") en_text = translate(APP_KEY, APP_SECRET, text) result_text=connect(en_text,APP_KEY, APP_SECRET) print(">>> 偽原創完成!") return result_text考慮到賬號信息是敏感信息,做了一下脫敏處理,從另一個文檔調用賬號信息!
從setting.py調用賬號信息
from setting import APP_KEY,APP_SECRETsetting.py文檔內容
# 有道智云 API 賬號信息# -*- coding: utf-8 -*-APP_KEY = '賬號信息'APP_SECRET = '秘鑰'運行效果:
? ? ? ?? ? ? ?
怎么樣?你學廢了么?
? ? ? ? ? ? ?
微信公眾號:二爺記
不定時分享python源碼及工具
總結
以上是生活随笔為你收集整理的c++调用python接口_Python调用有道智云文本翻译API接口实现“智能”伪原创的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Redash 官方文档】查询-创建和编
- 下一篇: 基于 Prometheus 和 Zabb