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内容请搜索 以前的文章或继续浏览下面的相关文章希望大家以后多多支持 !
最后更新于 2021-11-22 08:21:24 并被添加「」标签,已有 位童鞋阅读过。
本站使用「署名 4.0 国际」创作共享协议,可自由转载、引用,但需署名作者且注明文章出处
相关文章
- HTML5新增的标签和属性归纳总结
- 适用华为p30钢化膜p40p20mate40e/nova/5/4E/5i/7/8/9/pro全屏P50荣耀8X水凝v40v30x10畅享30s贴膜20s手机6se
- 蓝漂洗衣凝珠洁净去污除菌除螨多效洗衣球持久留香珠三合一洗衣液
- 洗衣机漂浮物过滤网袋滤毛器除毛器清洁去污洗衣球衣物洗护球袋子
- 十字一字螺丝刀套装穿心螺丝刀梅花改锥工具可敲击多功能平口起子