01
阅读本文需要3分钟
使用selenium登录某宝,套路也很一样,今天就给大家简单的讲哈,只供学习交流哈。
基本步骤
1.下载chrome浏览器:https://www.google.com/chrome/
2.查看chrome浏览器的版本号,下载对应版本号的chromedriver驱动
3.填写chromedriver的绝对路径
4.执行命令pip install selenium
5.打开登录页面并通过微博绑定某宝账号密码
模块
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
安装方法:pip install selenium 即可
浏览器驱动
chromedriver_path = "chromedriver.exe" # 使用自己的路径即可
下载地址:http://chromedriver.storage.googleapis.com/index.html
¥¥ 下载好之后放在自己想放的位置即可,不需要双击exe文件。
浏览器设置
options = webdriver.ChromeOptions()
# 不加载图片,加快访问速度
options.add_experimental_option("prefs", {"profile.managed_default_content_settings.images": 2})
# 此步骤很关键,设置为开发者模式,防止被各大网站识别出来使用了Selenium
options.add_experimental_option('excludeSwitches', ['enable-automation'])
# 改成你的chromedriver的完整路径地址
chromedriver_path = r"D:\chromedriver_win32\chromedriver.exe"
self.driver = webdriver.Chrome(executable_path=chromedriver_path, options=options)
#超时时长为10s
self.wait = WebDriverWait(self.browser, 10)
关键代码
# 等待 微博登录选项 出现
weibo_login = self.wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, '.weibo-login')))
weibo_login.click()
# 等待 微博账号 出现
weibo_user = self.wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, '.username > .W_input')))
weibo_user.send_keys(weibo_username)
# 等待 微博密码 出现
weibo_pwd = self.wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, '.password > .W_input')))
weibo_pwd.send_keys(weibo_password)
# 等待 登录按钮 出现
submit = self.wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, '.btn_tip > a > span')))
submit.click()
# 获取到淘宝昵称才能确定是登录成功
taobao_name = self.wait.until(EC.presence_of_element_located((By.CSS_SELECTOR,
'.site-nav-bd > ul.site-nav-bd-l > li#J_SiteNavLogin > div.site-nav-menu-hd > div.site-nav-user > a.site-nav-login-info-nick ')))
# 输出淘宝昵称
print(taobao_name.text)
效果图:
结束
只是实现简单的登录功能,大家可以多几遍代码,就可以完全掌握,前提是对selenium有点基础。
获取源代码 后台回复【登录】 <链接有效期7天>
岁月有你,惜惜相处