غاية
أريد أن أدرك تسجيل الدخول التلقائي على Taobao من خلال كود Java ، وأن يملأ معلومات تسجيل الدخول تلقائيًا وإرسالها عن طريق الحصول على الإعدادات. في الوقت الحاضر ، تم اختبار هذا الرمز من قبل المحرر ويمكن تمريره. لا أعرف ما إذا كان لدى Taobao استراتيجية الحظر المقابلة في المستقبل.
مشاركة الكود:
package util ؛ import org.openqa.selenium.by ؛ import org.openqa.selenium.webelement ؛ import org.openqa.selenium.firefox.firefoxdriver java.io.file ؛ import java.util.random ؛ public class testcase2 {public static void main (string [] args) {system.setProperty ("webdriver.firefox.bin" ، "c: // program files // mozilla firefox // firefox.exe") ؛ System.SetProperty ("WebDriver.gecko.driver" ، "C: //users//18431//ideaprojects//seleniumdemo//bin//geckodriver.exe") ؛ خيارات firefoxoptions = Firefoxoptions جديدة () ؛ firefoxprofile profile = new Firefoxprofile (ملف جديد ("c: //users//18431//appdata//roaming//mozilla//firefox//profiles//efzu2oem.default")) ؛ Options.setProfile (ملف تعريف) ؛ Firefoxdriver Driver = New Firefoxdriver () ؛ driver.get ("https://login.m.taobao.com/login.htm") ؛ // يبدأ التالي في محاكاة العمليات العادية بالكامل ، لذلك سترى الكثير من عمليات النوم المستخدم المستخدم usernameElement = driver.findElement (بواسطة. // محاكاة المستخدم انقر فوق مربع إدخال اسم المستخدم usernameElement.click () ؛ username username = "18588260144" ؛ // رقم هاتفك المحمول ، سلسلة كلمة المرور = "xxxxxxxxxxx" ؛ جرب {for (int i = 0 ؛ i <username.length () ؛ i ++) {thread.sleep (rand.nextint (1000)) ؛ // sleep random 0-1 // أدخل حرفًا واحدًا مستخدمًا usernameElement.SendKeys (""+username.charat (i)) ؛ } webelement passwordelement = driver.findElement (by.id ("password")) ؛ passwordelement.click () ؛ // بعد إدخال اسم المستخدم ، ينام بشكل عشوائي لمدة 0-3 ثوانٍ. لـ (int i = 0 ؛ i <password.length () ؛ i ++) {thread.sleep (rand.nextint (1000)) ؛ PassworeElement.sendkeys (""+password.charat (i)) ؛ } driver.findElement (by.id ("btn-submit")). click () ؛ } catch (استثناء e) {E.PrintStackTrace () ؛ } جرب {thread.sleep (300000) ؛ } catch (interruptedException ie) {ie.printStackTrace () ؛ } driver.quit () ؛ }} لخص
يمكن ملاحظة أنه بغض النظر عن مدى التغيير ، بغض النظر عن مدى صعوبة محاكاة تسجيل الدخول ، يمكنه محاكاة عادات التشغيل البشري تمامًا لتنفيذ مضادات الزحف. حسنًا ، سأخبركم جميعًا. لا يتم التخطيط لتكنولوجيا الزاحف PHP لمواصلة الكتابة. من الأفضل استخدام PHP للقيام بأشياء مناسبة لذلك. مستوى الزاحف المكتوب في PHP منخفض للغاية ، وهو أفضل بالنسبة للبيثون وجافا.