首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用查询selenium python获取不包含div的所有body元素

使用Selenium和Python进行查询时,可以使用XPath来定位不包含div的所有body元素。XPath是一种用于在XML文档中定位节点的语言,也可以用于HTML文档。

以下是使用Selenium和Python查询不包含div的所有body元素的代码示例:

代码语言:python
代码运行次数:0
复制
from selenium import webdriver

# 创建浏览器驱动
driver = webdriver.Chrome()

# 打开网页
driver.get("https://example.com")

# 使用XPath查询不包含div的所有body元素
body_elements = driver.find_elements_by_xpath("//body[not(div)]")

# 打印查询结果
for element in body_elements:
    print(element.get_attribute("outerHTML"))

# 关闭浏览器驱动
driver.quit()

在上述代码中,我们首先创建了一个Chrome浏览器驱动,然后打开了一个示例网页(https://example.com)。接下来,使用XPath查询所有不包含div的body元素,并将查询结果打印出来。最后,关闭浏览器驱动。

这种查询方法可以用于各种场景,例如需要获取不包含特定元素的所有父元素,或者需要排除某些元素进行进一步处理等。

腾讯云提供了云计算相关的产品,例如云服务器、云数据库、云存储等。您可以在腾讯云官方网站(https://cloud.tencent.com/)了解更多关于这些产品的详细信息和使用指南。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

利用python读取excel中公司名称获取公司经营范围并回填进excel中

我们可以从excel中把公司名称都读出来,然后让它自动去搜索获取公司经营范围,并批量回填到excel中 首先想到是利用selenium来模拟浏览器来进行查询,我们先pip install selenium...安装selenium模块 并安装谷歌浏览器对应版本chromedriver,下载地址chromedriver 把下载好chromedriver.exe文件放到python安装路径下或者scripts...”为搜索条件进行搜索 至于怎么获取到百度浏览器输入框和搜索按钮id,我们可以通过F12查看页面元素获取 也可以通过name属性获取,还可以通过xpath、class等等去获取,这里我就不一一讲述了...lxml模块和requests模块 获取到xpath=/html/body/div[2]/div/div[2]/div[5]/div[1]/div[1]/div[2]/div/div[1]/span...,整个过程就结束了,收工 代码比较简单随意,主要是一个思路,本人也是个初学者,python只是个闲时爱好,专业,有不对地方欢迎大佬们指正,共同进步

1.5K40

selenium学习笔记

Selenium支持多种编程语言,包括Java、C#、Python、Ruby、JavaScript等,并可以在多个浏览器和操作系统上运行测试。...个人简单理解 浏览器驱动可以操作浏览器,不用selenium也能实现代码控制浏览器效果,就是需要自己查询浏览器启动提供功能, selenium可以看成是浏览器驱动工具类,在项目中引入seleniu...clear():清除该元素内容。 getTagName():获取元素标签名称。 getAttribute(String name):获取元素指定属性值。...getLocation():获取元素在页面中位置。以Point对象表示,包含x和y坐标。 getSize():获取元素大小,以Dimension对象表示,包含width和height。...xpath直接粘贴到代码里即可 /html/body/div[2]/div[1]/div/div[1]/div/div/div[1]/div/form/div[2]/div/div[1]/div[1]/

18010
  • 爬虫学习(三)

    使用Chrome插件选择标签时候,选中时,选中标签会添加属性class="xh-highlight" 1.1.1查找某个特定节点或者包含某个指定节点 选取属于bookstore子元素第一个...html.xpath()获取是一个列表,查询里面的内容需要使用索引。 lxml可以自动修正html代码。...,但是这种无界面浏览器建议使用),可以接收指令,让浏览器自动加载页面,获取需要数据,甚至页面截屏等。...= driver.find_elements_by_xpath('/html/body/div[5]/div/div[5]/div[2]/ul/li/div[2]/h2/a') # 获取房屋租赁信息...)获取属性 8、使用selenium获取元素中定位方法 a:xpath/id/tag_name/link/select/等 9、常见反爬及对应解决方法 a:headers----构建user_agent

    5.7K30

    Python爬虫系列讲解」八、Selenium 技术

    本文主要介绍 Selenium Python API 技术,它以一种非常直观方式来访问 Selenium WebDriver 所有功能,包括定位元素、自动操作键盘鼠标、提交页面表单、抓取所需信息等。...Python 语言提供了 Selenium 扩展库,它是使用 Selenium WebDriver(网页驱动)来编写功能、验证测试一个 API 接口。...通过 Selenium Python API,用户可以以一种直观方式来访问 Selenium WebDriver 所有功能。... 如果需要获取 div 布局,则使用如下代码: import os from selenium import webdriver # 浏览驱动器路径 chromedriver... …… 上述 div 布局可以通过以下 3 中 XPath 方法定位: # 方法一:使用绝对路径定位,从HTML代码根节点开始定位元素

    7.1K20

    自动化-Selenium 3-元素定位(Python版)

    1、find_element使用给定方法定位和查找一个元素 2、find_elements使用给定方法定位和查找所有元素list 常用定位方式共八种: 1.当页面元素有id属性时,最好尽量用by_id...由于搜索到标签名通常不止一个,所以一般结合使用find_elements方法来使用。 例如打开百度首页,获取超链接地图文本信息。...2.一般推荐使用绝对路径写法,因为一旦页面结构发生变化,该路径也随之失效,必须重新写。 3.绝对路径以单/号表示,而下面要讲相对路径则以//表示,这个区别非常重要。...href, 'order')]") 这句话意思是寻找页面中href属性值包含有order这个单词所有a元素,由于这个“订餐”按钮href属性里肯定会包含order,所以这种方式是可行,也会经常用到...//*[@id='kw']") element.send_keys("Selenium") 最后,关于XPath这种定位方式,Selenium会将整个页面的所有元素进行扫描以定位我们所需要元素,所以这是一个非常费时操作

    7.4K10

    Selenium——控制你浏览器帮你爬虫

    问题:获取当前页好办,怎么获取接下来页面的内容? 带着这个思考,Selenium神器走入了我视线。 预备知识 Selenium简介 Selenium是什么?一句话,自动化测试工具。...绝对路径写法(只有一种),写法如下: 引用页面上form元素(即源码中第3行): 1/html/body/form[1] 注意: 元素xpath绝对路径可通过firebug直接查询。...下面是相对路径引用写法: 查找页面根元素:// 查找页面上所有的input元素://input 查找页面上第一个form元素直接子input元素(即只包括form元素下一级input元素使用绝对路径表示...,单/号)://form[1]/input 查找页面上第一个form元素所有子input元素(只要在form元素input都算,不管还嵌套了多少个其他标签,使用相对路径表示,双//号)://form...后面的路径必须按照源码层级依次往下写。按照代码,我们要找input元素包含在一个dt标签里面,而dt又包含在dl标签内,所以中间必须写上dl和dt两层,才到input这层。

    2.2K20

    九.网络爬虫之Selenium基础技术万字详解(定位元素、常用方法、鼠标操作)

    本文主要介绍Selenium Python API技术,它以一种非常直观方式来访问Selenium WebDriver所有功能,包括定位元素、自动操作键盘鼠标、提交页面表单、抓取所需信息等。...通过Selenium Python API,读者能够以一种直观方式来访问Selenium WebDriver所有功能。...C:\selenium\selenium3.4.3> python3 setup.py install PyPI全称是Python Package Index,是Python官方第三方库仓库,所有人都可以下载第三方库或上传自己开发库到...这也体现了XPath方法一个优点: 当没有一个合适ID或Name属性来定位所要查找元素时,你可以使用XPath去定位这个绝对元素(但作者建议定位绝对元素),或者定位一个有ID或Name属性相对元素位置...> 如果需要分别获取杜甫、李商隐、杜牧三个超链接,则使用如下代码。

    4.7K10

    Selenium

    ,它支持所有主流浏览器(包括PhantomJS这些无界面的浏览器,但是现在谷歌无头比较火,下面展示谷歌无头) Selenium 可以根据我们指令,让浏览器自动加载页面,获取需要数据,甚至页面截屏...Selenium 自己不带浏览器,不支持浏览器功能,它需要与第三方浏览器结合在一起才能使用,本质是python通过代码,借助于浏览器驱动,操作浏览器。...Selenium 官方参考文档:http://selenium-python.readthedocs.io/index.html 这里使用谷歌无头 对比无头浏览器优势这里就不再对比了,可以自行百度这些无头优劣...由pythontime包提供, 导入 time 包后就可以使用。 缺点:不智能,使用太多sleep会影响脚本运行速度。...登录cnblogs获取cookie ''' 先使用selenium 半自动登录到cnblogs,然后取出cookie存到本地,下次使用selenium 访问cnblogs只需加载之前cookie即可变成了登陆状态

    3.1K30

    Python3网络爬虫(九):使用Selenium爬取百度文库word文章

    绝对路径写法(只有一种),写法如下:     引用页面上form元素(即源码中第3行): /html/body/form[1]     注意: 元素xpath绝对路径可通过firebug直接查询。...一般推荐使用绝对路径写法,因为一旦页面结构发生变化,该路径也随之失效,必须重新写。 绝对路径以单/号表示,而下面要讲相对路径则以//表示,这个区别非常重要。...下面是相对路径引用写法: 查找页面根元素:// 查找页面上所有的input元素://input 查找页面上第一个form元素直接子input元素(即只包括form元素下一级input元素使用绝对路径表示...,单/号)://form[1]/input 查找页面上第一个form元素所有子input元素(只要在form元素input都算,不管还嵌套了多少个其他标签,使用相对路径表示,双//号)://form...后面的路径必须按照源码层级依次往下写。按照图(3)所示代码中,我们要找input元素包含在一个dt标签内,而dt又包含在dl标签内,所以中间必须写上dl和dt两层,才到input这层。

    3.4K61

    ​Java自动化测试 (元素定位 23)

    基础定位方式 id 根据id来获取元素,id唯一性 name 根据元素name熟悉来获取元素,会存在唯一情况 tagName 根据元素标签名来获取元素,一般建议使用 className 根据元素样式名来获取元素...,会存在唯一性,注意复合类名问题 linkText 根据超链接全部文本值来获取元素 partialLinkText 根据超链接部分文本值来获取元素(模糊匹配) 代码封装 之后例子都会使用到open...Xpath定位 Xpath定位有很多优势 没有id可以进行定位 需要定位多个符合要求元素 使用脚本断点调试定位是否正确是一个方法,当时在我实际工作中,元素定位代码封装较深,所以修改查询元素内容较麻烦...下面是使用方法: 元素定位 使用浏览器自带定位工具进行元素定位 ? 元素定位 初步获取Xpath ?...RESULTS xpath其实就是一个path(路径),根据元素路径进行定位 xpath绝对定位 从根开始找 /(根目录) /html/body/div/div[3]/a 缺点 一旦页面结构发生变化,

    1.1K30

    Selenium常见元素定位方法和操作学习介绍

    定位元素方法 官网地址:http://selenium-python.readthedocs.org/locating-elements.html 这里有各种策略用于定位网页中元素...操作元素方法 在讲述完定位对象(locate elements)之后我们需要对该已定位对象进行操作,通常所有的操作与页面交互都将通过WebElement接口,常见操作元素方法如下:...size 获取元素尺寸 text 获取元素文本 get_attribute(name) 获取属性值 location 获取元素坐标,先找到要获取元素,再调用该方法...is_enabled() 判断元素是否被使用 is_selected() 判断元素是否被选中 tag_name 返回元素tagName 举例代码如下:...鼠标操作 在现实自动化测试中关于鼠标的操作不仅仅是click()单击操作,还有很多包含在ActionChains类中操作。

    2.2K20

    爬虫之selenium

    目录 xpath选择器 二、css选择器 三、selenium模块使用 3.1elenium介绍 3.2模块使用 四、动作链 五、爬取京东商品信息 六、12306自动登录 七、cookie池 八、...* 获取所有祖先节点 # a=html.xpath('//a/ancestor::*') # # 获取祖先节点中div # a=html.xpath('//a/ancestor::div') # attribute...三、selenium模块使用 3.1elenium介绍 selenium最初是一个自动化测试工具,而爬虫中使用它主要是为了解决requests无法直接执行JavaScript代码问题 selenium...本质是通过驱动浏览器,完全模拟浏览器操作,比如跳转、输入、点击、下拉等,来拿到网页渲染之后结果,可支持多种浏览器 有了selenium能够实现可见即可爬 -使用(本质,并不是python在操作浏览器...元素控件) # 直接把上面的div移动到某个元素某个位置 # action.move_to_element_with_offset() #4 调用它,会动起来 action.perform() time.sleep

    1.8K20

    Python网络爬虫笔记(四):使用selenium获取动态加载内容

    (一)  说明 上一篇只能下载一页数据,第2、3、4....100页数据没法获取,在上一篇基础上修改了下,使用selenium获取所有href属性值。...selenium获取所有随笔href属性值,url只能传小类,例如https://www.cnblogs.com/cate/python/ 13 def selenium_links(url):...('//div[@id="cnblogs_post_body"]/p') # 获取正文内容 77 pre = tree.xpath('//pre') # 获取随笔代码部分(使用博客园自带插入代码功能插入...) 78 img = tree.xpath('//div[@id="cnblogs_post_body"]/p/img/@src') # 获取图片 79 # 修改工作目录...获取所有url 114 html = selenium_links('https://www.cnblogs.com/cate/ruby/') 115 #调用link_crawler下载所有网页 116

    3.1K60

    python 模拟移动

    滑动验证码破解大致流程为: 1 - 获取缺口图片与原图片 2 - 图像对比,得出缺口左上角坐标 3 - 构造轨迹算法 4 - 使用selenium模拟移动滑块 本篇主要针对模拟移动进行探讨。...使用工具:pythonselenium,chromedriver,chrom浏览器 操作步骤讲解环节 * * * 下面就是喜闻乐见操作步骤讲解环节了(´◔౪◔) 代码部分: from selenium...webdriver.Chrome() url = 'http://www.geetest.com/Register' wait = WebDriverWait(driver, 10, 0.5) driver.get(url) # 获取到指定元素...('12345678910') Code_Button.click() # 等待className为geetest_slider_button元素元素表中出现 slider = wait.until...,图像对比得出缺口左上角横坐标,然后使用轨迹移动算法,获取轨迹列表 2 - 使用selenium鼠标操作方法完成滑块拖动**

    83430

    彻底学会Selenium元素定位

    注意:本文出现代码示例均以 Python3.10 + Selenium4.5.0 为准,由于网上大多数教程都是Selenium3,Selenium4相比于Selenium3会有一些新语法,如果你还不了解...绝对路径 从最外层元素到指定元素之间所有经过元素层级路径 ,绝对路径是以/html根节点开始,使用 / 来分割元素层级语法,比如:/html/body/div[2]/div/div[2]/div[1...元素元素book元素) 由于绝对路径对页面结构要求比较严格,因此建议使用绝对路径。...xpath路径值(偷懒方法,推荐在学习时候使用): 通过元素属性定位 单个属性 使用目标元素任意一个属性和属性值(需保证唯一性)。...(By.CSS_SELECTOR, "[属性*='包含字母']") # 获取指定属性包含指定字母元素 标签选择器 语法: driver.find_element(By.CSS_SELECTOR,

    6.7K31

    Python模拟登陆万能法-微博|知乎

    本文讲的是登陆所有网站一种方法,并不局限于微博与知乎,仅用其作为例子来讲解。 用到库有“selenium”和“requests”。...Anaconda推荐大家也去下载一个,它里面包含了众多python库,用起来很方便,而且免费!...推荐使用谷歌浏览器来查找每个元素Xpath,参看这个:从Chrome获取XPATH路径。 2. 选择click函数还是submit函数。推荐每个都试一下,总会有一个成功。...仅用selenium打开一个浏览器,然后手动输入账号密码,有验证码就填验证码。等到成功登陆之后使用“get_cookies()”函数来调出它Cookies。...问题2:如何让新打开webdriver带有曾经保存过cookies? 解决方案:将获取cookies保存在本地。下次登陆时候直接导入本地cookies。

    6.2K42

    爬虫模拟移动

    实际上我们可以通过对比完整图片和缺口图片各个像素点RGB值,得出缺口位置左上角坐标,然后构造轨迹算法使用selenium模拟移动滑块即可。...滑动验证码破解大致流程为: 1 - 获取缺口图片与原图片 2 - 图像对比,得出缺口左上角坐标 3 - 构造轨迹算法 4 - 使用selenium模拟移动滑块 本篇主要针对模拟移动进行探讨。...使用工具:pythonselenium,chromedriver,chrom浏览器 操作步骤讲解环节 * * * 下面就是喜闻乐见操作步骤讲解环节了(´◔౪◔) 代码部分: from selenium...webdriver.Chrome() url = 'http://www.geetest.com/Register' wait = WebDriverWait(driver, 10, 0.5) driver.get(url) # 获取到指定元素...,图像对比得出缺口左上角横坐标,然后使用轨迹移动算法,获取轨迹列表 2 - 使用selenium鼠标操作方法完成滑块拖动**

    46820
    领券