由于selenium被淘宝识别,然后跳出滑动验证问题。这里需要添加参数,让淘宝无法检测出selenium。开始以为是代理IP问题后来实验发现不是代理IP问题。对于xpath和其他人不一样着哩可能是浏览器的问题,开始用的火狐,后面还是感觉Google香。

代码

import random
import time
# 修改代码如下
from selenium.webdriver import Chrome
from selenium.webdriver import ChromeOptions
options = ChromeOptions()
options.add_experimental_option('excludeSwitches', ['enable-automation'])
options.add_experimental_option('useAutomationExtension', False)

driver = Chrome(options=options)
driver.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", {
  "source": """
    Object.defineProperty(navigator, 'webdriver', {
      get: () => undefined
    })
  """
})
driver.get('https://login.taobao.com/member/login.jhtml')

driver.find_element_by_xpath('//*[@id="fm-login-id"]').send_keys('账号')
time.sleep(5)
driver.find_element_by_xpath('//*[@id="fm-login-password"]').send_keys('密码')
time.sleep(random.randint(1,4))
driver.find_element_by_xpath('//*[@id="login-form"]/div[4]/button').click()

driver.execute_cdp_cmd(“Page.addScriptToEvaluateOnNewDocument”, {
“source”: “”"
Object.defineProperty(navigator, ‘webdriver’, {
get: () => undefined
})
“”"
})

Logo

电商企业物流数字化转型必备!快递鸟 API 接口,72 小时快速完成物流系统集成。全流程实战1V1指导,营造开放的API技术生态圈。

更多推荐