疯狂的爬虫案例(2)文末附源码

软件版本号:

python --version

Python 3.8.0

pip show selenium

Version: 4.20.0

chromedriver.exe -version

109.0.5414.74

主题:爬取10条动态网页内容(电影票房)

1.根据xpath获取网页节点(Ctrl+F)

2.使用Console控制台打印节点内容,看是否是自己需要的内容

F12->$x('//title')

3.python代码获取,进行细微调整

python 复制代码
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By
import time

# 配置WebDriver的路径(确保chromedriver的路径正确)
chrome_driver_path = 'C:/Users/Administrator/Downloads/Compressed/chromedriver_win32/chromedriver.exe'
# 初始化WebDriver:旧版本,会报错
# driver = webdriver.Chrome(executable_path=chrome_driver_path)
# 新版本
service = Service(chrome_driver_path)  
driver = webdriver.Chrome(service=service)

# 导航到目标网页
driver.get('https://piaofang.maoyan.com/dashboard/movie')

# 等待页面加载完成(根据需要调整等待时间)
time.sleep(5)

tbody = driver.find_element(By.XPATH, '//*[@id="app"]/div/div/div[2]/div[1]/div[2]/div/table/tbody')

rows = tbody.find_elements(By.TAG_NAME, 'tr')

i=1
for row in rows:
    title = row.find_element(By.XPATH, './td[1]/div/div[@class="moviename-desc"]/p[@class="moviename-name"]').text
    days = row.find_element(By.XPATH, './td[1]/div/div[@class="moviename-desc"]/p[@class="moviename-info"]/span[1]').text
    money = row.find_element(By.XPATH, './td[1]/div/div[@class="moviename-desc"]/p[@class="moviename-info"]/span[2]').text
    print(str(i) + '.' + title + ' [' + days + '] [票房' + money + ']')
    #print()  # 换行,表示一行结束    
    if i == 10:
        break;
    i+=1

# 关闭浏览器
driver.quit()

运行结果:

1.xxx 点映 票房5474.1万

2.xxx 上映32天 票房9.09亿

3.xxx 上映27天 票房7.71亿

4.xxx 上映31天 票房2.73亿

5.xxx 上映26天 票房5560.5万

6.xxx 上映27天 票房1.20亿

7.xxx 上映11天 票房1356.9万

8.xxx 上映39天 票房3.49亿

9.xxx 上映27天 票房1.00亿

10.xxx \[\] 票房127.2万

xxx会根据实际内容输出。

相关推荐
147API2 分钟前
Claude Tag 进入 Slack 后,团队智能体需要哪些任务与审计字段
java·开发语言·数据库
用户298698530144 分钟前
Python 数据处理:XML 与 Excel 互转的实用指南
后端·python·excel
m0_617493945 分钟前
PyCharm 新手避坑指南:一文解决“项目列表消失”与“模块导入报错”两大玄学问题
ide·python·pycharm
中微极客5 分钟前
从Prompt到RAG:LLM工程实战全链路解析
人工智能·python·prompt
熬夜苦读学习10 分钟前
QT_信号和槽
开发语言·qt
代码雕刻家13 分钟前
编程语法细节
java·c语言·开发语言
j7~14 分钟前
【C++】C++ 继承全解析:从基本语法到菱形继承的底层原理
开发语言·c++·继承·组合·虚继承·#暑假·七月创作之星博客挑战赛
数行拙笔18 分钟前
C++客户端---String类型
开发语言·c++·bootstrap
就牙白23 分钟前
中科方德服务器打包RPM
linux·python
影寂ldy24 分钟前
C# Task 进阶:WaitAll / WaitAny / WhenAll / WhenAny
开发语言·c#