18
เว็บไซต์สามารถตรวจจับได้เมื่อคุณใช้ซีลีเนียมกับ Chromedriver หรือไม่
ฉันได้ทดลองซีลีเนียมด้วย Chromedriver แล้วและพบว่าบางหน้าสามารถตรวจจับได้ว่าคุณกำลังใช้ซีลีเนียมแม้ว่าจะไม่มีระบบอัตโนมัติเลย แม้กระทั่งตอนที่ฉันค้นหาด้วยตนเองเพียงแค่ใช้โครเมี่ยมผ่าน Selenium และ Xephyr ฉันมักจะได้รับหน้าที่แจ้งว่ามีการตรวจพบกิจกรรมที่น่าสงสัย ฉันได้ตรวจสอบตัวแทนผู้ใช้ของฉันและลายนิ้วมือเบราว์เซอร์ของฉันและพวกเขาทั้งหมดเหมือนกับเบราว์เซอร์โครมทั่วไป เมื่อฉันเรียกดูไซต์เหล่านี้ด้วย Chrome ปกติทุกอย่างทำงานได้ดี แต่ช่วงเวลาที่ฉันใช้ซีลีเนียมที่ฉันตรวจพบ ในทางทฤษฎีแล้ว Chromedriver และ Chrome ควรมีลักษณะเหมือนกันทุกประการกับเว็บเซิร์ฟเวอร์ แต่อย่างใดพวกมันสามารถตรวจจับได้ หากคุณต้องการรหัสทดสอบลองทำสิ่งนี้: from pyvirtualdisplay import Display from selenium import webdriver display = Display(visible=1, size=(1600, 902)) display.start() chrome_options = webdriver.ChromeOptions() chrome_options.add_argument('--disable-extensions') chrome_options.add_argument('--profile-directory=Default') chrome_options.add_argument("--incognito") chrome_options.add_argument("--disable-plugins-discovery"); chrome_options.add_argument("--start-maximized") driver = webdriver.Chrome(chrome_options=chrome_options) driver.delete_all_cookies() driver.set_window_size(800,800) driver.set_window_position(0,0) print 'arguments …