DOBON.NETプログラミング道掲示板

No34559 の記事


■34559 / )  Google翻訳の結果の取得
□投稿者/ わん 一般人(3回)-(2020/10/14(Wed) 11:23:16)
  • アイコン環境/言語:[VisualStudio2017 VB.net,C#] 
    分類:[.NET] 

    重ね重ねの質問、失礼します。
    
    Google翻訳を使って、英文の翻訳結果を取得したいと考えています。
    (FormにWebBrowserを張り付けて、IE11に切り替えた状態です。)
    
    まず、第一段階として、Google翻訳の原文入力部への書き込み方法が判りません。
    下記のコードを実行すると、<div class="text-dummy"></div>のに原文を書き込むことができますが、画面に反映されません。よって、翻訳が起動しない。
    二つ目に、翻訳が完了したことをどのように検出すればいいのか?判らない。
    (翻訳が完了すると、<div class="text-wrap tlid-copy-target">が表れるので、ループで監視する?位しか思いつきません)
    
    どのようにすれば、実現できるのか?詳しい方イラッシャイましたら、ご指南の程宜しくお願い致します。
    
    Public Class FormMain
        Const Google翻訳Uri As String = "https://translate.google.co.jp/?hl=ja&tab=TT"
        Const 原文Str As String = "Two important properties of the Chart class are the Series and ChartAreas properties, both of which are collection properties. The Series collection property stores Series objects, which are used to store data that is to be displayed, along with attributes of that data. The ChartAreas collection property stores ChartArea objects, which are primarily used to draw one or more charts using one set of axes."
        Const 原文入力用Tag_Str As String = "text-dummy"
        Const 訳文出力用Tag_Str As String = "text-wrap tlid-copy-target"
    
        Private Sub FormMain_Load(sender As Object, e As EventArgs) Handles Me.Load
            Me.WebBrowser1.Navigate(Google翻訳Uri)
        End Sub
        Private Sub WebBrowser1_DocumentCompleted(sender As Object, e As WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
            If e.Url.ToString = Google翻訳Uri Then
                Dim MyElements As HtmlElementCollection = WebBrowser1.Document.GetElementsByTagName("div")
                For Each LopElement As HtmlElement In MyElements
                    If LopElement.GetAttribute("className") = 原文入力用Tag_Str Then
                        LopElement.InnerText = 原文Str
                        MsgBox(LopElement.OuterHtml)
                    End If
                Next
            End If
        End Sub
    End Class
    

違反を報告
返信 削除キー/


Mode/  Pass/


- Child Tree -