python 读取数据调翻译更新表字段
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 读取数据调翻译更新表字段的更多相关文章
- 其它课程中的python---6、python读取数据
其它课程中的python---6.python读取数据 一.总结 一句话总结: 记常用和特例:慢慢慢慢的就熟了,不用太着急,慢慢来 库的使用都很简单:就是库的常用函数就这几个,后面用的时候学都来得及. ...
- sql server 跨IP库更新表字段(OPENDATASOURCE 、update)
--跨ip库更新表字段 update uat set goodsType=dev.goodsType from OPENDATASOURCE('SQLOLEDB','Data Source=127.0 ...
- oracle 批量更新表字段
(一) 将数字替换成汉字 第一步,去重查询 使用distinct关键字先对该字段值进行去重查询,看共有几种情况 --查询指定区间内表停诊字段的值 SELECT DISTINCT T.CLOSE_T ...
- python读取数据写入excel的四种操作
Python对Excel的读写主要有:xlrd.xlwt.xlutils.openpyxl.xlsxwriter几种 xlutils结合xlrd: 操作的是以xls后缀的excel,读取文件保留原格式 ...
- Python 读取数据
将一个文件夹下面的图像和对应的pts读进来,然后把pts文件里面的数据读入一个数组,然后画到图像上: # -*- coding:utf- -*- """ 测试数据样例 & ...
- python读取数据文件:pandas包详解
本文转载自https://blog.csdn.net/brucewong0516/article/details/79092579 pandas包是一个高效的文件读取工具,适用于txt,excel,等 ...
- SQL 从一个表读取数据存到另一个表
原来没有的创建的表select * into 表A form 表B where条件 原来存在的表insert into 表A select * from 表B where 条件 INSERT INTO ...
- python读取数据
#读取一行数据,去掉头尾空格 line = sys.stdin.readline().strip() #line类型为字符串 #字符串变成列表 line = sys.stdin.readline(). ...
- python读取数据写入excel
'''写入excel文件''' import xlsxwriter # todo 创建excel文件 xl = xlsxwriter.Workbook(r'D:\testfile\test.xlsx' ...
- mysql timestamp为0值时,python读取后的对象为None
MySQL数据表中,如果timestamp类型的字段,值为0, python从数据库读取数据后,得到对象是什么类型,是否为None呢? 下面来测试下. 创建数据表 首先创建数据表,其中字段pr_rul ...
随机推荐
- Python 利用pandas和matplotlib绘制堆叠柱状图
在数据可视化中,堆叠柱状图是一种常用的图表类型,它能够清晰地展示多个类别的数据,并突出显示每个类别中各部分的总量和组成比例.本文将演示如何使用 Python 的 pandas 和 matplotlib ...
- 题解 CF690C2
题目大意: 给你一棵树,求一下直径 题目分析: emm,怎么说吧,就是树的直径的裸板子. 可能有人不大理解,明明是图,你为什么要说是给定一棵树. 大家可以自行验证一下,满足如下两个性质的是否是一棵树: ...
- CSP-S 考前备战——常考知识点串烧
1.树形结构 与 树形dp PS :在CSP-S 2019,CSP-J 2020,CSP-S 2020,CSP-S 2021 均有考查 此类问题的做题方法就是将问题转化成树上的问题,然后进行深度优先遍 ...
- .NET周刊【11月第4期 2023-11-26】
国内文章 万字长文:从 C# 入门学会 RabbitMQ 消息队列编程 https://www.cnblogs.com/whuanle/p/17837034.html 如题,详细的介绍RabbitMQ ...
- [ICPC2015WF] Tours
题目描述 The Arca Carania Mountain national park is opening up for tourist traffic. The national park ha ...
- 基于.NET Core + Quartz.NET+ Vue + IView开箱即用的定时任务UI
前言 定时任务调度应该是平时业务开发中比较常见的需求,比如说微信文章定时发布.定时更新某一个业务状态.定时删除一些冗余数据等等.今天给大家推荐一个基于.NET Core + Quartz.NET + ...
- 用C#也能做机器学习?
前言 说到机器学习,大家可能都不陌生,但是用C#来做机器学习,可能很多人还第一次听说.其实在C#中基于ML.NET也是可以做机器学习的,这种方式比较适合.NET程序员在项目中集成机器学习模型,不太适合 ...
- 华企盾DSC造成扫描仪无法扫描成pdf文件
解决方法:去掉缩略图策略,重启电脑
- NLP复习之朴素贝叶斯
朴素贝叶斯分类器和加一平滑计算每个单词的似然值 贝叶斯规则:c表示类别,d表示数据 \[P(c|d) = \frac{P(d|c)P(c)}{P(d)} \] 例题1 假设句子"I alwa ...
- shell的变量
变量含义 学生时代所学的数学方程式,如x=1,y=2,那会称之为x,y是未知数 对于计算机角度,x=1,y=2等于定义了两个变量,名字分别是x,y,且赋值了1和2 变量是暂时存储数据的地方,变量临时存 ...