文章目录

  • 1、代码演示
  • 2、过程详解
    • 2.1、chromedriver.exe驱动下载
      • 2.1.1、chromedriver.exe简介
      • 2.1.2、chromedriver.exe下载地址
      • 2.1.3、如何下载对应得版本
      • 2.1.4、chromedriver.exe存放位置
    • 2.2、selenium详解
    • 2.3、元素对象获取
      • 2.3.1、定位
      • 2.3.2、获取元素对象
    • 2.4、流程
  • 3、总结

1、代码演示

from selenium import webdriver
import time
#去掉自动化控制提示
options = webdriver.ChromeOptions()
options.add_experimental_option('useAutomationExtension', false)
options.add_experimental_option("excludeSwitches", ['enable-automation'])
#打开Chrome浏览器,参数是chromedriver.exe驱动,下载方式下面会详细说
# r是表名\不做为转义符
driver = webdriver.Chrome(r'C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe')
#最大化
driver.maximize_window()
#休眠一秒
time.sleep(1)
#定位到csdn登录页面
driver.get('https://passport.csdn.net/login')
time.sleep(1)
#通过xpath定位到用户名密码登录位置,点击进行用户名和密码的输入
driver.find_element_by_xpath('//*[@id="app"]/div/div/div[1]/div[2]/div[5]/ul/li[2]/a').click()
time.sleep(1)#输入用户名和密码函数,并进行登录操作
def _login_(username, password):input_username = driver.find_element_by_xpath('//*[@id="all"]')#点击账户输入框input_username.click()# 情况输入框中的内容input_username.clear()# 输入用户名input_username.send_keys(username)#通过id获取元素input_password = driver.find_element_by_id('password-number')time.sleep(1)input_password.send_keys(password)driver.find_element_by_xpath('//*[@id="app"]/div/div/div[1]/div[2]/div[5]/div/div[6]/div/button').click()username = "xxxxxxx"
password = "xxxxxxxx"
_login_(username, password)

2、过程详解

2.1、chromedriver.exe驱动下载

2.1.1、chromedriver.exe简介

chromeDriver.exe工具是Chrome的WebDriver,可以用于自动化测试,可以操作浏览器,同时selenium操作chrome浏览器需要有ChromeDriver驱动来协助

2.1.2、chromedriver.exe下载地址

下载地址:http://chromedriver.storage.googleapis.com/index.html

2.1.3、如何下载对应得版本



2.1.4、chromedriver.exe存放位置

解压之后,放到Chrome的根目录下

然后放到python项目的根目录下

2.2、selenium详解

Selenium 是一个用于Web应用程序测试的工具
框架底层使用JavaScript模拟真实用户对浏览器进行操作。测试脚本执行时,浏览器自动按照脚本代码做出点击,输入,打开,验证等操作,就像真实用户所做的一样,从终端用户的角度测试应用程序。

2.3、元素对象获取

2.3.1、定位

以百度搜索框为例


右键搜索框 -> 检查,然后就会看到高亮显示的代码,至此定位成功

2.3.2、获取元素对象

1、通过id : find_element_by_id(‘id’)

‘id’为id属性的值

2、通过class : find_element_by_class(‘class’)

’class’为class属性的值

3、通过xpath : find_element_by_xpath(’’)

右键定位的搜索框代码 -> copy -> copy xpath

2.4、流程

1、打开Chrome浏览器
2、跳转到csdn登录的地址
3、获取账号密码登录元素对象,执行点击操作

4、定位到账户输入框,输入账号
5、定位到密码输入框,输入密码
6、获取登录按钮元素对象,并执行点击操作


后续打包工具使用pyinstaller,不再多说

3、总结

一些大型网站都有强大的反爬机制,有时会进性滑动窗口和图片的验证操作,当然利用python也能快速的实现

欲知后事如何,请看下回分解

未完待续…

每日简单小妙招:使用python自动登录CSDN等各大网站相关推荐

  1. 每日简单小妙招:使用python实现控制摄像头拍照并将其发送某某邮箱(仅供学习)

    仅供学习,望注意隐私 文章目录 1.功能展示 2.代码展示 3.详细步骤 Ⅰ.安装opencv Ⅱ.QQ邮箱设置 1.功能展示 这里我使用自己的电脑进行控制拍照,将其发送到自己的邮箱:图片经过base ...

  2. 3D建模学习小妙招,每天两小时,半年变大咖

    学习要讲究方式方法,效率才会提高, 达到事半功倍的效果. 很多小伙伴刚接触3D建模的时候可能都比较迷茫, 东一榔头西一棒槌的, 一会儿这个网站看看教程, 一会儿那个网站看看教程, 没有清晰的学习思路和 ...

  3. excel删除空行_教你简单小妙招将Excel里重复的数据筛选出来!

    在我们日常工作中,经常会遇到一些重复的数据,但在这些重复的记录里往往只想要报讯一条,因此需要把多余的数据删除.在Excel中,删除重复的数据有两种方法,方法一,是用"删除重复数据删除&quo ...

  4. 纸质文件怎么扫描成电子版?简单小妙招快来拿捏

    随着科技的发展,越来越多的人将纸质文件转换为电子版,以方便存储和共享.本文将介绍纸质文件如何扫描成电子版,以及如何利用手机进行扫描转换. 纸质文件扫描成电子版 将纸质文件扫描成电子版是一种常见的方式. ...

  5. IT小妙招之:快马加鞭,Windows 7启动大提速

    情景再现 现在的电脑硬件主流配置大概都是双核CPU以上了,不过很多人还是嫌Windows 开机不够快,感觉好像四核机器和双核机器开机速度都是一样的.那是因为在多核心的硬件之下,Windows 始终是默 ...

  6. 【python实战】怎么用python自动登录CSDN

    目录 页面分析 引入selenium模块及驱动 1.并将安装好的Chromedriver.exe引入到代码中 2.浏览器驱动引入

  7. word怎么在下一页添加表头_简单!用2个小妙招,让Word跨页表格自动加表头!

    原标题:简单!用2个小妙招,让Word跨页表格自动加表头! 对于一些大型表格,往往会分多页显示,这就导致一个问题出现,当表格延伸到下一页之后,因为没有了表头(标题行),不阅读起来十分不方便. 因此,今 ...

  8. 在python中strip_Python中关于strip使用方法的小妙招

    本篇文章给大家分享的内容是Python中关于strip使用方法的小妙招,有着一定的参考价值,有需要的朋友可以参考一下 [开胃小菜] 当提到python中strip方法,想必凡接触过python的同行都 ...

  9. 夏天简单实用驱蚊小妙招

    夏天是蚊子繁衍最旺盛的时候,利用碱水盆,短短1个月就成功让蚊子绝子绝孙.方法如下: 驱蚊小妙招:碱水盆驱蚊发 将洗衣粉混合肥皂丝倒入装了水的小盆子,放在地下角落,三天后,蚊子数量骤减,十天后水盆内满是 ...

最新文章

  1. 数据库like匹配的实现猜测
  2. spring 配置文件位置
  3. 软件开发的N种基础武器 - 最新清单
  4. 设计模式学习笔记清单
  5. 这三类问题是工控系统最大的威胁
  6. Android之图片加载框架Picasso源码解析
  7. 面试:字符串拼接,什么时候用StringBuilder?
  8. 5分绩点转4分_作为一名大学生,如何规划4年大学生活?学姐:建议从这5点做起...
  9. leetcode67. 二进制求和
  10. 2022十大科技趋势
  11. php artisan key,Laravel:php artisan key:generate三种报错解决方案,修改默认PHP版本(宝塔面板)...
  12. 神经网络不胜语__M-P模型似可寻
  13. 计算机基础知识经典问答题,计算机基础知识问答题及答案一
  14. mac brew加速
  15. 手机safari导入html书签,苹果手机safari书签及其历史记录怎么恢复
  16. 微软早就该收购雅虎了
  17. 交换机怎么用计算机配置文件,如何将交换机配置导入本地计算机做备份
  18. 加速度随机游走_怎么才能形象的说明IMU的bias随机游走?
  19. 我的世界服务器怎么弄无限矿物,《我的世界》无限存储空间设备如何制作?
  20. 2019中国科大夏令营机试

热门文章

  1. 聊聊我对开发项目选技术的看法
  2. java中this的含义_Javascript中的this的含义
  3. 南华大学java补考_关于2017年秋季学期学生补考报名及成绩复核的通知
  4. 一个servlet跳到另一个servlet_另一个太阳下的天与地
  5. php记录读取数据类型,数据读取 · ThinkPHP 3.2.3开发手册 · 看云
  6. 对应chd5.14的spark_GitHub - shixiaopengql/BigData-News: 基于Spark2.2新闻网大数据实时系统项目...
  7. python真正实现多线程_python多线程实现
  8. HTML中属性值是否加引号规则详解
  9. JavaScript中的三种常用继承方法
  10. 家用计算机在拔下网线的情况下,为什么只有拔掉网线才可以关掉电脑