selenium 初体验

selenium自动获取百度搜索结果

源码:

from selenium import webdriver

from selenium.webdriver.common.by import By

from selenium.webdriver.common.keys import Keys

from selenium.webdriver.support import expected_conditions as EC

from selenium.webdriver.support.wait import WebDriverWait

browser = webdriver.Chrome()

try:

browser.get('https://www.baidu.com')

input = browser.find_element_by_id('kw')

input.send_keys('Python爬虫')

input.send_keys(Keys.ENTER)

wait = WebDriverWait(browser, 10)

wait.until(EC.presence_of_all_elements_located((By.ID, 'content_left')))

print(browser.current_url)

print(browser.get_cookies())

print(browser.page_source)

finally:

browser.close()

自动调用浏览器

与此同时,终端会将获取到的结果都打印出来

声明浏览器

selenium支持多个浏览器,声明浏览器的方式如下:

源码:

from selenium import webdriver

browser = webdriver.Chrome() # 声明 chrome

browser = webdriver.Firefox() # 声明 Firefox

访问页面

源码:

from selenium import webdriver

browser = webdriver.Chrome() # 声明浏览器

browser.get('https://www.baidu.com') # 访问网页

print(browser.page_source) # 将源码打印到终端

browser.close() # 关闭浏览器

运行脚本,会看到程序自动打开浏览器访问百度,并将源码输出到了终端

查找节点

获取知乎的搜索框节点

搜索框

源码

源码:

from selenium import webdriver

browser = webdriver.Chrome() # 声明浏览器

browser.get('https://www.zhihu.com') # 访问网页

search_input = browser.find_element_by_id('Popover1-toggle') # 查找节点

print(search_input)

browser.close() # 关闭浏览器

结果

☁ crawler python3 test_selenium.py

通过pycharm,进入browser.find_element_by_id源码,可看到还有多种方式能获取节点

节点查找方法

多节点查找

多节点

源码:

from selenium import webdriver

browser = webdriver.Chrome() # 声明浏览器

browser.get('http://36kr.com/') # 访问网页

lis = browser.find_elements_by_class_name('radius') # 根据类名查找节点

print(lis)

browser.close() # 关闭浏览器

执行结果

节点交互

需求:打开百度首页,在搜索框输入“三体“,然后清空搜索框,再输入“球状闪电”,最后点击搜索按钮

相当于模拟用户的真实操作

百度搜索框

源码:

from selenium import webdriver

import time

browser = webdriver.Chrome() # 声明浏览器

browser.get('https://www.baidu.com') # 访问网页

search_input = browser.find_element_by_id('kw') # 获取搜索框

search_input.send_keys('三体') # 将文字填充到搜索框

time.sleep(2)

search_input.clear() # 清空搜索框

search_input.send_keys('球状闪电')

submit = browser.find_element_by_id('su') # 获取提交按钮

submit.click() # 点击提交按钮

time.sleep(2)

browser.close() # 关闭浏览器

节点交互

更多的节点交互请查看官方文档

python3 selenium教程_2018年python3与selenium教程第1节相关推荐

  1. python3打包exe运行没反应_python selenium运行,打包exe常见问题解决方法

    selenium是一款优秀的自动化测试工具,支持的语言也非常广泛,其中以python语言最为高效简洁,本文以Python3.5.2为例. 首先需要安装selenium插件,命令行下pip instal ...

  2. win10系统,python3.8环境,chrome浏览器,selenium框架,实现腾讯视频自动登录

    文章目录 环境 代码演示 总结 环境 win10系统,python3.8环境,chrome浏览器,selenium框架,实现腾讯视频自动登录 代码演示 from selenium import web ...

  3. (下)python3 selenium3 从框架实现代码学习selenium让你事半功倍

    上一篇博文简要 在上一篇博文中已得知:使用 execute 向远程服务器发送请求会通过 webdriver 与浏览器交互,且发送已定义的命令常量可获得一些相关信息. 其中 execute 方法实现已经 ...

  4. (上)python3 selenium3 从框架实现代码学习selenium让你事半功倍

    本文感谢以下文档或说明提供的参考. Selenium-Python中文文档 Selenium Documentation Webdriver 参考 如有错误欢迎在评论区指出,作者将即时更改. 环境说明 ...

  5. python3爬虫入门教程-总算懂得python3.4爬虫入门教程

    Python是一款功能强大的脚本语言,具有丰富和强大的库,重要的是,它还具有很强的可读性,易用易学,非常适合编程初学者入门.以下是小编为你整理的python3.4爬虫入门教程 环境配置:下载Pytho ...

  6. Python使用Selenium WebDriver的入门介绍及安装教程

    Selenium WebDriver 入门 一.什么是Selenium WebDriver 二.安装Selenium WebDriver 2.1 安装selenium类库 2.2 安装浏览器驱动 2. ...

  7. python3.8.1安装教程-Linux安装Python3.8.1的教程详解

    本例以Linux上安装Pyhton3.8版本为例进行说明 1.依赖包安装 yum -y install zlib-devel bzip2-devel openssl-devel ncurses-dev ...

  8. python详细安装教程linux-Linux下python3.7.0安装教程

    记录了Linux 安装python3.7.0的详细过程,供大家参考,具体内容如下 我这里使用的时centos7-mini,centos系统本身默认安装有python2.x,版本x根据不同版本系统有所不 ...

  9. python3.8提示pip_Linux下升级安装python3.8并配置pip及yum的教程

    服务器的CentOS 7中自带的python版本是python-2.7.5,需要再安装一个python-3.8.1 一.查看版本 安装前查看一下是否已经安装过python,我这里自带了python2. ...

最新文章

  1. excel按季度分类汇总_Excel数据透视不会,分类汇总来帮忙,强的不是一点,学会它,错不了...
  2. HDOJ 1465 不容易系列之一 【错排公式 递推】
  3. 花了一天精选了20多篇好文,只为与你分享
  4. windows7 + vs2008 + oracle + iis7 客户端配置成功
  5. 把一个dataset的表放在另一个dataset里面_现在开始:用你的Mac训练和部署一个图像分类模型...
  6. camera---(3)双camera 生态链
  7. 腾讯视频发布互动视频技术标准 爱奇艺、B站等均已布局
  8. 【WPF】自定义GridLineDecorator给ListView画网格
  9. 双路CPU笔记本计算机,什么是双路cpu cpu双路什么意思 - 云骑士一键重装系统
  10. 腐蚀rust图纸怎么找_rust腐蚀建家图纸 | 手游网游页游攻略大全
  11. 蒲公英下载专用协议头ipa
  12. Java盲文数据库_汉语盲文首个“数据库”开建
  13. 《墨菲定律》读书笔记(下)
  14. C语言输出转置矩阵解题步骤,C语言实现矩阵转置
  15. win10 桌面(Windows 资源管理器)卡死的根本解决办法
  16. 盛元广通医院实验室设备预约管理系统
  17. excel单元格设置自动换行后导出显示不全原因
  18. matlab-行相加、列相加
  19. Scancode到Keycode的映射
  20. 苹果开发者平台-《测试证书》生成流程

热门文章

  1. 云里黑白第十回——win11、重装或者迁移系统到11代CPU你需要关注RAID IRST驱动
  2. 一文搞懂AVB的使用
  3. 亿赛通电子文档安全管理系统dataimport远程命令执行漏洞
  4. 表格的编辑插件 editable.js
  5. DataGridView和GridView控件的区别是
  6. Win2008nbsp;64位下.Net访问MDAC…
  7. Ti的C28x系列的DSP(28069)使用经验,I2C与EEPROM(AT24C256C)
  8. 【MP4格式转换成MP3教程】
  9. 开博尔智能android播放器C3,开博尔C3第9代不能进桌面的刷机方法
  10. 尤雨溪自述:打造Vue 3背后的故事