import time

import requests
import pymysql
import datetime
import random
from hashlib import md5
import json now_date = datetime.datetime.now().strftime("%Y-%m-%d") appid = 'xxxxxxx' 你的id
appkey = 'xxxx' 你的key def make_md5(s, encoding='utf-8'):
return md5(s.encode(encoding)).hexdigest() def mysqlclient():
db = pymysql.connect(
host='127.0.0.1',
port=3306,
user='root',
passwd='123456',
db='jiale',
charset='utf8'
)
curses = db.cursor()
sql='SELECT id,zh_cont FROM report_data WHERE tid=%s AND ctime= "%s" AND is_fanyi=0' % (1,now_date) try: curses.execute(sql) report_data = curses.fetchall() db.close() return report_data except:
print("Error:da s b") #连百度翻译数据
def to_baidu():
from_lang = 'zh'
to_lang = 'en'
endpoint = 'http://api.fanyi.baidu.com'
path = '/api/trans/vip/translate'
url = endpoint + path salt = random.randint(32768, 65536)
content_list = mysqlclient() data_list = [row for row in content_list] for (id,query) in enumerate(data_list): sign = make_md5(appid + str(query[1]) + str(salt) + appkey)
headers = {'Content-Type': 'application/x-www-form-urlencoded'}
payload = {'appid': appid, 'q': str(query[1]), 'from': from_lang, 'to': to_lang, 'salt': salt, 'sign': sign}
r = requests.post(url, params=payload, headers=headers)
time.sleep(1)
result = r.json() en_cont = result['trans_result'][0]['dst']
print('翻译:',en_cont)
id=query[0]
dd = en_cont to_insert(dd,id)
update_fanyi_status(id) def to_insert(en_cont, id):
try:
db = pymysql.connect(
host='127.0.0.1',
port=3306,
user='root',
passwd='123456',
db='jiale',
charset='utf8'
)
cursor = db.cursor()
sql = "UPDATE report_data SET en_cont = %s WHERE id = %s"
cursor.execute(sql, (en_cont, id))
print('塞进去一条id:',id)
db.commit()
except pymysql.MySQLError as e:
print("Error: report_data update error", e)
db.rollback()
return False
finally:
if cursor:
cursor.close()
if db:
db.close()
return True def update_fanyi_status(id):
try:
db = pymysql.connect(
host='127.0.0.1',
port=3306,
user='root',
passwd='123456',
db='jiale',
charset='utf8'
)
cursor = db.cursor()
sql = "UPDATE report_data SET is_fanyi = 1 WHERE id = %s"
cursor.execute(sql, (id))
print('更新了一条id:',id)
db.commit()
except pymysql.MySQLError as e:
print("Error: report_data update error", e)
db.rollback()
return False
finally:
if cursor:
cursor.close()
if db:
db.close()
return True if __name__ == '__main__': to_baidu()

python 读取数据调翻译更新表字段的更多相关文章

  1. 其它课程中的python---6、python读取数据

    其它课程中的python---6.python读取数据 一.总结 一句话总结: 记常用和特例:慢慢慢慢的就熟了,不用太着急,慢慢来 库的使用都很简单:就是库的常用函数就这几个,后面用的时候学都来得及. ...

  2. sql server 跨IP库更新表字段(OPENDATASOURCE 、update)

    --跨ip库更新表字段 update uat set goodsType=dev.goodsType from OPENDATASOURCE('SQLOLEDB','Data Source=127.0 ...

  3. oracle 批量更新表字段

      (一) 将数字替换成汉字 第一步,去重查询 使用distinct关键字先对该字段值进行去重查询,看共有几种情况 --查询指定区间内表停诊字段的值 SELECT DISTINCT T.CLOSE_T ...

  4. python读取数据写入excel的四种操作

    Python对Excel的读写主要有:xlrd.xlwt.xlutils.openpyxl.xlsxwriter几种 xlutils结合xlrd: 操作的是以xls后缀的excel,读取文件保留原格式 ...

  5. Python 读取数据

    将一个文件夹下面的图像和对应的pts读进来,然后把pts文件里面的数据读入一个数组,然后画到图像上: # -*- coding:utf- -*- """ 测试数据样例 & ...

  6. python读取数据文件:pandas包详解

    本文转载自https://blog.csdn.net/brucewong0516/article/details/79092579 pandas包是一个高效的文件读取工具,适用于txt,excel,等 ...

  7. SQL 从一个表读取数据存到另一个表

    原来没有的创建的表select * into 表A form 表B where条件 原来存在的表insert into 表A select * from 表B where 条件 INSERT INTO ...

  8. python读取数据

    #读取一行数据,去掉头尾空格 line = sys.stdin.readline().strip() #line类型为字符串 #字符串变成列表 line = sys.stdin.readline(). ...

  9. python读取数据写入excel

    '''写入excel文件''' import xlsxwriter # todo 创建excel文件 xl = xlsxwriter.Workbook(r'D:\testfile\test.xlsx' ...

  10. mysql timestamp为0值时,python读取后的对象为None

    MySQL数据表中,如果timestamp类型的字段,值为0, python从数据库读取数据后,得到对象是什么类型,是否为None呢? 下面来测试下. 创建数据表 首先创建数据表,其中字段pr_rul ...

随机推荐

  1. java: -source 1.5 中不支持 diamond 运算符 (请使用 -source 7 或更高版本以启用 diamond 运算符)

    报错信息:java: -source 1.5 中不支持 diamond 运算符 (请使用 -source 7 或更高版本以启用 diamond 运算符) 解决方案:如下 1.file --> p ...

  2. vue 中引入pingfang字体 或者其他字体 支持ttf otf格式

    新建一个font 文件 里面放字体文件 可以百度搜索你想要的字体下载下来 一般10m左右 新建一个font.css 里面配置字体 @font-face {     font-family: 'PF'; ...

  3. Android Gson 混淆问题

    开发过程中遇到一个奇怪的问题. 有一个接口,debug 版本接收到云侧下发的字符串后可以通过 gson 将其转换为相应 bean 类,而 release 版本拿到的 bean 总是缺少一个关键的字段, ...

  4. Prometheus+Grafana 监控平台实践-搭建&常用服务监控&告警

    前言 Prometheus 是一个开放性的监控解决方案,通过各种 Exporter 采集当前主机/服务的数据,和 Grafana 相结合可以实现强大的监控和可视化功能 本篇将分享使用 docker c ...

  5. python原生数据类型(上)

    # 查看数据 print('hello world') # 查看数据类型 type('hello world') hello world str 1 数据类型定义 1.1 不可变数据类型 # 数值 # ...

  6. 2023年奔走的总结---吉特日化MES 制药项目 篇二

    书接上文,反正今年也就折腾一下了,索性好好整理一下思绪写写文章,当做工作笔记.今年工作中遇到了各种各样的事情,可能是由于今年项目压力像无头苍蝇一样瞎撞,也打发一下按耐不住的心.本篇将记录一下<吉 ...

  7. Redis 学习笔记1:数据类型

    Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及 zset(sorted set:有序集合). 一.Redis 数据类型-STRING 1.常用 ...

  8. 简单几行实现sliver上线提醒

    准备魔改sliver去掉一些特征什么的,这里记录一下最简单实现上线消息通过企业微信机器人提醒的方式,这很简单也有很多不足还需要接着改的 protobuf中对消息Beacon和Session的定义如下, ...

  9. Windows Server 2019/2016 配置自动更新和更换大陆更新服务器

    文章原地址: 运行 > gpedit.msc -> 计算机配置 -> 管理模板 -> Windows 组件 -> Windows 更新 下面中右侧三个选项是本篇教程中会介 ...

  10. 6.elasticsearch中search template和alias

    什么是search template 顾名思义,查询模版,就是提前设定好查询的DSL,再次查询时,只需要指定对应的模版,然后传入相应的参数就好.一是可以每次不用构建复杂的DSL,二是可以供开发直接使用 ...