zoukankan      html  css  js  c++  java
  • selenium浏览器自动化模块

    # selenium概念基于浏览器自动化的模块,编写代码控制浏览器的操作.
    # 应用在爬虫中可以帮我们便捷的爬去到页面中动态加载出来的数据,实现模拟登陆
    # 基本流程:
    # 1.pip install selenium
    # 2.下载谷歌的驱动程序:http://chromedriver.storage.googleapis.com/index.html
    from selenium import webdriver
    from time import sleep
    # 实例化一个浏览器对象,填写浏览器驱动位置,要加r,放置字符转义
    driver = webdriver.Chrome(r'./chromedriver.exe')
    # 用get方法打开网页
    driver.get("http://www.baidu.com")
    # 查找页面的"设置"选项,调用的方法(通过连接文本查找元素),找到并点击
    driver.find_elements_by_link_text('设置')[0].click()
    # 再找"搜索设置"选项,设置每页显示50条
    driver.find_elements_by_link_text('搜索设置')[0].click()
    sleep(2)
    # 选中每页显示50条
    m = driver.find_element_by_id('nr')
    
    m.find_element_by_xpath('//*[@id="nr"]/option[3]').click()
    m.find_element_by_xpath('.//option[3]').click()
    
    
    driver.find_elements_by_class_name("prefpanelgo")[0].click()
    sleep(2)
    
    driver.switch_to_alert().accept()
    sleep(2)
    # 找到输入框,send_keys填写内容
    driver.find_element_by_id('kw').send_keys("海贼王")
    
    driver.find_element_by_id('su').clink()
    
    # 关闭这个浏览器对象
    driver.quit()

    实例简单应用

    # 实例应用:爬取药监总局
    from selenium import webdriver
    from lxml import etree
    import time
    
    # 实例化浏览器对象
    yaojianju = webdriver.Chrome(executable_path='./chromedriver.exe')
    # get对url发起请求
    yaojianju.get('http://125.35.6.84:81/xk/')
    
    # 获取浏览器当前打开页面的页面源码数据(可见即可得)
    page_text = yaojianju.page_source
    time.sleep(2)
    # 获取网页数据
    tree = etree.HTML(page_text)
    name = tree.xpath('//*[@id="gzlist"]/li[1]/dl/a/text()')[0]
    print(name)
    time.sleep(3)
    yaojianju.quit()
  • 相关阅读:
    ElastaticSearch学习笔记(三) ----- 聚合查询
    ElastaticSearch学习笔记(二) ----- DSL查询与过滤
    ElastaticSearch学习笔记(一) ----- 基础概念
    BizTalk连接SAP方法
    解决spark日志清理问题
    Spark Standalone模式 高可用部署
    @Data注解踩坑之大小写
    SVN No such revision *
    svn: Base checksum mismatch on
    Bean的原始版本与最终版本不一致?记一次Spring IOC探索之旅
  • 原文地址:https://www.cnblogs.com/wmh33/p/11043321.html
Copyright © 2011-2022 走看看