网页视频抓取浏览器(selenium库可以控制浏览器行为吗?如何处理行为?)

优采云 发布时间: 2021-10-13 19:06

  网页视频抓取浏览器(selenium库可以控制浏览器行为吗?如何处理行为?)

  selenium 库可以控制浏览器行为。我们可以使用 selenium 库来抓取我们需要的网页上的所有信息。

  需要配合浏览器驱动使用,可以从selenium官网下载:

  注意:选择与您的浏览器兼容的驱动程序以使用

  详细的 selenium 教程不在这里介绍。本程序使用 Chrome 浏览器并使用以下功能:

  from selenium import webdriver

driver = webdriver.Chrome()#创建驱动实例

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

data = driver.page_source #获得网页源码

driver.add_cookie(cookie) #加入cookie

cookieData = driver.get_cookies() #获得当前网页cookie

currentUrl = driver.current_url #获得当前网页网址

driver.refresh() #刷新网页

driver.close() #关闭网页

button = driver.find_element_by_class_name("bilibili-player") #根据类名查找元素(按钮元素)

button.click() #点击这个按钮

  driver.get(Url):

  将使您的浏览器打开此网址

  driver.page_source():

  它可以返回网页源代码,包括html代码、javascript代码等,这也是我们选择使用selenium来抓取数据的原因。urlopen、requests等通用函数无法返回渲染出来的javascript代码,而seleniumn可以完美解决这个问题。

  driver.get_cookies():

  如果您需要浏览器记录登录信息以实现自动登录,我们需要启用它来保存cookie。我们可以使用此方法将 cookie 存储为字典以供下次调用。

  driver.add_cookie(cookie):

  可以给当前打开的页面添加cookies,一般和driver.refresh()配合使用。cookie 的效果只有在页面刷新后才会体现出来。

  driver.find***():

  Selenium 有很多 find 函数,可以通过不同的键值返回不同的对象。这里只使用了find_element_by_class_name,即根据类名查找对象。找到对象后(对象可能是按钮或文本框),我们可以对对象进行不同的操作,比如点击、填充数据等。这里我们使用click(),也就是点击这个对象。

  关于如何处理cookies,需要用到json库,下期会讲到。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线