如何在谷歌制作BOT

时间:2017-12-21 14:02:17

标签: vb.net bots google-search plagiarism-detection

我正在创建一个使用VB.NET检测抄袭文章的程序。在我创建的程序中,我使用谷歌作为检测它的工具。示例中有一篇文章如下:

计算机是当今非常流行的技术之一

所以我使用的算法是,我使用前两个引号和句子结尾将句子输入谷歌搜索。所以我会用谷歌搜索这样的关键词。 “计算机是当今非常受欢迎的技术之一” 如果搜索谷歌,发现有一个网站使用该句子,可以确定该文章是抄袭。

但是,我的程序必须检查数百篇文章。因此它会自动打开谷歌并在短时间内搜索许多关键字。我创建的程序,使用webbrowser打开谷歌。

显然,因为程序我必须查看数百篇文章,然后webbrowser会逐渐引发这样的错误: enter image description here 因为我确实在谷歌搜索机器人。

那么,有什么建议可以克服/超越这个问题吗?

这是我的代码:(抱歉,对我的代码的评论是印度尼西亚语)

                Dim totallink As String = ""
                tempcek = tempstrline.Substring(start, selesai - start)

                'cek di google
                WebBrowser1.Navigate("https://www.google.co.id/search?q=%22" & tempcek & "%22")
                'proses menunggu webbrowser loading
                Dim sw As New Stopwatch
                sw.Start()
                Do Until sw.Elapsed.Seconds = 5
                    Application.DoEvents()
                Loop
                sw.Stop()
                sw.Reset()
                '------
                'cek pada source code browser 
                'pattern : </a></h3><div class="s">
                'pattern2 : href="
                Dim pattern As String = "</a></h3><div class=" & Chr(34) & "s" & Chr(34) & ">"
                Dim pattern2 As String = "href=" & Chr(34)
                If WebBrowser1.Document.Body.InnerHtml.Contains(pattern) And Not WebBrowser1.Document.Body.InnerHtml.ToLower.Contains("tidak ditemukan") Then

                    Dim tempsc As String = WebBrowser1.Document.Body.InnerHtml
                    'mendapatkan semua link yang ada di pencarian google
                    While tempsc.IndexOf(pattern) > -1
                        tempsc = tempsc.Substring(tempsc.IndexOf(pattern) - 300)
                        Dim templink As String = tempsc.Substring(tempsc.IndexOf(pattern2) + 6)
                        templink = templink.Substring(0, templink.IndexOf(Chr(34)))
                        tempsc = tempsc.Substring(350)
                       webbrowser.contains(pattern) diatas
                        totallink &= templink & "."
                        hasil(idxhasil) = totallink & ";" & i & "," & tempcek

                    End While

                Else
                    'cek selanjutnya dengan kondisi sudah mentok string yang plagiasi 
                    idxhasil += 1
                    start = tempstrline.IndexOf(" ", selesai) + 1
                    hitungspasike4(selesai, tempstrline)

                End If
                'cek selanjutnya dengan kondisi string masih bisa dikembangkan lagi untuk dicek plagiasinya
                selesai = tempstrline.IndexOf(" ", selesai + 1)

0 个答案:

没有答案