当前位置:   article > 正文

selenium 获取最新页面源代码_猫眼网播热度爬虫(Selenium实现)图文教程

爬虫selenium点击以后更新源代码

实现目标

本案例通过图文详细介绍使用Selenium请求和解析网页方法,其目标实现的需求为:通过Selenium,获取猫眼中实时网播热度的数据,并打印到控制台中。

案例应用技巧:

  • Selenium

Selenium安装方法

通过pip安装selenium模块,安装命令:pip install selenium;

下载与Chrome浏览器版本配套的chromedriver可执行文件,下载地址:http://npm.taobao.org/mirrors/chromedriver。

实现过程

使用Selenium设计爬虫,不再解析Url并模拟真实请求;而是直接通过Selenium模拟浏览器操作,打开网页,解析数据即可。其具体实现流程如下:

首先,我们先用浏览器看一下我们的目标页面,对它有一个初步的认识。我们发现网页上的数据每3秒左右会自动刷新一次,这说明数据并不是存在于网页源代码中,而是通过Ajax加载的。

39137a618eed0fb0f682b3328c481a26.png

接着,使用Selenium启动浏览器(在测试时不建议使用无头模式),并使用该浏览器打开Url:http://piaofang.maoyan.com/dashboard/web-heat

from selenium import webdriverbrowser = webdriver.Chrome(executable_path=r"D:Python38_64chromedriver_81_0_4044_69.exe")  # ChromeDriver可执行文件的路径browser.get("http://piaofang.maoyan.com/dashboard/web-heat")

(大家在测试时可以使用IDLE或使用PyCharm的Python Console模式来测试,否则在代码运行完成后打开的浏览器也会被关掉)

011f6a684325f56e07fafbe0586d7c8d.png

使用Selenium控制的Chrome浏览器打开的页面

下面,我们开始解析网页中的数据。使用浏览器控制台先定位到各个电视剧/网络剧的

标签,然后再定位到这些标签内的排名、名称、信息(名称下的文字)、实时热度、实时播放量所在的标签,并将数据解析出来。

Selenium中常用定位方式如下:

933544945de91b77a0c13aff6582c5c7.png

Selenium常用标签定位方法

for movie_label in browser.find_elements_by_css_selector(            "#app > div > div > div.dashboard-content > div.dashboard-list.dashboard-left.bg > div.movielist-container > div > table > tbody > tr"):    print("排名:", movie_label.find_element_by_class_name("moviename-index").text)    print("名称:", movie_label.find_element_by_class_name("moviename-name").text)    print("信息:", movie_label.find_element_by_class_name("moviename-info").text)    print("信息:", movie_label.find_element_by_class_name("heat-text").text)    print("信息:", movie_label.find_element_by_class_name("last-col").text)

(其中find_element_by_class_name方法为定位到标签;text属性为返回标签内的文字)

运行结果已经可以将前30名的网播热度打印到控制台中,实现了当前需求。

排名: 01名称: 幸福,触手可及!信息: 多平台播放  上线8天信息: 4701.99信息: 3565.2万......

本系列案例采集的一切数据仅可用于学习、研究用途!

完整源代码: 扩展链接中的“猫眼网播热度采集.py”

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/人工智能uu/article/detail/991462
推荐阅读
相关标签
  

闽ICP备14008679号