zoukankan      html  css  js  c++  java
  • selenium登录豆瓣网

    登录流程:

    • 实例化一个driver,然后driver.get()发送请求
    • 最重要的:切换iframe子框架,因为豆瓣的网页中的登录那部分是一个ifrme,必须切换才能寻找到对应元素
    • 利用selenium切换到账号密码登录
    • 利用selenium输入账户和密码
    • 利用selenium点击登录按钮
    • 然后利用字典推导式保存了一下cookie

    代码实现:

     1 import time
     2 from selenium import webdriver
     3 
     4 # 实例化driver
     5 driver = webdriver.Chrome()
     6 driver.get('https://www.douban.com/')
     7 ## 切换iframe子框架
     8 driver.switch_to.frame(driver.find_elements_by_tag_name("iframe")[0])
     9 
    10 driver.maximize_window()  # 最大化窗口
    11 driver.find_element_by_css_selector('li.account-tab-account').click()  # 点击密码登录的标签
    12 driver.find_element_by_id('username').send_keys('13343396443')
    13 driver.find_element_by_id('password').send_keys('lilei120400')
    14 # 点击‘登录豆瓣’按钮
    15 # 这里需要注意,当元素的class属性有好几个的时候,此函数的参数填class的第一个就好
    16 driver.find_element_by_class_name('btn').click()  # 元素的class属性:btn btn-account
    17 # 获取cookies,字典推导式
    18 cookies = {i['name']: i['value'] for i in driver.get_cookies()}
    19 print(cookies)
    20 
    21 time.sleep(5)
    22 driver.quit()  # 退出浏览器
  • 相关阅读:
    微信支付之退款
    解决The mysql extension is deprecated and will be removed
    网站域名授权
    PHP 异或 算法
    TCP与UDP的区别
    java基于javaMail实现向QQ邮箱发送邮件
    Servlet的生命周期
    Tomcat容器模型原理
    java转义字符
    web获取URL相关信息
  • 原文地址:https://www.cnblogs.com/springionic/p/11135064.html
Copyright © 2011-2022 走看看