您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:python爬虫之利用selenium模块自动登录CSDN

51自学网 2021-10-30 22:43:53
  python
这篇教程python爬虫之利用selenium模块自动登录CSDN写得很实用,希望能帮到您。

一、页面分析

CSDN登录页面如下图

二、引入selenium模块及驱动

2.1 并将安装好的Chromedriver.exe引入到代码中

# -*- coding:utf-8 -*-from selenium import webdriver  import osimport time#引入chromedriver.exechromedriver="C:/Users/lex/AppData/Local/Google/Chrome/Application/chromedriver.exe"os.environ["webdriver.chrome.driver"] = chromedriverbrowser = webdriver.Chrome(chromedriver)

2.2 浏览器驱动引入

将驱动下载后,复制chromedriver.exe 到谷歌浏览器的安装路径下,与Chrome.exe启动文件并列的目录下:

三、爬虫模拟登录

3.1 设置网址链接

#设置浏览器需要打开的urlurl = "https://passport.csdn.net/login?code=public"  browser.get(url)

3.2 切换到账号密码登录

使用selenium模拟点击 账号密码登录的选项

#使用selenium选择 账号登录按钮browser.find_element_by_link_text("账号密码登录").click()

3.3 找到用户名密码的控件ID

3.4 注入用户名和密码

根据页面代码分析,获得用户名的id属性为all,密码的id属性为password-number

使用python代码,注入用户名密码

browser.find_element_by_id("all").clear()browser.find_element_by_id("all").send_keys("xxxx@gmail.com")time.sleep(2)browser.find_element_by_id("password-number").clear()browser.find_element_by_id("password-number").send_keys("1212121212")

3.5 模拟登录点击

分析页面结构,模拟点击登录按钮。

分析可获得,登录按钮的class属性为btn btn-primary,根据class来锁定该按钮

time.sleep(1)#增加一秒钟的时间间隔browser.find_element_by_css_selector("[class='btn btn-primary']").click()

四、成功登录CSDN

五、完整代码

# -*- coding:utf-8 -*-import osimport timefrom selenium import webdriver # 从selenium导入webdriverfrom selenium.webdriver.common.by import Byfrom selenium.webdriver.support.ui import WebDriverWaitfrom selenium.webdriver.support import expected_conditions as ECfrom selenium.webdriver.chrome.options import Optionsimport jsonimport time#引入chromedriver.exechromedriver="C:/Users/lex/AppData/Local/Google/Chrome/Application/chromedriver.exe"os.environ["webdriver.chrome.driver"] = chromedriverbrowser = webdriver.Chrome(chromedriver)#设置浏览器需要打开的urlurl = "https://passport.csdn.net/login?code=public"  browser.get(url)browser.find_element_by_link_text("账号密码登录").click()browser.find_element_by_id("all").clear()browser.find_element_by_id("all").send_keys("你的邮箱地址")time.sleep(1)browser.find_element_by_id("password-number").clear()browser.find_element_by_id("password-number").send_keys("你的登录密码")time.sleep(1)browser.find_element_by_css_selector("[class='btn btn-primary']").click()

到此这篇关于python爬虫之利用selenium模块自动登录CSDN的文章就介绍到这了,更多相关python自动登录CSDN内容请搜索51zixue.net以前的文章或继续浏览下面的相关文章希望大家以后多多支持51zixue.net!


Python数据清洗工具之Numpy的基本操作
Python中tkinter的用户登录管理的实现
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。