如何使用 Selenium Webdriver 逃避沃尔玛的封锁
How to evade blocking by Walmart using Selenium Webdriver
我正在学习 python,我做过一些机器人(没什么特别的),我正在尝试在沃尔玛上创建一个新机器人,但是当我启动 chrome 驱动程序时,沃尔玛网站会问我对于验证码,这不是问题,因为我可以手动解决。问题是每次我解决验证码时,验证码都会再次出现。我的机器人要求我登录沃尔玛网站,所以我测试了 google chrome(不是 chrome 驱动程序),我可以毫无问题地登录。我以为可能是我的 ip 或其他东西,但经过一些测试后我意识到如果我使用 chromedriver.
沃尔玛会阻止登录过程
这是我的代码:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import time
options.add_argument("user-data-dir=C:\Users\PCHOME\AppData\Local\Temp\scoped1\Default\gdps");
driver = webdriver.Chrome(executable_path=r'dchrome\chromedriver.exe', options=options)
driver.get("https://www.walmart.com/")
在这种情况下,我尝试手动登录(我已经尝试使用机器人登录)。该网站加载良好,但验证码不允许我登录,它只是出现并出现并出现......
这是验证码 img:
我按住按钮直到验证码被清除,然后出现这个符号✓然后再次出现验证码。
有任何想法吗?谢谢!
为了避免被屏蔽被检测为 driven initiated google-chrome Browsing Context you need to use the argument 如下:
代码块:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service
options = Options()
options.add_argument("start-maximized")
# Avoiding detection
options.add_argument('--disable-blink-features=AutomationControlled')
s = Service('C:\BrowserDrivers\chromedriver.exe')
driver = webdriver.Chrome(service=s, options=options)
driver.get("https://www.walmart.com/")
浏览器快照:
我正在学习 python,我做过一些机器人(没什么特别的),我正在尝试在沃尔玛上创建一个新机器人,但是当我启动 chrome 驱动程序时,沃尔玛网站会问我对于验证码,这不是问题,因为我可以手动解决。问题是每次我解决验证码时,验证码都会再次出现。我的机器人要求我登录沃尔玛网站,所以我测试了 google chrome(不是 chrome 驱动程序),我可以毫无问题地登录。我以为可能是我的 ip 或其他东西,但经过一些测试后我意识到如果我使用 chromedriver.
沃尔玛会阻止登录过程这是我的代码:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import time
options.add_argument("user-data-dir=C:\Users\PCHOME\AppData\Local\Temp\scoped1\Default\gdps");
driver = webdriver.Chrome(executable_path=r'dchrome\chromedriver.exe', options=options)
driver.get("https://www.walmart.com/")
在这种情况下,我尝试手动登录(我已经尝试使用机器人登录)。该网站加载良好,但验证码不允许我登录,它只是出现并出现并出现...... 这是验证码 img:
我按住按钮直到验证码被清除,然后出现这个符号✓然后再次出现验证码。 有任何想法吗?谢谢!
为了避免被屏蔽被检测为
代码块:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service
options = Options()
options.add_argument("start-maximized")
# Avoiding detection
options.add_argument('--disable-blink-features=AutomationControlled')
s = Service('C:\BrowserDrivers\chromedriver.exe')
driver = webdriver.Chrome(service=s, options=options)
driver.get("https://www.walmart.com/")
浏览器快照: