我正在进入一个需要将不同语言的文本翻译成英语的项目。在一天之内,我将翻译近5000份文件。我写了一个小的硒代码,可以帮助我翻译这些文件。
现在我的问题是,如果我使用Selenium从谷歌翻译中翻译大量数据,我是否会被谷歌阻止。如果是,那么避免被Google翻译阻止的解决方案是什么?
我在下面发布了我的代码供参考:
public static WebDriver google_translate(WebDriver driver,String filename)
{
driver.manage().timeouts().implicitlyWait(5
, TimeUnit.SECONDS);
try{
driver.get("http://translate.google.com/#auto/en");
String text="";
text=read_contents.read_from_html(filename);
if(text.length()<5)
return driver ;
// Enter the query string "Cheese"
System.out.println("file read");
WebElement query = driver.findElement(By.id("source"));
query.sendKeys(text);
WebElement query1 = driver.findElement(By.id("gt-submit"));
query1.click();
System.out.println("text entered");
Date d=new Date();
long intial=d.getTime();
WebElement result;
do{
result = driver.findElement(By.id("result_box"));
d=new Date();
}while(result.getText().length()<20 && (d.getTime()-intial<15000) );
System.out.println("result fetched");
String output=Global.prop.get(1).toString()+"/"+new File(filename).getName()+".txt";
output_writer.txt_writer(result.getText(),output);
}
catch(UnhandledAlertException e)
{
e.printStackTrace();
}
catch(NoSuchElementException e)
{
e.printStackTrace();
}
catch(UnknownServerException e)
{
e.printStackTrace();
}
//System.out.println(result.getText());
return driver ;