python机器学习-乳腺癌细胞挖掘(博主亲自录制视频)https://study.163.com/course/introduction.htm?courseId=1005269003&utm_campaign=commission&utm_source=cp-400000000398149&utm_medium=share

第一步:excel自带有道自动翻译

第二步:有道API

有时候Json返回字典中,translation翻译为英文

替补就要从basic--explain  或web---value选择

第三步:百度翻译

最后不行还可以从百度翻译--百度百科获取中文解释(部分药品)

# -*- coding: utf-8 -*-
"""
原创作者Toby,QQ:231469242
Created on Wed Apr 20 08:58:05 2016
很多药品有道不能翻译出来,这需要二次翻译:百度或Google 的API可以找到
有时候Json返回字典中,translation翻译为英文 替补就要从basic--explain 或web---value选择 最后不行还可以从百度翻译--百度百科获取中文解释(部分药品) excel列英译中批量处理
csv对行的读取处理很快,对列的读取不方便
openpyxl行列均可读写
xlrd最方便
@author: Administrator
"""
import xlrd,json,requests,re,csv
key="232627369"
keyFrom="daxiongshuju" excelFilename="test.xlsx"
sheetName="Sheet1"
#打开excel数据
excelFile=xlrd.open_workbook(excelFilename) sheet=excelFile.sheet_by_name(sheetName)
#翻译后放入的列表
translation_list=[]
number_rows=sheet.nrows
number_columns=sheet.ncols #获取第一列的值
column1_values=sheet.col_values(0) #判断单个字符是否是汉字
# [^\x00-\xff]表示一个汉字
#[^\x00-\xff]+表示多个汉字
#中国机械工业联合会
#cnis 中国标准化研究院
def If_str_Chinese(variable):
#排除字符串类型
if type(variable)==str: re1=re.compile(r"[^\x00-\xff]")
mo1=re1.search(variable)
if mo1!=None and mo1.group()==variable:
return True
else:
return False #单词去除空格,名词符号,等等
def word_format(word):
word1=word.strip()
word2=word1.replace("\t","")
return word2 #单词去除空格,名词符号,等等
def wordList_format(wordList):
word=";".join(wordList)
word1=word.strip()
#去掉空格
word2=word1.replace('\n','')
word3=word2.replace('n.','')
word4=word3.replace(" ",'')
return word4 def Get_simple_translation(word):
url="http://fanyi.youdao.com/openapi.do?keyfrom=daxiongshuju&key=232627369&type=data&doctype=json&version=1.1&q=%s"%(word)
response=requests.get(url)
json_return=json.loads(response.text)
translation=json_return['translation']
translation1=wordList_format(translation)
wordTranslation_list=translation1.split(";")
#索取第一个翻译意思
translation2=wordTranslation_list[0]
#如果translation2 不是汉字,则舍去.这里需要深度修改,如果是中译英情况要变
for i in translation2:
#如果返回英文,且返回Json有basic内容
if If_str_Chinese(i)!=True and "basic" in json_return:
translation3=json_return['basic']["explains"]
translation3=wordList_format(translation3)
wordTranslation_list=translation3.split(";")
#索取第一个翻译意思
translation3=wordTranslation_list[0]
return translation3
else:
if "web" in json_return:
#返回网络解释
return json_return["web"][0]['value'][0]
#最终如果翻译结果为汉语,则翻译为空
for i in translation2:
if If_str_Chinese(i)!=True:
translation2="" return translation2 '''
len(translation)
Out[3]: 5 for i in translation:
print(i) errorCode
translation
query
basic
web
''' #批量翻译所有单词精简版本
def Get_all_simple_translation(words_list):
for word in words_list:
try:
translation=Get_simple_translation(word)
translation_list.append(translation)
except:
print("exception:",word)
continue
print("congradulation!")
return translation_list #遍历每个单词,逐行翻译
def Translate_column():
sheet_rows=[]
for row in range(number_rows):
word=sheet.cell(row,0).value
translation_position=sheet.cell(row,1).value #如果翻译的单元格为空,说明需要翻译
if translation_position=="":
try:
translation=Get_simple_translation(word)
sheet.put_cell(row,1,1,translation,0)
except:
print("exception:",word)
continue
else:
translation=translation_position row=[word,translation]
sheet_rows.append(row)
return sheet_rows #列表解析,获取新的列表没有"\t"符号
column1_values1=[word_format(i) for i in column1_values]
#翻译后放入的列表
#translation_list=Get_all_simple_translation(column1_values1) sheet_rows=Translate_column() #翻译内容写入到csv文件中
csvFilename="test.csv"
csvFile=open(csvFilename,'w',newline='') #newline=''新行为空
csvWriter=csv.writer(csvFile)
csvWriter.writerows(sheet_rows)
csvFile.close() '''
#判断单词是否是英语
def If_word_English(variable):
#排除字符串类型
if type(variable)==str: re1=re.compile(r"\w+")
mo1=re1.search(variable)
if mo1!=None and mo1.group()==variable:
return True
else:
return False If_word_English("love")
Out[45]: True #判断单词是否是汉语
def If_word_Chinese(variable):
pass '''

  

 https://study.163.com/provider/400000000398149/index.htm?share=2&shareId=400000000398149( 欢迎关注博主主页,学习python视频资源,还有大量免费python经典文章)

python脚本实现药品名自动翻译2的更多相关文章

  1. python脚本后台运行

    问题描述: 环境: CentOS6.4 一个用python写的监控脚本test1.py,用while True方式一直运行,在ssh远程(使用putty终端)时通过以下命令启动脚本: python t ...

  2. bing搜索引擎子域名收集(Python脚本)

    利用bing搜索引擎进行子域名收集,编写了一个简单的Python脚本,分享一下. #! /usr/bin/env python # _*_ coding:utf-8 _*_ import reques ...

  3. python脚本工具-2 去除扩展名后提取目录下所有文件名并保存

    文件夹里有多个RM格式的视频文件,现需要把它们的文件名都提取出来,并去掉文件的扩展名,以便放到需要的网页里. 源代码: # --- picknames.py --- import os filenam ...

  4. 某互联网后台自动化组合测试框架RF+Sikuli+Python脚本

    某互联网后台自动化组合测试框架RF+Sikuli+Python脚本 http://www.jianshu.com/p/b3e204c8651a 字数949 阅读323 评论1 喜欢0 一.**Robo ...

  5. 使用NuGet打包并发布至ProGet过程 (步骤详细,附python脚本)【上篇】

    一.基本知识 (1)NuGet : NuGet是一个为大家所熟知的Visual Studio扩展,通过这个扩展,开发人员可以非常方便地在Visual Studio中安装或更新项目中所需要的第三方组件, ...

  6. 将Python脚本封装成exe可执行文件 转

    将Python脚本封装成exe可执行文件 http://www.cnblogs.com/renzo/archive/2012/01/01/2309260.html  cx_freeze是用来将 Pyt ...

  7. PHP 调用Python脚本

    上次做用户反馈自动翻译,写了个python脚本,将日文的用户反馈翻译成中文,效果虽然可以,但其它不懂python的童鞋就没法使用了,所以搭了个web服务,让其他人可以通过网页访问查询.使用的是apac ...

  8. C++中调用Python脚本

    C++中调用Python脚本的意义就不讲了,至少你可以把它当成文本形式的动态链接库, 需要的时候还可以改一改,只要不改变接口, C++的程序一旦编译好了,再改就没那么方便了 先看Python的代码 代 ...

  9. cocos2d-x使用python脚本创建项目的简单方法

    本文有CC原创,转载请注明地址:http://blog.csdn.net/oktears/article/details/13297003 在cocos2d-x2.1.4以上的版本中,取消了使用vs模 ...

随机推荐

  1. 搭建一个jumpserver跳板机

    1,部署jumpserver 建立阿里云公网源yum仓库 清除缓存重新建立缓存 ip后面直接回车,下面输入y 地址端口账户密码直接回车 ,询问跳过输入y,是否继续输入y 用户名回车,输入自己要设置的密 ...

  2. Maven打包Web项目成war包——4

    1. 需要安装maven 的war插件支持 在pom.xml里面配置war插件       2. 运行命令: mvn clean package      3.部署到Tomcat下面发布,并访问!

  3. C++ 输出PPM格式图片文件

    PPM简介 学习图形学时为了直观地观察结果,需要输出图片,而PPM是一种最简单的图片格式,非常适合新手使用. PPM文件的内容大概是这样的: 第一行固定为P3,代表写入的是PPM格式的RGB图像,除此 ...

  4. Paper Reading:DetNet

    论文:DetNet: A Backbone network for Object Detection 发表时间:2018 发表作者:(Face++)Chao Peng, Gang Yu (Tsingh ...

  5. Http协议与TCP协议

    背景 在日常工作中,经常会遇到某某框架是基于Http协议或者TCP协议,今天,就针对于该协议,整理下 从本质上来说,Http协议与TCP协议是应用在不同网络层,Http协议处于应用层,TCP处于传输层 ...

  6. Linux下恢复误删除的文件

    原文地址:http://www.libenfu.com/vim-分区下误删的文件,恢复文件全记录-转 当时我的工作目录是/source/needrecovered. $ pwd /source/nee ...

  7. Python+request 获取响应(elapsed)和响应时间(timeout)《七》

    requests发请求时,接口的响应时间,也是我们需要关注的一个点,如果响应时间太长,也是不合理的.如果服务端没及时响应,也不能一直等着,可以设置一个timeout超时的时间 具体的实现如下: 超时( ...

  8. hbase实践之flush and compaction

    本文主要涉及flush流程,探讨flush流程过程中引入的问题并阐述2种解决策略,最后简要说明Flush执行策略. 对于Compaction,本文主要探讨Compaction要解决的本质问题以及由Co ...

  9. re模块中的非贪婪匹配

    python的re模块中有贪婪匹配和非贪婪匹配之分,当使用*时会匹配零个或多个,使用+时会匹配一个或多个.当使用?在前边特殊符号前时会进行非贪婪匹配,匹配零个或者一个,今天主要讨论非贪婪匹配中存在的坑 ...

  10. Tensorflow2.0学习(一)

    站长资讯平台:今天学习一下Tensorflow2.0 的基础 核心库,@tf.function ,可以方便的将动态图的语言,变成静态图,在某种程度上进行计算加速 TensorFlow Lite Ten ...