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

2021/5/13 22:26:23

本文主要是介绍每日简单小妙招:使用python自动登录CSDN等各大网站,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

文章目录

  • 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、获取登录按钮元素对象,并执行点击操作



3、总结

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

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

未完待续…



这篇关于每日简单小妙招:使用python自动登录CSDN等各大网站的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程