Propósito
Quero realizar o login automático no Taobao através do código Java e preencher e enviar automaticamente as informações de login definidas pela obtenção das configurações. Atualmente, este código foi testado pelo editor e pode ser passado. Não sei se o Taobao terá uma estratégia de bloqueio correspondente no futuro.
Compartilhamento de código:
pacote util; importar org.openqa.selenium.by; importar org.openqa.selenium.webElement; importar org.openqa.selenium.firefox.firefoxdriver; importação.mport.openqa.selenium.firefox.firefoxoptions; import.openqaqaqa.selenium.firefox.firefoxOpions; java.io.file; importar java.util.random; public class Testcase2 {public static void main (string [] args) {System.setProperty ("webdriver.firefox.bin", "c: // arquivos de programa // mozilla firefox // firefox.exe"); System.setProperty ("webdriver.gecko.driver", "c: //users//18431//ideprojects//seleniumdemo//bin//geckodriver.exe"); Opções do FirefoxOptions = New FirefoxOptions (); FirefoxProfile Perfil = new FirefoxProfile (novo arquivo ("c: //users//18431//appdata//roaming//mozilla//firefox//profiles//efzu2oem.default"); options.setProfile (perfil); Driver de firefoxdriver = new Firefoxdriver (); driver.get ("https://login.m.taobao.com/login.htm"); // a seguir começa a simular totalmente as operações normais, para que você verá muitas operações de sono webElement userNameElement = driver.findElement (por.id ("nome de usuário")); // simular o usuário, clique na caixa de entrada de nome de usuário userNameElement.Click (); String userName = "18588260144"; // seu número de telefone celular String senha = "xxxxxxxxxxxx"; // sua senha aleatória rand = new aleatom (); tente {for (int i = 0; i <nome de usuário.length (); i ++) {thread.sleep (rand.nextInt (1000)); // sono aleatório 0-1 segundo // insira um único caractere userNameElement.sendKeys (""+nome de usuário (i)); } WebElement senhaElement = driver.findElement (por.id ("senha")); senha senha.Click (); // Depois de entrar no nome de usuário, durma aleatoriamente por 0-3 segundos thread.sleep (rand.nextint (3000)); for (int i = 0; i <senha.Length (); i ++) {thread.sleep (rand.nextint (1000)); PasswordElement.sendKeys (""+senha.charat (i)); } driver.findElement (por.id ("btn-submit")). click (); } catch (Exceção e) {e.printStackTrace (); } tente {thread.sleep (300000); } catch (interruptedException ie) {ie.printStackTrace (); } driver.quit (); }} Resumir
Pode-se observar que, por mais que seja a mudança, não importa o quão difícil seja simular o login, ela pode simular completamente os hábitos de operação humana para implementar anti-rastejadores. Bem, eu vou contar a todos. A tecnologia PHP Crawler não está planejada para continuar escrevendo. É melhor usar o PHP para fazer coisas adequadas para isso. O nível de rastreador escrito no PHP é muito baixo e é melhor para Python e Java.