Получите перевод результатов с веб-страниц Google с помощью Python или других языков программирования - PullRequest
0 голосов
/ 21 сентября 2018

Как разработать небольшое программное обеспечение, если указан указанный URL (например, www.foxnews.com) и целевой язык (например, китайский), тогда программное обеспечение автоматически вызовет результаты перевода Google.

url: www.foxnews.com

Reulst:

<html>
Translated web content
</html>

API перевода веб-страницы Google: https://translate.google.com/translate?sl=en&tl=zh-CN&js=y&prev=_t&hl=en&ie=UTF-8&u=www.foxnews.com&edit-text=&act=url Язык разработки программ не ограничен, python, php, c #, java и т. д.

Я написал небольшой программный тест на Python, но он не очень хорошо работает!

reuslt:

other code...
<iframe sandbox="allow-same-origin allow-forms allow-scripts allow-popups" src="https://translate.googleusercontent.com/translate_p?hl=en&rurl=translate.google.com&sl=auto&sp=nmt4&tl=zh-CN&u=http://www.foxnews.com/&depth=4&xid=25657,15700021,15700124,15700149,15700186,15700191,15700201,15700214&usg=ALkJrhgAAAAAW6Tq8NE5bkJZI9Rp_GhWRVSdEja6ZjXB" name=c frameborder="0" style="height:100%;width:100%;position:absolute;top:0px;bottom:0px;"></iframe>
other code...

В переведенном результате содержится iframe, но я хочурезультат перевода в iframe.

#coding:utf-8
import os
import codecs       
import requests

  def write_file(filename, content, encoding='gbk', mode='a+'):
  dir_name = os.path.dirname(filename).strip()
  if os.path.exists(dir_name) is False:
    os.makedirs(dir_name)
    with codecs.open(filename=filename, mode=mode, encoding=encoding) as f:
    return f.write(content + '\r\n')

  if __name__ == "__main__":
    url = 'https://translate.googleusercontent.com/translate_p?hl=en&rurl=translate.google.com&sl=auto&sp=nmt4&tl=zh-CN&u=http://www.foxnews.com/&depth=3xid=25657,15700021,15700124,15700149,15700186,15700191,15700201,15700214&usg=ALkJrhgAAAAAW6SrzEpQsnIHKUKB7HmJz2Hr1IlZZbNC'
    r = requests.get(url=url)
    html = r.text
    write_file(filename='./a.html', content=html, mode='w', encoding='utf-8')

1 Ответ

0 голосов
/ 21 сентября 2018

вам нужно использовать Google Cloud для этого. Облачный перевод

изменить: после создания облачной учетной записи Google используйте этот API для перевода

POST https://translation.googleapis.com/language/translate/v2

документация

...