zoukankan      html  css  js  c++  java
  • Python自动化办公系列02_HTML补充知识 request,BeautifulSoup,Selenium

    request库,BeautifulSoup库,Selenium库

    1.request,BeautifulSoup库

    <input type="radio"/> 单选

    <input type="checkbox"> 多选

    复习如何用<a href=""><a/>跳转,以及如何用<iframe></iframe>显示网页中的网页

    request库:requests.get('url')从网页中获取信息;requests.post('url')从网页中上传信息

    beautifulSoup抓取页面内容,抓取网页内容主要在这一行:h2ele = bs0bj.select("input")

    import requests, bs4
    resp = requests.get('http://url')
    #把网页内容转化成文本对象 bs0bj
    = bs4.BeautifulSoup(resp.text) h2ele = bs0bj.select("input") print(h2ele[0].attrs)

    2.selenium库四个点(webdriver,Webelement方法,键盘事件,鼠标事件)

    1)如果配置ok,可以让python自动运行web网页,自动操作

    from selenium import webdriver
    import time
    import os
    
    driver = webdriver.Edge("C:WindowsSystemAppsMicrosoft.MicrosoftEdge_8wekyb3d8bbwemsedgedriver.exe")
    url = "http://www.baidu.com"
    driver.get(url)
    print(driver.title)
    driver.implicitly(10)
    WebdriverWait(driver,10,0.2).until(lambda x:x.find_element_by_id("username")) time.sleep(
    5) driver.close()

    上面这段代码,就是执行打开百度---获取url---输出标题头---等待5s钟---关闭。

    webdriver常用方法:

    • 打开和关闭网页:driver.get("url");driver.set_window_position(x,y) 设置初始化位置;driver.maximize_window();关闭浏览器 driver.quit()
    • 获取信息:driver.title;driver.current_url;driver.page_source
    • 等待时间:driver.implicitly(10) 设置等待时间为10s;WebdriverWait(driver, 10, 0.2).until(lambda x: x.find_element_by_id("username")) 设置10s的等待时间,每0.2s获取一次,直到用户输入username,找到。
    • js方法

    2)find_element_by_class_name(name) 使用css类的name元素。与element不同的是,elements查找的是多个元素

    is_enable()和is_selected()使用方法:

      if(isEnable()){

        }

      if(xxx.isSelected()){

        }

    如果多选框被选中,则isSelected()返回True,则执行代码框。

    3)元素的键盘操作方法

    send_keys(Keys.BACK_SPACE)

    4)元素的鼠标事件操作方法

    ActionChains(driver).context_click(xxx).perform() 执行鼠标右键

  • 相关阅读:
    Go语言判断一个字节的高位大于四
    Golang封装一个加锁的Map工具包
    解决往服务器传文件时权限不够问题
    git 服务器同步代码错误 error: insufficient permission for adding an object to repository database .git/objects
    动态调用WebService
    sql的一些使用小技巧整理【不定期更新】
    【雅思】【口语】保持健康的活动
    【雅思】【口语】advertisement--buy sth.
    【雅思】【口语】Teacher
    【python】python_接口自动化测试框架
  • 原文地址:https://www.cnblogs.com/yuyukun/p/12918982.html
Copyright © 2011-2022 走看看