首页
学习
活动
专区
圈层
工具
发布

python3 爬虫第二步Selenium 使用简单的方式抓取复杂的页面信息

正式开始 首先在代码中引入 selenium from selenium import webdriver 可能有些读者没有把驱动配置到环境中,接下来我们可以指定驱动的位置: driver = webdriver.Chrome...代码如下: from selenium import webdriver driver = webdriver.Chrome(executable_path=r'F:\python\dr\chromedriver_win32...在html中,大部分有特殊作用的元素会赋予一个id,搜索时需要填写的是百度搜索关键字的文本框,将鼠标移动到文本框,对准文本框点击鼠标右键,点击检查可以查看元素。 ?...在源代码中右键,选择Copy之后点击Copy XPath,这时我们就把当前这个元素的XPath获取了。 ?...(2) 以上代码中: from selenium import webdriver import time #请求网页 driver = webdriver.Chrome(executable_path

2.7K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    「Python爬虫系列讲解」十一、基于登录分析的 Selenium 微博爬虫

    1.2 打开 Chrome 浏览器 调用 driver = webdriver.Chrome() 定义的 Chrome 浏览器驱动,然后通过 driver.get(ur) 函数在浏览器中打开目标页面网址...3 爬取微博热门信息 下面将讲解如何利用 Python 爬取微博某个主题的数据。 3.1 搜索所需的微博主题 在登陆微博之后,页面顶端会出现一个微博搜索框,用于关键字的微博搜索。...,即访问 “微博搜索” 页面(网址为:https://s.weibo.com/) ,定位搜索文本框的 HTML 源码如下: ?...) 微博搜索部分完整代码如下: import time import os from selenium import webdriver from selenium.webdriver.common.keys...4 本文小结 在使用 Python 设计网络爬虫的过程中,往往会遇到需要登录验证才能爬取数据的情况,甚至有的还需要输入验证码,比如微博、知乎、邮箱、QQ空间等。

    3.3K41

    Python无头爬虫Selenium系列(01):像手工一样操作浏览器

    搜索并采集结果的标题 需求如下: 打开百度搜索主页 在输入框输入搜索内容(比如"爬虫") 点击"百度一下"按钮,进行搜索 把结果页面中的第一页的各个结果的主标题抓取下来 Selenium 的麻烦之处 本系列始终围绕一点开展...他有如下优点: selenium 库已经开发很久,相对来说比较稳定 selenium 在各个语言的库都是有 google 开发维护,因此不会出有些问题只在 Python 版本出现 selenium 相比...首先,使用 pip 安装 selenium !pip install selenium 你可以在 jupyter notebook 的 cell 中执行 "!...pip install selenium" 也可以在 cmd 中执行 "pip install selenium" ---- 由于我本机安装了 Google Chrome 浏览器,打开浏览器,看看浏览器的版本...),看看定位到的标签: 每个搜索结果,都是一个 div标签(上图右区下方红框) 而所有的搜索结果的 div,都被包在一个 id='content_left' 的 div 标签里面(上图右区上方红框)

    2.8K20

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

    ---- Selenium是一款用于测试Web应用程序的经典工具,它直接运行在浏览器中,仿佛真正的用户在操作浏览器一样,主要用于网站自动化测试、网站模拟登陆、自动操作键盘和鼠标、测试浏览器兼容性、测试网站功能等...同时,作者更推荐大家使用pip工具来安装Selenium库,PyPI官方也推荐使用pip管理器来下载第三方库。Python3.6标准库中自带pip,Python2.x需要自己单独安装。...“kw”,所以定位其节点代码为: driver.find_element_by_id(“kw”) elem.send_keys(“数据分析”)send_keys()方法可以用来模拟键盘操作,相当于是在搜索框中输入...1.键盘操作 在Selenium提供的Webdriver库中,其子类Keys提供了所有键盘按键操作,比如回车键、Tab键、空格键,同时也包括一些常见的组合按键操作,如Ctrl+A(全选)、Ctrl+C(...同样可以自动搜索作者“Eastmount”的信息,哈哈~ ---- 2.鼠标操作 Selenium操作鼠标技术也常用于自动化测试中,它位于ActionChains类中,最常用的是click()函数,该函数表示单击鼠标左键操作

    6.4K10

    自动化测试中对Alert, 多窗口,下拉框的处理

    1 python与selenium的API交互 1.1 alert selenium的API提供了对alert弹出框的处理方式,可以对alert弹出框来进行处理的,如弹出框,我们获取弹出框的Text...() Send_keys(value) 模拟输入 alert.send_keys(value) text text是获取alert弹出框的文本,在百度搜索设置中,设置成功后,点击"搜索设置"...') sleep(3) driver.quit() select_by_visible_text(text) select_by_visible_text(text)在选择下拉框中,是依据text...语言') sleep(3) driver.quit() 在百度搜索设置的页面中,搜索结果显示条数,可以在下拉框选择对应的数据,见百度的案例效果图; ?...(u'50') driver.quit() 4.3浏览器多窗口的处理 在web测试中,特别是在注册页面,或者点击XX链接,还会弹出一些子窗口,在手工测试中,可以很轻松的实现在多个窗口之间进行切换操作,

    3.7K40

    Python无头爬虫Selenium系列(01):像手工一样操作浏览器

    搜索并采集结果的标题 需求如下: 打开百度搜索主页 在输入框输入搜索内容(比如"爬虫") 点击"百度一下"按钮,进行搜索 把结果页面中的第一页的各个结果的主标题抓取下来 Selenium 的麻烦之处 本系列始终围绕一点开展...他有如下优点: selenium 库已经开发很久,相对来说比较稳定 selenium 在各个语言的库都是有 google 开发维护,因此不会出有些问题只在 Python 版本出现 selenium 相比...首先,使用 pip 安装 selenium !pip install selenium 你可以在 jupyter notebook 的 cell 中执行 "!...pip install selenium" 也可以在 cmd 中执行 "pip install selenium" ---- 由于我本机安装了 Google Chrome 浏览器,打开浏览器,看看浏览器的版本...),看看定位到的标签: 每个搜索结果,都是一个 div标签(上图右区下方红框) 而所有的搜索结果的 div,都被包在一个 id='content_left' 的 div 标签里面(上图右区上方红框)

    4.3K30

    🔥《手把手教你》系列基础篇之3-python+ selenium自动化测试-驱动浏览器和元素定位大法(详细)

    窗口尺寸设置 在测试过程中,我们可能会要求打开浏览器的窗口处于最大化或者设置为某一特定尺寸的大小,所以我们使用selenium驱动浏览器时设定窗口大小 # coding=utf-8 # 1.先设置编码...通过 name 定位输入框: find_element_by_name("wd") find_element_by_name()方法用于元素中 name 属性的定位,百度搜索按钮并没有提供 name 属性...不过,需要强调的是Python 对于中文的支持并不好,如查 Python 在执行中文的地方出现在乱码,可以在中文件字符串的前面加个小“u”可以有效的避免乱码的问题,加 u 的作用是把中文字 符串转换中...# 3.导入模块 import time from selenium import webdriver from selenium.webdriver.common.by import By driver...小结   好了,今天python+ selenium-驱动浏览器和元素定位大法就分享到这里。

    1.2K40

    VS Code + Python + Selenium 自动化测试基础-01

    牛刀小试 1.目标:利用Python + Selenium 开启Google首页 from selenium import webdriver # 使用 Chrome 的 WebDriver browser...目标:利用前一个示例,在 Google 输入框中输入“phone”,然后单击搜索 from selenium import webdriver from selenium.common.exceptions...") # 寻找网页中的搜索框 inputElement = browser.find_element_by_name("q") # 在搜索框中輸入文字 inputElement.send_keys(...开常用的web DriverAPI-定位元素 WebDriver提供了几种元素的定位方式,在Python中对应的方式如下 id定位:find_element_by_id() HTML规定,在HTML文件中...,主要的原因是HTML文档中,存在大量的相同标签browser.find_element_by_tag_name (“input”) 链接文本定位:find_element_by_link_text()

    93310

    Python爬虫(二十一)_Selenium与PhantomJS

    本章将介绍使用Selenium和PhantomJS两种工具用来加载动态数据,更多内容请参考:Python学习指南 Selenium Selenium是一个Web的自动化测试工具,最初是为网站自动化测试而开发的...Selenium自己不带浏览器,不支持浏览器的功能,它需要与第三方浏览器结合在一起才能使用。但是我们有时候需要让它内嵌在代码中运行,所有我们而已用一个叫PhantomJS的工具代替真实的浏览器。...div> 实现 element = driver.find_element_by_id("coolesWidgetEvah") ---------or------- from selenium.webdriver.common.by...直接点击下拉框中的选项不一定可行。...注意: index索引从0开始 value是option标签的一个属性值,并不是显示在下拉框中的值 visible_text实在option标签文本的值,是显示在下拉框的值 全部取消选择怎么办呢?

    3.2K101

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

    专栏地址:Python网络数据爬取及分析「从入门到精通」 更多爬虫实例详见专栏:Python爬虫牛刀小试 Selenium 是一款用于测试 Web 应用程序的经典工具,它直接运行在浏览器中,仿佛真正的用户在操作浏览器一样...Python 语言提供了 Selenium 扩展库,它是使用 Selenium WebDriver(网页驱动)来编写功能、验证测试的一个 API 接口。...通过 Selenium Python API,用户可以以一种直观的方式来访问 Selenium WebDriver 的所有功能。...类似于前几期文章讲到的 BeautifulSoup 技术,Selenium 制作的爬虫也是先分析网页的 HTML 源码和 DOM 树结构,在通过其所提供的方法定位到所需信息的节点位置,并获取其文本内容。...Selenium Python 也提供了类似的方法来跟踪网页中的元素。 XPath 路径定位元素方法不同于按照 id 或 name 属性的定位方法,前者更加的灵活、方便。

    9.5K20

    Selenium与PhantomJS

    但是我们有时候需要让它内嵌在代码中运行,所以我们可以用一个叫 PhantomJS 的工具代替真实的浏览器。...可以从 PyPI 网站下载 Selenium库https://pypi.python.org/simple/selenium ,也可以用 第三方管理器 pip用命令安装:pip install selenium...因为 PhantomJS 是一个功能完善(虽然无界面)的浏览器而非一个 Python 库,所以它不需要像 Python 的其他库一样安装,但我们可以通过Selenium调用PhantomJS来直接使用。...driver.find_element_by_xpath('elementE') ActionChains(driver).drag_and_drop(ac1, ac2).perform() 7.填充表单 我们已经知道了怎样向文本框中输入文字...注意: index 索引从 0 开始 value是option标签的一个属性值,并不是显示在下拉框中的值 visible_text是在option标签文本的值,是显示在下拉框的值 全部取消选择怎么办呢

    4.4K30

    Python 基于 selenium 实现不同商城的商品价格差异分析系统

    本文将使用 selenium 自动模拟用户的搜索行为,获取不同商城上同类型商品的价格信息,最终生成商品在不同商城上的价格差对比表。...程序运行时,提示使用者输入需要搜索的商品关键字。 本程序仅为探研 selenium 的奇妙之处,感受其王者风范,没有在程序结构和界面上费心力。...使用 selenium 在首页的文本搜索框中自动输入商品关键字,然后自动触发搜索按钮的点击事件,进入商品列表页面。 使用 selenium 分析、爬取不同商城中商品列表页面中的商品名称和价格数据。...安装: selenium 是 python 第三库,使用前要安装,安装细节就没必要在此多费笔墨。...打开京东首页后,先定位定位文本搜索框和搜索按钮。

    2.2K20

    《手把手教你》系列基础篇之3-python+ selenium自动化测试-驱动浏览器和元素定位大法

    窗口尺寸设置 在测试过程中,我们可能会要求打开浏览器的窗口处于最大化或者设置为某一特定尺寸的大小,所以我们使用selenium驱动浏览器时设定窗口大小 # coding=utf-8 # 1.先设置编码...通过 name 定位输入框: find_element_by_name("wd") find_element_by_name()方法用于元素中 name 属性的定位,百度搜索按钮并没有提供 name 属性...不过,需要强调的是Python 对于中文的支持并不好,如查 Python 在执行中文的地方出现在乱码,可以在中文件字符串的前面加个小“u”可以有效的避免乱码的问题,加 u 的作用是把中文字 符串转换中...# 3.导入模块 import time from selenium import webdriver from selenium.webdriver.common.by import By driver...小结  好了,今天python+ selenium-驱动浏览器和元素定位大法就分享到这里。

    1.3K40

    【selenium应用实践】怎样实现自动监测百度收录站点链接数量

    用selenium实现自动监测百度收录站点链接数量,SEO优化效果追踪更轻松 安装依赖 创建浏览器实例 访问百度引擎并自动输入site:【域名】后自动点击搜索按钮 通过xpath获取收录数量字符串并用正则匹配出收录数量...可以精准监测收录数量 安装依赖 import json from selenium.webdriver.chrome.service import Service from selenium import...myChrome.find_element(By.ID, 'su') searchBtn.click() 通过xpath获取收录数量字符串并用正则匹配出收录数量 time.sleep(3) # 点击搜索按钮后要过一会再对页面文本进行解析...import Service from selenium import webdriver from selenium.webdriver.common.by import By import re...searchBtn = myChrome.find_element(By.ID, 'su') searchBtn.click() time.sleep(3) # 点击搜索按钮后要过一会再对页面文本进行解析

    62920

    彻底学会Selenium元素定位

    因此,本篇将详细介绍Selenium八大元素定位方法,以及在自动化测试框架中如何对元素定位方法进行二次封装,最后会给出一些在定位元素时的经验总结。...注意:本文出现的代码示例均以 Python3.10 + Selenium4.5.0 为准,由于网上大多数教程都是Selenium3,Selenium4相比于Selenium3会有一些新的语法,如果你还不了解...(By.XPATH, "/html/body/div[2]/div/div[2]/div[1]/form/input[1]").send_keys("阿迪达斯") # 点击搜索 driver.find_element...,不限制元素的位置 ,相对路径是以 // 开始, // 后面跟元素名称,不知元素名称时可以使用 * 号代替,在实际应用中推荐使用相对路径。...driver.maximize_window() # css_selector 不区分干儿子和亲儿子, # 若一个标签下有多个同级标签,虽然这些同级标签的tag name不一样,但是他们是放在一起排序的 # 打开百度,在搜索框中输入

    9.8K34

    使用Python和Selenium自动化爬取 #【端午特别征文】 探索技术极致,未来因你出“粽” # 的投稿文章

    介绍: 本文章将介绍如何使用Python的Selenium库和正则表达式对CSDN的活动文章进行爬取,并将爬取到的数据导出到Excel文件中。...import Keys # 用于模拟键盘操作的模块 re是Python内置的正则表达式模块,用于处理字符串匹配和搜索。...通过Selenium可以模拟用户在浏览器中的行为,例如打开网页、点击按钮、填写表单等。它支持多种浏览器,包括Chrome、Firefox、Safari等。...正则表达式:正则表达式是一种强大的文本处理工具,用于在字符串中匹配和提取特定模式的文本。它可以通过一些特殊字符和语法规则来描述字符串的模式,并进行匹配操作。...在爬虫中,正则表达式常用于从网页源代码中提取目标信息。 Pandas:Pandas是Python中常用的数据分析和数据处理库。

    75810
    领券