Aplicação do método post () em python na obtenção de resultados de tradução do site Bing

Obtenha os resultados da tradução do site do Bing. Observe que ambos os casos de tradução do chinês para o inglês e da tradução do inglês para o chinês precisam ser considerados.
URL: https://cn.bing.com/translator/
1. Analise a página da web.
Recomenda-se inserir uma frase diretamenteRecomenda-se abrir a página da web para verificar a rede quando estiver em branco e, em seguida, inserir uma frase diretamente, para que haja menos pacotes carregados no lado direito e seja fácil encontrar o URL de destino.
nãonão
Este é o parâmetro de solicitação original, portanto, o parâmetro de dados pode ser construído neste formato. data: {'fromLang': 'auto-detectar', 'texto': texto original, 'para': 'zh-Hans'}, provavelmente é isso. Não quero saber o significado específico de'fromLang ':' detectar automaticamente 'aqui. Pode indicar o significado de uma frase. Tentei traduzir do chinês para o inglês para o inglês.
'texto': Texto original, nem é preciso dizer, este é o parâmetro para salvar o texto original.
'to': 'zh-Hans' Isso significa o que a tradução é, zh-Hans significa chinês simplificado, en significa inglês, aqui é apenas a tradução chinês-inglês-inglês-chinês, na verdade, outras línguas têm outros parâmetros.
Outro ponto é este URL. Ele pode traduzir uma palavra por palavra ou pode traduzir uma frase diretamente. Estou aqui para traduzir uma frase diretamente. Vamos colocar desta forma, é melhor traduzir uma frase diretamente, porque a tradução Uma frase pode traduzir uma única palavra, e uma única palavra pode não necessariamente traduzir uma frase. No máximo, a primeira letra é maiúscula ao traduzir do chinês para o inglês. Outros problemas devem ser menores.
Como os parâmetros que controlam a tradução são diferentes ao traduzir entre chinês e inglês, é necessário determinar se a entrada é um caractere chinês ou uma palavra.
\u4e00 ~ \u9fff
Este é o intervalo de codificação dos caracteres chineses. Nada mais.
Dois, o código

import requests
def start_tran():
    content = input('需要翻译的内容呀:\n')
    from_data = {
    
    }
    for i in content:
        if '\u4e00'<= i <= '\u9fff':
            print('您输入的是中文!!!')
            from_data = {
    
    'fromLang':'auto-detect','text':content,'to':'en'}
            break
        else:
            print('您输入的是英文!!!')
            from_data = {
    
    'fromLang':'auto-detect','text': content, 'to': 'zh-Hans'}
            break
    return from_data
def translate(from_data):
    url = 'https://cn.bing.com/ttranslatev3?isVertical=1&&IG=FFEB3453664B412382446351E8F72096&IID=translator.5028.63'
    headers = {
    
    
        'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36'}
    r = requests.post(url,data = from_data ,headers=headers)
    r.raise_for_status()
    #print(r.status_code)
    r.encoding = r.apparent_encoding
    data = r.json()  # 取出翻译结果
    detectedLanguage = data[0]
    translations = detectedLanguage['translations']
    result = translations[0]['text']
    print(result)
translate(start_tran())

O bloco de código JAVA é fácil de usar (whisper bb)
resultado de execução de código

需要翻译的内容呀:
我能送你回家吗,外面可能要下雨啦。
您输入的是中文!!!
Can I take you home? It may rain outside.

A tradução inglês-chinês funciona igualmente bem.

Acho que você gosta

Origin blog.csdn.net/qq_46295527/article/details/104830280
Recomendado
Clasificación