Python爬虫的Selenium(学习于b站尚硅谷)

这篇具有很好参考价值的文章主要介绍了Python爬虫的Selenium(学习于b站尚硅谷)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


  说明:该文章是学习 尚硅谷在B站上分享的视频 Python爬虫教程小白零基础速通p51-104而记录的笔记,笔记来源于本人,关于python基础可以去CSDN上阅读本人学习黑马程序员的笔记。 若有侵权,请联系本人删除。笔记难免可能出现错误或笔误,若读者发现笔记有错误,欢迎在评论里批评指正。 请合法合理使用爬虫,不爬取任何涉密以及涉及隐私的内容,合理控制请求次数,爬取的内容未经授权请不要用于商用,保护自己,免受牢狱之灾。
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
  在学习urllib、解析的时候,我们都是模拟浏览器向服务器发送请求,这样做,数据或多或少有一些数据缺失甚至是无法获取数据,这是由于“模拟浏览器”的行为导致的,会有各种反爬手段判断收到的请求是否是爬虫程序,此时就要引入Selenium,进而驱动真实的浏览器。当然,Selenium存在速度有点慢,效率不够高的问题,当然这也是能解决的,故引入Phantomjs。
  还有一点需要说明,跟着b站视频学习到最后,发现好几个程序在使用selenium操控浏览器时,最后并没有关闭浏览器,大家在学习时可以加上下面的一句代码。
# 关闭浏览器
browser.quit()

一、Selenium

  1.为什么要学习Selenium

  (1)什么是Selenium

Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome

  (2)为什么使用selenium?

  模拟浏览器功能,自动执行网页中的js代码,实现动态加载。

  (3)代码演示

  本次将要演示urllib获取京东的网页源码,从而说明使用的urllib获取京东的网页源码会缺失秒杀的一些数据,进而引入下一节将要使用的selenium。
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
  在PyCharm中创建文件夹“爬虫的Selenium”,创建文件“076_为什么要学习selenium.py”。
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
  使用的urllib获取京东的网页源码,搜索秒杀中的数据,发现确实是少了秒杀的内容。因此,下一节将学习并说明selenium能驱动真实浏览器去获取数据,不会缺少内容。

"""
为什么要学习selenium
- 使用urllib爬取爬取京东的网页源码
- 发现京东能检测到该请求是否来源于真实的浏览器
"""
import urllib.request

# 请求地址
url = 'https://www.jd.com/'
# 请求头
headers = {
    'User-Agent': 'ozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Tri-dent/4.0; Hot Lingo 2.0)'
}
# 请求对象定制
request = urllib.request.Request(url=url, headers=headers)
# 模拟浏览器向服务器发送请求
response = urllib.request.urlopen(request)
# 读取网页源码
content = response.read().decode('UTF-8')
# 打印
print(content)

Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chromePython爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome

  2. selenium的基本使用

  (1)如何安装selenium

Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
  安装具体步骤如下:①准备需要的浏览器驱动,本人使用的是Edge浏览器,故需要准备和浏览器相同版本的驱动,具体为:先查看浏览器的版本号,再去“https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/”中下载一个版本号相同的浏览器驱动。然后对下载的文件进行解压,再将其中的exe文件复制到文件夹“爬虫的Selenium”中。
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chromePython爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chromePython爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chromePython爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chromePython爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chromePython爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chromePython爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chromePython爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chromePython爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
  ②安装第三方包selenium,具体为:打开命令提示符,将当前目录切换到文件夹Scripts中,使用安装指令“pip install selenium==3.141.0 -i https://pypi.mirrors.ustc.edu.cn/simple/”后等待一会儿即可安装完成(注意:此处下载selenium时请指定老版本,即3.141.0,不然后续操作可能会出现问题)。
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chromePython爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chromePython爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome

  (2)selenium的使用步骤

Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome

  (3)代码的演示(含初次运行时报错的解决办法、selenium获取网页源码的代码)

  尴尬,之前创的文件“076_为什么要学习selenium.py”的编号写错了,应在PyCharm中选中该文件后,使用重命名快捷键Shift+F6,然后改为“077_为什么要学习selenium.py”。
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
  创建文件“078_selenium的基本使用.py”。
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
  如下编写代码,运行后报错。查询半天后找到一个链接:Python中无法使用Selenium,显示ValueError: Timeout value connect was ……, but it must be an int, float or None,发现这是由于selenium版本和urllib3版本不兼容导致的。

"""
selenium的基本使用
"""
# (1)导入selenium
from selenium import webdriver

# (2)创建浏览器操作对象
path = "msedgedriver.exe"  # 驱动文件的路径 
browser = webdriver.Edge(path)  # 创建浏览器
# (3)访问网站
# 访问地址
url = 'https://www.baidu.com'
# 浏览器打开网址
browser.get(url)

Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
  然后,如下图,去修改urllib3的版本为1.26.2,再次运行就好使了。
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chromePython爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
  等待一会,安装完成。
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
  之后,就可以正常运行程序了。
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
  如下继续编写代码,发现selenium获取的京东的网页源码就有秒杀的数据。可见,由于selenium是直接驱动真实浏览器的,不会导致数据的损失。(注:如果还没有获取到秒杀数据,需要加点延时,即代码中的“time.sleep(3)”,然后在网页打开时且在延时时间内滑动浏览器将京东的秒杀数据加载出来)

"""
selenium的基本使用
"""
# (1)导入selenium
from selenium import webdriver
import time

# (2)创建浏览器操作对象
path = "msedgedriver.exe"  # 驱动文件的路径 
browser = webdriver.Edge(path)  # 创建浏览器
# (3)访问网站
# # 访问地址
# url = 'https://www.baidu.com'
# # 浏览器打开网址
# browser.get(url)

# 将网址改成京东
url = 'https://www.jd.com/'
# 浏览器打开网址
browser.get(url)
# 延时加载一会儿网页,以便获取完整的网页源码
time.sleep(3)

# (4)获取网页源码     browser.page_source
content = browser.page_source
# 打印
print(content)

Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome

  3.selenium的元素定位

  (1)引

  如下图所示,如果我们需要使用程序在百度(“https://www.baidu.com/”)中输入“周杰伦”,然后点击“百度一下”,会跳到一个新的页面。其中,使用程序找到“百度一下”的过程称为元素定位。
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome

  (2)元素定位的定义与方法

Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
  其实,上面的方法可以改成只记方法find_element/find_elements,这两个方法的语法相同,只是是寻找一个元素还是所有元素的差别,具体使用方法如下:

# 元素定位
# 根据id找到"百度一下"
button = browser.find_element(by='id', value='su')
print(button)

# 根据name找到搜索框
button = browser.find_element(by='name', value='wd')
print(button)

# 根据xpath路径寻找“百度一下”
button = browser.find_element(by='xpath', val-ue='/html/body/div[1]/div[1]/div[5]/div/div/form/span[2]/input')
print(button)

# 根据标签名字获取对象
button = browser.find_elements(by='tag name', value='input')
print(button)

# 使用bs4的语法来获取对象
button = browser.find_elements(by="css selector", value='#su')
print(button)

# 寻找链接文本(对应html的a标签)
button = browser.find_element(by='link text', value='地图')
print(button)

  (3)代码演示

  创建文件“079_selenium的元素定位.py”。
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
  如下编程,熟悉使用元素定位的方法,具体根据id、name等属性、xpath路径、bs4路径、标签名字、链接名字来寻找元素对象。
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chromePython爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chromePython爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome

"""
selenium的元素定位的演示
"""
from selenium import webdriver

# 浏览器驱动的路径
path = 'msedgedriver.exe'
# 创建浏览器对象
browser = webdriver.Edge(path)
# 百度的地址
url = 'https://www.baidu.com/'
# 访问地址
browser.get(url)

# 元素定位
# 根据id找到"百度一下"
button = browser.find_element(by='id', value='su')
print(button)

# 根据name找到搜索框
button = browser.find_element(by='name', value='wd')
print(button)

# 根据xpath路径寻找“百度一下”
button = browser.find_element(by='xpath', val-ue='/html/body/div[1]/div[1]/div[5]/div/div/form/span[2]/input')
print(button)

# 根据标签名字获取对象
button = browser.find_elements(by='tag name', value='input')
print(button)

# 使用bs4的语法来获取对象
button = browser.find_elements(by="css selector", value='#su')
print(button)

# 寻找链接文本(对应html的a标签)
button = browser.find_element(by='link text', value='地图')
print(button)

Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome

  4.selenium的元素信息

  (1)访问元素信息

获取元素属性
  .get_attribute(‘class’)
获取元素文本
  text
获取标签名
  tag_name

  (2)代码演示

  如下图所示,本次想要获取元素“百度一下”对应的属性class的值、标签名、和“新闻”的元素文本。
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chromePython爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
  创建文件“080_selenium的元素信息.py”。
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
  如下编程,熟悉元素信息的语法。

"""
selenium的元素信息
"""
from selenium import webdriver

path = 'msedgedriver.exe'  # 浏览器驱动的路径
browser = webdriver.Edge(path)  # 创建浏览器驱动
url = 'https://www.baidu.com/'  # 访问地址
browser.get(url)  # 浏览器驱动打开地址

# 根据id找到“百度一下”
input = browser.find_element(by='id', value='su')

# 获取标签的属性
result = input.get_attribute('class')
print(result)
# 获取标签的名字
result = input.tag_name
print(result)

# 根据元素文本获取相应的链接
input = browser.find_element(by='link text', value='新闻')
# 获取元素文本
result = input.text
print(result)

Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome

  5.selenium的交互

  (1)交互

点击:click()
输入:send_keys()
后退操作:browser.back()
前进操作:browser.forword()
模拟JS滚动:
  js=‘document.documentElement.scrollTop=100000’
  browser.execute_script(js) 执行js代a码
获取网页代码:page_source
退出:browser.quit()

  (2)代码演示

  如下图,本次需要通过程序使浏览器使用百度搜索“周杰伦”,然后点到第2页,再使用一下后退、前进操作,然后再滚动到页末。
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
  创建文件“081_selenium的交互.py”。
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
  在编程时,需要知道百度搜索框的id为“kw”,“百度一下”的id为“su”,搜索后元素“下一页”含有class=“n”,当然,其他标签可能具有相同class的属性值,故可以打开xpath插件进行验证,然后在PyCharm中使用xpath路径定位到该元素。
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chromePython爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chromePython爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chromePython爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
  如下完成编程并运行。

"""
selenium的交互
"""
import time

from selenium import webdriver

# 创建浏览器对象
path = 'msedgedriver.exe'
browser = webdriver.Edge(path)

# 访问地址
url = 'https://www.baidu.com/'
# 打开地址
browser.get(url)
# 睡眠2s
time.sleep(2)

# 获取文本框对象
input = browser.find_element(by='id', value='kw')
# 在文本框中输入“周杰伦”
input.send_keys('周杰伦')
# 睡眠2s
time.sleep(2)

# 获取“百度一下”的按钮
button = browser.find_element(by='id', value='su')
# 点击“百度一下”的按钮
button.click()
# 睡眠2s
time.sleep(2)

# 滑倒底部
js_bottom = 'document.documentElement.scrollTop=100000'  # 距离顶部的距离为100,000
browser.execute_script(js_bottom)  # 执行操作
# 睡眠2s
time.sleep(2)

# 获取下一页的按钮
next = browser.find_element(by='xpath', value='//a[@class="n"]')
# 点击下一页
next.click()
# 睡眠2s
time.sleep(2)

# 回退到上一页
browser.back()
# 睡眠2s
time.sleep(2)

# 前进
browser.forward()
# 睡眠2s
time.sleep(2)

# 退出浏览器
browser.quit()

Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome

二、Phantomjs

  1. Phantomjs的基本使用

  在前面的学习中,发现Selenium,每次执行过程中都需打开浏览器、关闭浏览器、中间还有一堆操作,这是因为它有页面,而页面里面会有js、css等等很多文件,因此打开页面会导致代码的性能很慢。因此提出Phantomjs、Chrome handless,目前Phantomjs已逐渐淘汰。

  (1)什么是Phantomjs

(1)是一个无界面的浏览器
(2)支持页面元素查找,js的执行等
(3)由于不进行css和gui渲染,运行效率要比真实的浏览器要快很多

  (2)如何使用Phantomjs

(1)获取Phantomjs.exe文件路径path
(2)browser= webdriver.PhantomJs(path)
(3)browser.get(url)
扩展:保存屏幕快照:browser.save_screenshot(‘baidu.png’)

  具体步骤:①到网站中“https://phantomjs.org/download.html”下载文件“phantomjs.exe”。然后将该文件进行解压,再复制其中的文件“phantomjs.exe”,到文件夹“爬虫的Selenium”中进行粘贴。
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chromePython爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chromePython爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
  ②然后就可以到PyCharm中去编写使用Phantomjs的代码了。

  (3)代码演示

  创建文件“082_phantomjs的基本使用.py”。
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
  创建文件夹“082_phantomjs的基本使用”。
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
  如下编程并运行。只是有红字警告,告诉我们Phantomjs已经停更。

"""
phantomjs的基本使用
"""
from selenium import webdriver
import time

path = 'phantomjs.exe'
browser = webdriver.PhantomJS(path)
url = 'https://www.baidu.com'
browser.get(url)

# 拍张快照
browser.save_screenshot('./082_phantomjs的基本使用/baidu.png')
# 睡眠2s
time.sleep(1)

input = browser.find_element(by='id', value='kw')
input.send_keys('昆凌')

time.sleep(1)
browser.save_screenshot('./082_phantomjs的基本使用/kunling.png')

Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome

三、Headless

  1. Headless的基本使用

  (1)什么是Headless

  如下图,Edge也有 Headless,且与Chrome类似。
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
  经过半天的尝试与搜索,终于发现Edge的无头浏览器的正确使用方法(“https://huaweicloud.csdn.net/63808b3ddacf622b8df8a37e.html”)。首先,需要如下图所示,将selenium的版本更新到4.3.0及以上(本人安装的4.3.0),3开头的版本是不支持无头的Edge浏览器的。它的配置与Chrome也不一样。需要说明的是,本节关于Chrome的截图使用的selenium版本为3.141.0。
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome

  (2)配置

  下图是无头的Chrome浏览器的配置,在使用时,将它复制到程序中,然后根据实际安装的Chrome浏览器的位置填写路径。之后再根据selenium的语法完成相应的功能。
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
  Edge的配置与Chrome不一样,具体如下(不过使用方法相同):

from selenium import webdriver  # 导入selenium库
from selenium.webdriver.edge.options import Options  # 导入浏览器设置相关的类

# 无可视化界面设置
edge_options = Options()
# 使用无头模式
edge_options.add_argument('--headless')
# 禁用GPU,防止无头模式出现莫名的BUG
edge_options.add_argument('--disable-gpu')
# 将参数传给浏览器
browser = webdriver.Edge(options=edge_options)

  (3)代码的演示

  创建文件“083_无头浏览器的使用.py”。
Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
  如下编写代码,学会无头浏览器的使用。

"""
无头浏览器的使用
"""
from selenium import webdriver  # 导入selenium库
from selenium.webdriver.edge.options import Options  # 导入浏览器设置相关的类


# 封装的headless
def share_browser():
    # 无可视化界面设置
    edge_options = Options()
    # 使用无头模式
    edge_options.add_argument('--headless')
    # 禁用GPU,防止无头模式出现莫名的BUG
    edge_options.add_argument('--disable-gpu')
    # 将参数传给浏览器
    browser = webdriver.Edge(options=edge_options)
    return browser


browser = share_browser()
# 启动浏览器
url = "https://baidu.com"
browser.get(url)
browser.save_screenshot('baidu.png')

# 关闭浏览器
browser.quit()

Python爬虫的Selenium(学习于b站尚硅谷),未分类,python,爬虫,selenium,edge浏览器,chrome
  好了,本章的笔记到此结束,谢谢大家阅读。文章来源地址https://www.toymoban.com/news/detail-646399.html

到了这里,关于Python爬虫的Selenium(学习于b站尚硅谷)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python爬虫学习笔记(七)————Selenium

    目录 1.什么是selenium? 2.为什么使用selenium? 3.selenium安装 4.selenium的使用步骤 5.selenium的元素定位 6.访问元素信息 7.交互 1.什么是selenium? (1)Selenium是一个用于Web应用程序测试的工具。 (2)Selenium 测试直接运行在浏览器中,就像真正的用户在操作一样。 (3)支持通过各种

    2024年02月16日
    浏览(37)
  • Python爬虫基础之Selenium详解_python selenium

    from selenium import webdriver from selenium.webdriver.common.by import By browser= webdriver.Chrome() url = ‘https://www.baidu.com’ browser.get(url) button = browser.find_element(By.ID, ‘su’) print(button) button = browser.find_element(By.NAME, ‘wd’) print(button) button = browser.find_element(By.XPATH, ‘//input[@id=“su”]’) print(button)

    2024年04月15日
    浏览(53)
  • python spider 爬虫 之 Selenium 系列 (-) Selenium

    京东的 seckill 秒杀 专区 用 urllib 是获取不到的 回顾一下urllib 爬虫 Selenium Selenium定义 Selenium是一个用于Web应用程序测试的工具 Selenium测试 直接 运行在浏览器中,就像真实的用户在操作一样 支持通过各种driver ( FireFoxDriver, InternetExplorerDriver、OperaDriver、ChromeDriver)驱动真实浏

    2024年02月16日
    浏览(38)
  • Python爬虫之用Selenium做爬虫

    我们在用python做爬虫的时候,除了直接用requests的架构,还有Scrapy、Selenium等方式可以使用,那么今天我们就来聊一聊使用Selenium如何实现爬虫。 Selenium是什么? Selenium是一个浏览器自动化测试框架,是一款用于Web应用程序测试的工具。框架底层使用JavaScript模拟真实用户对浏览

    2024年02月13日
    浏览(39)
  • 从零开始学习Python控制开源Selenium库自动化浏览器操作,实现爬虫,自动化测试等功能(一)

    介绍Selenium : Selenium是一个用于自动化浏览器操作的开源工具和库。它最初是为Web应用测试而创建的,但随着时间的推移,它被广泛用于Web数据抓取和网页自动化操作。Selenium 支持多种编程语言,包括Python,Java,C#等。 这里我们主要实现采用Python的方式 Selenium 的主要特点和

    2024年01月22日
    浏览(77)
  • python 配置 selenium爬虫

    这两天学习Python爬虫,记录一下这个折磨我一两个小时的配置。 值得注意的是,下载的chromedriver.exe文件必须放在和运行的.py文件同一目录下,否则就会报错: selenium.common.exceptions.WebDriverException: Message: ‘chromedriver’ executable needs to be in PATH. Please see https://chromedriver.chromium.or

    2024年02月03日
    浏览(40)
  • python爬虫-Selenium

    Selenium是一个用于Web应用程序测试的工具,Selenium 测试直接运行在浏览器中,就像真正的用户在操作一样。模拟浏览器功能,自动执行网页中的js代码,实现动态加载。 打开谷歌浏览器--右上角三个点--帮助--关于 下载地址:http://chromedriver.storage.googleapis.com/index.html 找到对应浏

    2024年02月09日
    浏览(39)
  • python爬虫——selenium

    目录 一、背景​编辑 1.1、selenium的发展 1.2、在爬虫中的应用 1.3selenium执行原理图 1.4、WebDriver,与WebElement 二、准备​编辑 2.1、下载驱动 2.2、安装Selenium库 2.3、简单使用 三、实用操作​编辑 3.1、查找节点 3.1.1、查找元素在网页中的位置(网址为www.baidu.com,代码中的注释很详

    2024年02月09日
    浏览(40)
  • python爬虫(selenium)

    目录 准备 体验示例 创建浏览器驱动对象 访问页面 查找节点 节点交互 切换Frame 延时等待 前进和后退 Cookies 选项卡管理 准备 (1)浏览器驱动 :http://chromedriver.storage.googleapis.com/index.html (2)selenium第三方库 :pip install selenium 注意: 浏览器驱动需要根据自身浏览器版本去下

    2024年02月03日
    浏览(42)
  • python selenium 爬虫教程

    Python和Selenium是很强大的爬虫工具,可以用于自动化地模拟浏览器行为,从网页中提取数据。下面是一个简单的使用Python和Selenium进行爬虫的案例。 1. 安装和配置: 首先,你需要安装Python和Selenium。可以使用pip命令来安装Selenium库: pip install selenium 。 然后,你还需要下载对应

    2024年02月09日
    浏览(86)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包