AdvertCN - 广告中国

 找回密码
 立即注册

QQ登录

只需一步,快速开始

 谷歌+Bing+TT+MSN官方代理 
⚡️按条S5代理⚡️静态⚡️独享⚡️5G⚡️最干净<Wifi住宅+5G移动>IP代理泰国仓储,本土仓发货2-3元/单
指纹浏览器,就用AdsPower谷歌/FB/Bing/Yahoo代理商开户7200W全球动态不重复住宅IP代理全球优质流量,选TrafficStars
出售Facebook,友缘号,FB广告号,insFB/TT/KW 加白开户ADPLEXITY + ADVERTCN比Adplexity还好用的Spy工具
广
FB/Google/TK海外多媒体极速下户
BINOM TRACKER 60% OFF!MediaGo+Taboola+Ob开户百度国际MediaGo⚡️让产品狂奔全球百度国际,高点击转化,快速放量
百度国际MediaGo,独家原生流量虚拟信用卡+独立站收款行业首创新型指纹Cloak, 谷歌奇效!Kookeey⚡️100%独享⚡️原生住宅IP
⚡IPFoxy住宅代理全场88折⚡全球虚拟卡, 支持U充值免账户投放 FB 广告(送项目)2024做什么 - Media buy 项目库
免费黑五教程(持续更新、欢迎交流)Facebook 批量上广告Bridgeway - 联盟营销网络IPCola 全新住宅代理 ⚡️ 免费试用
各种主页、账单户、BM户(优势)⚡️个人户,bm户不限额,账单户Adsterra 的CPA/CPM/CPC 网站流量在线注册美国/英国/香港等海外公司
EU KETO/CBD - JumbleberryFB二三解1元/个9Proxy ⚡️ $0.04/IP, 无限带宽 cloak斗篷/ss/nutra/cpa/Dating
E.PN 虚拟卡Asocks代理服务器$3/GB高薪诚求实力FB投手(独立站)《全新虚拟卡+全球收付款》
广告位出租全球低价纯净住宅/移动IP-免费试用广告代投, 东南亚物流, 虚拟信用卡VMLogin指纹浏览器+多账号防关联
查看: 6076|回复: 7

大篇幅文章转语音

[复制链接]

6

主题

303

广告币

310

积分

初级会员

Rank: 2

积分
310
发表于 2018-8-28 13:42:09 | 显示全部楼层 |阅读模式
adsterra
本帖最后由 xiaoxue 于 2019-3-4 20:51 编辑 . U# v+ Q6 D4 \" F; R

  1. $ y7 ], C/ X4 \  s2 M  n" W
  2. # -*- coding: UTF-8 -*-
    8 U4 b  J$ b1 B0 n- g  P
  3. import requests
    ! X* }  F* @( l$ p  J$ g/ r0 Z
  4. import os( b3 g8 b7 y* l+ e1 n
  5. import subprocess
    - _% x1 k7 {7 h9 e+ z
  6. import sys4 d) S6 G# L7 W. Q- Z2 q
  7. from tqdm import tqdm7 V% a% s* `$ W+ V6 A5 S% {
  8. import time,random. H( ]# \+ o3 {
  9. from HTMLParser import HTMLParser
    ) `, J2 q; V9 t: S+ v1 X+ h
  10. import sys  . A8 t- ]) p: m( ^7 Y/ a+ D; J
  11. reload(sys)  
    . ~- O/ R7 E7 U0 i& Y6 B4 @
  12. sys.setdefaultencoding('utf8') 2 r/ Z, L3 m0 {9 Q+ B5 r

  13. ( P3 C( T; U; h5 C
  14. class WebRequest(object):) t2 t8 I) j0 N2 C, t! P# P
  15.     def __init__(self, *args, **kwargs):; V) D- k8 y+ o$ @, z6 G3 F$ |
  16.         pass; @. g8 ]3 \& r
  17. # O/ G# C2 J% X
  18.     @property  A) E: x& U# y- t2 N* K& `
  19.     def user_agent(self):8 B, z8 m8 E1 t2 [3 `5 G
  20.         """
    8 u5 s( L/ c! x! E
  21.         return an User-Agent at random
    ) }8 `; F) J+ E
  22.         :return:5 J7 r$ A5 E$ z8 M0 L
  23.         """& e, N! P- C. `4 M6 R5 |
  24.         ua_list = [
    7 ]2 E1 T4 p% j5 y
  25.             'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.101',
    8 e. f: |$ Q/ `# m7 M7 `, L2 m
  26.             'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.122'," D4 @0 w% Y9 D8 L* h
  27.             'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.71',
    0 \, j7 j: z4 C( O/ o
  28.             'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95',6 B  Y# V* X9 ~5 ?
  29.             'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.71',
    2 b& |! r( y0 `1 \- S
  30.             'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; QQDownload 732; .NET4.0C; .NET4.0E)',
    - p2 U0 r- Z# y. M/ P3 [* A# _
  31.             'Mozilla/5.0 (Windows NT 5.1; U; en; rv:1.8.1) Gecko/20061208 Firefox/2.0.0 Opera 9.50',+ h2 X6 z! }" g( J$ p
  32.             'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0',! ?, S, w% W+ g2 N
  33.             ]/ Q; v" A" y- ^8 k6 D; ^6 F
  34.         return random.choice(ua_list)
    ) J6 G' S3 n5 }5 Y. j
  35. . J0 u# X5 P3 R! m' F
  36.     @property
    8 ]: N3 q6 ^7 c8 w6 D2 ], u2 z4 O
  37.     def header(self):5 A$ z- e" [2 I7 o! Y2 M$ _
  38.         """: f3 b6 l* q- J: l' h
  39.         basic header5 K! N9 r# N7 S7 ?8 o
  40.         :return:
    ( ~' N# y. v% X
  41.         """* W$ z4 r; a9 o; T+ m4 h* [
  42.         return {'User-Agent': self.user_agent,. c6 l/ s: n4 C7 v  _
  43.                 'Accept': '*/*',( Q( b# a" b  U9 w5 Y6 U: P5 u9 _8 O
  44.                 'Connection': 'keep-alive',
    ! d1 k' c6 `# b$ N8 O" y' D
  45.                 'Accept-Language': 'zh-CN,zh;q=0.8'}
    6 k" ]5 H; {4 c  e- ^5 j1 k4 N
  46. 2 `2 @1 A1 B  N9 q
  47.     def get(self, url, header=None, retry_time=5, timeout=30,
    1 E7 l7 t2 k6 `" }7 U
  48.             retry_flag=list(), retry_interval=5, *args, **kwargs):3 Q6 N& r$ L3 X. n) b7 m' F
  49.         """
    0 d* w0 d: {  R# H/ ]
  50.         get method
    ; }+ a# L7 f0 Y1 K8 L
  51.         :param url: target url
    & y  e# ]: R0 h+ A5 _/ A9 C) e- f
  52.         :param header: headers/ Y- b0 G6 p( p
  53.         :param retry_time: retry time when network error2 C4 A! y+ K7 ]3 p  n
  54.         :param timeout: network timeout1 i9 t: B$ Q. B& f
  55.         :param retry_flag: if retry_flag in content. do retry
    / b; P+ F8 Y2 r$ s
  56.         :param retry_interval: retry interval(second)5 T. J# M( q* m' z: s3 |
  57.         :param args:# H# P+ g' W! M1 Y1 G
  58.         :param kwargs:( v( C8 m5 W9 \7 |2 v
  59.         :return:
    ; @% a# i2 H% v/ x- u+ y
  60.         """6 ^# A7 Q/ H  V; R) l8 W7 C7 L
  61.         headers = self.header
    6 [9 s- c# ~+ O* n/ b
  62.         if header and isinstance(header, dict):
    % V8 E! H* O; ~3 U2 j
  63.             headers.update(header)
    * E8 @2 C' x) H0 |/ R9 |
  64.         while True:
    * d5 u& W+ [( m, R9 W" V5 _
  65.             try:
    * @/ Y5 P4 b2 G: W, r& N
  66.                 html = requests.get(url, headers=headers, timeout=timeout, stream=True)( M! |: d/ R: M: V* q, g
  67.                 print 'content size: %d' % len(html.content)- a0 e0 d- A! n* a# |" r
  68.                 if any(f in html.content for f in retry_flag):5 T! }. p+ {; e
  69.                     raise Exception7 n6 w1 a+ f8 H$ X( C+ B2 o' a  ]
  70.                 if not html.content:% ^) I4 t5 V* N; E" ?, R# ?
  71.                     print 'content is Null,retry...~' + url
    3 D0 U! Q: c2 N% }: ]& X2 B
  72.                     raise Exception2 o" _" W0 V  `" P# Y6 B% U$ h, g
  73.                 return html7 Q# N& w6 p" l) x  x0 R' Y/ |
  74.             except Exception as e:
    ; `' H* C4 R) }4 J: c& l4 ~% O
  75.                 print(e)& R# M; Y$ g6 C0 `

  76. 3 U; N: t/ o5 D1 O. a" U- q% Z) x

  77. : x7 {2 e4 S) ]4 @2 F! f2 t, @
  78. def DownloadAudio(url, path, refer=None):, ]8 r6 T3 b8 {8 w/ O, H) t. R
  79.         with open(path, 'wb') as handle:
    5 R1 w6 K* l) j/ p. l2 f! n; _$ Y
  80.                 if refer:* i0 Z) `% ]  h( u$ n3 r0 _
  81.                                 hdr = {
    7 G/ |7 s4 [) @# k5 K
  82.                                    'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11',7 e4 @' C  H( b9 S9 @8 U5 {7 }
  83.                                    'Referer': refer}( G2 p9 Y% V9 p
  84.                 else:% g5 o% m7 l! c/ F. _' A$ P6 r
  85.                                 hdr = {7 n) M6 Z$ d8 v0 g
  86.                                    'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11',' O6 m% _1 q' Y9 ^+ }; W8 X
  87.                                    'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',! i' o" ~) k1 @+ ]
  88.                                    'Accept-Charset': 'ISO-8859-1,utf-8;q=0.7,*;q=0.3',
    " y: S. s0 G' f9 V
  89.                                    'Accept-Encoding': 'none',1 ^+ D: i* b& g7 f( J5 |6 g4 t
  90.                                    'Accept-Language': 'en-US,en;q=0.8',
    & C* C( k( Z- E) k9 a
  91.                                    'Connection': 'keep-alive'}
    3 D; z$ {1 m1 W; c2 X  s3 v
  92.                 wr = WebRequest()! L% o' U% L* q4 e# S5 U* p
  93.                 #print hdr
    + X+ n* d8 Y7 O/ }! \( ?. Q+ D
  94.                 response = wr.get(url,header=hdr)8 V, n$ @* q# Y. e- r, [
  95.                 #html = requests.get('https://www.example.com', proxies={"http": "http://{}".format(proxy)})
    " X8 s0 w$ N  |% b( c" r0 z
  96.                 #response = requests.get(url, stream=True, headers={'User-agent': 'Mozilla/5.0'})
    % J; {* \' G. o3 Y
  97.                 #print url4 I" q5 x$ Q6 ^7 g( F
  98.                 for block in tqdm(response.iter_content(),ascii=True, desc='ImageDownload'):
    " O" @3 o+ H( _. e, j6 ^
  99.                         if not block:
    $ p. s) r: m* i$ o, A2 g0 R
  100.                                 break
    " o7 G' h' v4 U: u2 j4 l
  101.                         handle.write(block)
    / Q  f. n3 l! T0 @. O1 _

  102. $ k+ G6 E1 Z" n0 C( z! \7 [
  103. def translate(to_translate, to_langage="auto", langage="auto"):) Q/ {" {/ O% {1 Z9 K' z% N6 }. e
  104. '''Return the translation using google translate
    - g+ |4 b: _# N" Z+ A* `
  105. you must shortcut the langage you define (French = fr, English = en, Spanish = es, etc...)9 d, R) r+ l9 \1 }. O* g
  106. if you don't define anything it will detect it or use english by default2 Z& O& D: @& l$ c9 w
  107. Example:/ I# [) R% }3 M
  108. print(translate("salut tu vas bien?", "en"))" U* B5 L) S+ q. p
  109. hello you alright?'''
    * G" s& a  W9 X1 n+ A. E  {% j
  110. agents = {'User-Agent':"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30)"}) ?5 \6 z$ \) i- b$ p/ C. Q
  111. before_trans = 'class="t0">'+ \1 z. y# `  {/ Q* C8 Q/ m( [
  112. link = "http://translate.google.com/m?ie=UTF-8&hl=%s&sl=%s&q=%s" % (to_langage, langage, to_translate.replace(" ", "+"))
    5 N& x# c  V* k4 f6 ^( N# @
  113. request = requests.get(link, headers=agents)
    9 v, h8 R( ]( x. `
  114. page = request.content- _2 W4 h' [6 |$ x
  115. #print page
    9 m; P1 |5 F) V1 J# W# f
  116. result = page[page.find(before_trans)+len(before_trans):]
    & _8 J+ |( G$ ]4 H, d0 m* h$ t
  117. result = result.split("<")[0]8 O/ ]. r, ^% F( P$ W5 u, d
  118. return result9 ?6 a/ k+ b2 ^5 e

  119. . c$ o( H/ x7 c* d$ [" A8 B
  120. tsxt_sen = []5 N- q$ O7 h/ F6 W" N1 U
  121. from nltk.tokenize import sent_tokenize7 n$ D/ c5 x; S9 T& @7 H/ }: a
  122. def sentence_split(sentence): # 编写分句函数
    ) `) u/ B, v/ I$ y
  123.     text_sen = []
    # ~+ N( u2 C# {" g
  124.     for s in sentence.split(','):! r( V: U/ w+ t' o+ G2 l
  125.        # if '?' in s:
    6 V) ~/ ^0 p' {* H0 k9 t" G/ {+ S1 A
  126.        #     tsxt_sen.extend(s.split('?'))8 u8 F& U& v/ H1 |+ i) o
  127.        # elif ',' in s:7 _( J% d6 X! A2 ]* r% e
  128.        #     tsxt_sen.extend(s.split(','))! \3 a1 D! k1 p' ]: k, e! Z
  129.        # else:& w9 E. W8 Z# v, B2 s/ }
  130.        text_sen.append(s)
    * K3 }9 s$ _& u  Z3 x9 e, J: k+ C
  131.     return tsxt_sen, N4 N) q2 |" K% D, n$ E( y0 L
  132. . X% H& n+ u7 C# _1 K( [

  133. 8 Y6 T# C( S; B8 {+ `" s- N! t
  134. str = '''
      N& Y8 Q$ ?) q; n* H
  135. It has not quite been greeted with the enthusiasm of the bottles of Scotch in the novel Whisky Galore, but the arrival of a cargo of pineapples on the shores of northern Scotland has sent scavengers rushing to the beach./ N* A( W9 y. K9 Q

  136. , v- O. o* x5 u) V% X
  137. The fruit, which has appeared on Shetland and on beaches across the Western Isles, is thought to have come from several containers lost overboard in the Atlantic last October by cargo ship MV Lombok Strait., T* g1 ~! K2 k9 ?$ p% c4 B+ u

  138. % I/ z" m9 b1 Z' q6 [& i
  139. Shetland islanders have now shared photos of their fruitful haul, in a story that echoes the plot of Whisky Galore, the 1947 novel by Sir Compton Mackenzie, later made and remade for the big screen.% g7 e5 u5 A3 \& s0 ^, p
  140. ( r5 N/ J+ z* ?$ H( a3 Z  f2 X
  141. The story tells of how the locals find their island awash with whisky after a ship loaded with liquor is wrecked off a fictional Scottish island. + }/ s0 ]6 F- Y5 l5 W3 Z
  142. # e% L) `2 X6 T9 H1 y% j6 L1 A
  143. The plot was based on the real-life salvage operations carried out by locals when the SS Politician, carrying 280,000 bottles of malt whisky, ran aground on Eriskay in 1943.( i. G( z: F" P( s
  144. ) f) W6 m$ C3 Z, b' ^" D4 z
  145. The arrival of the pineapples will be far less lucrative for beachcombers, and not as profitable, either, as the grounding of the cargo ship MSC Napoli off Branscombe beach in Devon in 2007.8 r* z' R* N* a- l8 X, O

  146. $ e% V$ X: K4 [: ~# b) t; W3 @
  147. Then scavengers ignored police advice and arrived in their droves to explore shipping containers, which contained motorbikes, pet food, wine barrels and anti-wrinkle cream.. @6 Q5 ]# n6 Q0 d* ]6 [) e: x" [
  148. '''0 o/ t' W& J2 V5 }- s' k7 C

  149. ! {' Q/ f" _( x6 r
  150. 7 L% }6 U0 G- y& w; A/ B
  151. text = ''.join(str).strip().lstrip().rstrip().replace('\n',' ')/ X: I% p. y8 h* h
  152. with open('~/text.txt', 'wb') as handle:) E9 n6 c- j. X$ n- L1 i
  153.     handle.write(text)
    ' I8 y9 d4 z3 N+ B9 [
  154. 2 I5 k# h% g  C7 @6 m* M: R( ?
  155. str = str.replace('”','"')1 i" }6 e# g- B8 }0 q$ r; E
  156. str = str.replace('“','"')* `' Q' ^& i# F- |4 `' W

  157. 5 S  P, J) k% K
  158. ! X# _, T6 y  l3 o
  159. def splitStr(str):9 x. z& p# C6 G1 d/ O- L! h1 S
  160.     arr = str.split(' ')* l! J" U6 @+ R/ ~5 [
  161.     sz = len(arr)
    # v# p% |$ v. ]/ T- S
  162.     return [' '.join(arr[0:sz/2]),' '.join(arr[(sz/2):])]
    1 ~$ N# H3 C' u' n! n: f' i8 v
  163.     ' _9 o% f3 A8 `/ j& I4 U* t9 g) l) s
  164. # x% T* F4 C# z0 [
  165. #print splitStr('with wording from North Korea about getting rid of its nuclear weapons and a guarantee from the United States that it would not interfere with the North’s regime or demand redress for human rights abuses.')" r0 j' P9 m- v9 G) Q
  166. * e! }- z; F8 t% f: i
  167. keyArr = []9 w* ~2 _; M, n2 S6 {+ q5 T; y! P$ X- h
  168. sent_tokenize_list = sent_tokenize(str)
    % I$ N) Y  N) Z7 X9 K
  169. for s in sent_tokenize_list:  |( N* Q) @, O% m
  170.     sz = len(' '.join(s.split()))& P3 G5 O5 _) T' c& _6 A
  171.     if sz <= 190:
    . s+ ?; Y$ k$ t9 o
  172.         keyArr.append(' '.join(s.split()))
    ' b7 H6 X; U  J; k" b' n8 i5 ~
  173.         #print '[ '+' '.join(s.split())+' ]'
    7 @$ S& L4 V' A. x+ m) U
  174.     else:' L, h: I7 X7 n! g) @2 O2 s
  175.         for ses in s.split(','):. a. V' C/ ]8 q* v
  176.             if len(ses) > 190:
    ! @* r( C0 q* Z6 ^3 @3 z6 [
  177.                 keyArr.extend(splitStr(ses))
    3 w4 Y! i* [6 @  j, u1 F/ M& x
  178.             else:0 B5 ?# @9 V& o4 j: B" R! k
  179.                 keyArr.append(' '.join(ses.split()))+ a# X& k0 y/ d" O. u; R( I; T- @

  180. 5 P8 v6 M/ W! u! V( ^
  181. & e; h! n) \, X9 {9 D) b( r+ j
  182. API_URL = "http://translate.google.com/translate_tts?ie=UTF-8&tl=en-us", m) x/ q8 q  G1 n, ?
  183. #key = HTMLParser.unescape.__func__(HTMLParser, translate(str,'en'))1 Z3 d" }9 {% r+ }8 ?
  184. #keyArr = sentence_split(str)( W8 e4 X% K8 l& f" Z
  185. 0 q: Q/ s; I8 s
  186. ) z3 m& s4 K" y4 M
  187. #print([text[i:i+n] for i in xrange(0, len(text), n)])/ A: [% z4 I. ?  G- |2 d1 l
  188. os.system('rm ~/tmp/audio/*.mp3')/ n7 @9 V; E6 n2 ^2 k0 A; g( z
  189. namei = 0
    7 o4 N7 z2 e! t
  190. for i in keyArr:
    2 d8 s! s, W. A8 J
  191.     juzi = ' '.join(i.split())
    4 v! o8 l0 x( o; [0 ^
  192.     sz = len(juzi)
    & c0 c$ J  t- _/ H
  193.     link = API_URL+"&q="+juzi+"&client=tw-ob"
    # q% ]3 d, y% Y+ T
  194.     print link
    $ p, y& s2 `6 j" K2 ?( u) v5 ^
  195.     path = "~/tmp/audio/%d.mp3" % namei
    1 f9 O7 A( x) p4 q1 S4 l
  196.         #print path% [$ o: \! K9 N3 B+ S$ V
  197.     DownloadAudio(link,path)- U% D: ]; ~9 p5 L, n% b
  198.     os.system('file '+path)' b, F0 f1 D" g' n- z6 \
  199.     time.sleep(1)) P# B: d0 e  @4 b5 g
  200.     namei = namei + 1
    # l* m5 J/ C5 s, E/ {( w" l
复制代码
/ k$ t+ j  e8 c: i3 `8 x
乱七八糟拼一拼 就是个小玩意~~~~~

评分

参与人数 1广告币 +8 收起 理由
小白龙 + 8 很给力!

查看全部评分

相关帖子
回复

使用道具 举报

6

主题

303

广告币

310

积分

初级会员

Rank: 2

积分
310
 楼主| 发表于 2018-8-28 21:03:48 | 显示全部楼层
maxwell723 发表于 2018-8-28 15:460 h: m. x4 y5 h5 }# W
好东西 不会用
6 d! q, p, v. [  }! |4 |/ [
整理下 分享个 youtube 全自动... 说白就是前几篇文章的合体。。。2 U3 b) G2 Q  [- O

点评

希望进口出炉 关注中  详情 回复 发表于 2018-8-29 07:01
回复 支持 反对

使用道具 举报

176

主题

976

广告币

4028

积分

超级版主

Rank: 8Rank: 8

积分
4028

社区QQ达人

发表于 2018-8-28 22:30:07 | 显示全部楼层
厉害啊,python高手啊!

点评

惶恐了,拼凑而已。。。  详情 回复 发表于 2018-8-30 14:54
缅怀骄阳
此ID(小白龙)仅限在论坛使用,其他平台发生的任何交易纠纷与本人无关,善用搜索远离骗子
回复 支持 反对

使用道具 举报

2

主题

25

广告币

80

积分

初级会员

Rank: 2

积分
80

社区QQ达人

发表于 2018-8-29 07:01:52 | 显示全部楼层
xiaoxue 发表于 2018-8-28 21:03
9 W/ l7 }4 d7 L整理下 分享个 youtube 全自动... 说白就是前几篇文章的合体。。。
) H) L1 W' Y7 w. i+ ^* R3 R' x% R* o
希望进口出炉  关注中
回复 支持 反对

使用道具 举报

2

主题

169

广告币

424

积分

中级会员

Rank: 3Rank: 3

积分
424
发表于 2018-8-29 21:31:47 | 显示全部楼层
google 的api要钱的吧,我在用自动采集翻译,百度语音api好像现在是免费的

点评

没用api 用的 移动端的。。没有限制... 就是字数限制 切分就好了  详情 回复 发表于 2018-8-30 14:55
回复 支持 反对

使用道具 举报

6

主题

303

广告币

310

积分

初级会员

Rank: 2

积分
310
 楼主| 发表于 2018-8-30 14:54:30 来自手机 | 显示全部楼层
小白龙 发表于 2018-8-28 22:307 @; G3 V5 \- h% K. y" N+ k! y
厉害啊,python高手啊!

, F$ h5 s! i  q$ ?3 n# L惶恐了,拼凑而已。。。
回复 支持 反对

使用道具 举报

6

主题

303

广告币

310

积分

初级会员

Rank: 2

积分
310
 楼主| 发表于 2018-8-30 14:55:42 来自手机 | 显示全部楼层
wjcj 发表于 2018-8-29 21:31: k/ ]) U& R: J. t* k- r
google 的api要钱的吧,我在用自动采集翻译,百度语音api好像现在是免费的 ...

  `/ O+ S% G. b, {! H没用api 用的 移动端的。。没有限制... 就是字数限制 切分就好了
回复 支持 反对

使用道具 举报

2

主题

166

广告币

246

积分

初级会员

Rank: 2

积分
246

社区QQ达人

发表于 2018-9-1 20:40:59 来自手机 | 显示全部楼层
怎么用的大佬
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关于我们|联系我们|DMCA|广告服务|小黑屋|手机版|Archiver|Github|网站地图|AdvertCN

GMT+8, 2024-4-27 02:58 , Processed in 0.058487 second(s), 13 queries , Gzip On, MemCache On.

Copyright © 2001-2023, AdvertCN

Proudly Operating in Hong Kong.

快速回复 返回顶部 返回列表