Python利使用Selenium自动登录掘金

作者 : 开心源码 本文共1438个字,预计阅读时间需要4分钟 发布时间: 2022-05-12 共151人阅读

0.前言

最近对python很感兴趣,主要是想使用它结合adb做少量android游戏的外挂,同时写少量小的爬虫,处理服务器端的内容问题。Selenium是一个自动化测试工具,可以操控浏览器模拟元素的点击和赋值。

1.分析

代开掘金网站,点击右上角的图标

image

之后在登录框输入使用户名和密码,并点击登录

image

2.Selenium基本使用法

2.1取得驱动

webdriver=webdriver.Chrome()
取得chrome浏览器的驱动

2.2元素定位

find_element_by_id
find_element_by_name
find_element_by_xpath
find_element_by_link_text
find_element_by_partial_link_text通过部分超链接定位
find_element_by_tag_name
find_element_by_class_name
find_element_by_css_selector

2.3元素事件

元素.click()模拟元素的点击事件
元素.clear()清楚元素的值
元素.send_keys(content)为元素赋值

2.4切换窗口

webdriver.switch_to.window(handle)

2.5

3.代码实现

def login(webdriver, url, login_xpath, username_xpath, user_name, password_xpath, password, login_btn_xpath):    webdriver.get(url)    if login_xpath is not None:        login_btn = webdriver.find_element_by_xpath(login_xpath)        login_btn.click()        login_by_password(webdriver, username_xpath, user_name, password_xpath, password, login_btn_xpath)    else:        login_by_password(webdriver, username_xpath, user_name, password_xpath, password, login_btn_xpath)                    def loginJueJin(webdriver, user_name, password, url='https://juejin.im/',                login_xpath='//*[@id="juejin"]/div[2]/div/header/div/nav/ul/li[4]/span[1]',                username_xpath='//*[@id="juejin"]/div[1]/div[3]/form/div[2]/div[1]/div[1]/input',                password_xpath='//*[@id="juejin"]/div[1]/div[3]/form/div[2]/div[1]/div[2]/input',                login_btn_xpath='//*[@id="juejin"]/div[1]/div[3]/form/div[2]/button'):    login(webdriver, url, login_xpath, username_xpath, user_name, password_xpath, password, login_btn_xpath)L      

image

关注我的公众号

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » Python利使用Selenium自动登录掘金

发表回复