前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >selenium自动登录某宝

selenium自动登录某宝

作者头像
Python知识大全
发布2020-02-13 14:03:33
9020
发布2020-02-13 14:03:33
举报
文章被收录于专栏:Python 知识大全Python 知识大全

01

阅读本文需要3分钟

使用selenium登录某宝,套路也很一样,今天就给大家简单的讲哈,只供学习交流哈。

基本步骤

1.下载chrome浏览器:https://www.google.com/chrome/

2.查看chrome浏览器的版本号,下载对应版本号的chromedriver驱动

3.填写chromedriver的绝对路径

4.执行命令pip install selenium

5.打开登录页面并通过微博绑定某宝账号密码

模块

代码语言:javascript
复制
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 即可

浏览器驱动

代码语言:javascript
复制
chromedriver_path = "chromedriver.exe"  # 使用自己的路径即可
代码语言:javascript
复制
下载地址:http://chromedriver.storage.googleapis.com/index.html

¥¥ 下载好之后放在自己想放的位置即可,不需要双击exe文件。

浏览器设置

代码语言:javascript
复制
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) 

关键代码

代码语言:javascript
复制
        # 等待 微博登录选项 出现
        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天>

岁月有你,惜惜相处

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-06-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python 知识大全 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档