|
10鱼币
- from selenium import webdriver
- from selenium.webdriver.common.by import By
- from selenium.webdriver.support.ui import WebDriverWait
- from selenium.webdriver.support import expected_conditions as EC
- class tb_infos:
- # 初始化对象
- def __init__(self):
- url = 'https://login.taobao.com/member/login.jhtml'
- self.url = url
- options = webdriver.ChromeOptions()
- options.add_experimental_option('prefs', {'profile.managed_default_content_settings.images': 2})
- options.add_experimental_option('excludeSwitches', ['enable-automation'])
- self.browser = webdriver.Chrome(options=options)
- self.wait = WebDriverWait(self.browser, 10)
- # 登录淘宝
- def login(self):
- self.browser.get(self.url)
- password_login = self.wait.until(
- EC.presence_of_element_located((By.CSS_SELECTOR, '.qrcode-login > .login-links > .forget-pws')))
- password_login.click()
- wb_login = self.wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, '.weibo-login')))
- wb_login.click()
- wb_user = self.wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, '.username > .W_input')))
- wb_user.send_keys(wb_username)
- wb_pwd = self.wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, '.password > .W_input')))
- wb_pwd.send_keys(wb_password)
- submit = self.wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, '.btn-tip > a > span')))
- submit.click()
- tb_name = self.wait.until(EC.presence_of_element_located((By.CSS_SELECTOR,
- '.site-nav-bd > .site-nav-bd-1 > li#J_SiteNavLogin > .site-nav-menu-hd > .site-nav-user > a.site-nav-login-info-nick')))
- print(tb_name.text)
- if __name__ == '__main__':
- wb_username = '微博账号'
- wb_password = '微博密码'
- a = tb_infos()
- a.login()
复制代码
运行的时候报错:
Traceback (most recent call last):
File "D:/项目/Python/淘宝登录/tb_login.py", line 53, in <module>
a.login()
File "D:/项目/Python/淘宝登录/tb_login.py", line 28, in login
EC.presence_of_element_located((By.CSS_SELECTOR, '.qrcode-login > .login-links > .forget-pws')))
File "D:\Program Files\Anaconda\lib\site-packages\selenium\webdriver\support\wait.py", line 80, in until
raise TimeoutException(message, screen, stacktrace)
selenium.common.exceptions.TimeoutException: Message:
进程已结束,退出代码 1
|
|