03-自动化小案例

这小案例很简单,看完上一篇文章就可以着手做了:

python 复制代码
# 下面用加载页面,定位数据,动作链来做
from DrissionPage import ChromiumPage
from DrissionPage.common import By
import time

input_data = input('请输入想要搜索的课程:')
webdriver = ChromiumPage()
for page in range(1, 10):
    # 单窗口复用
    webdriver.get(f'https://search.bilibili.com/video?keyword={input_data}&from_source=webtop_search&spm_id_from=333.1007&search_source=6&page={page}&o={(page-1) * 30}')
    time.sleep(0.8)
    # 解析元素
    infos = webdriver.eles((By.XPATH, '//div[@class="video-list row"]/div'))
    lst = []
    for info in infos:
        url_ = info.ele((By.XPATH, './/div[@class="bili-video-card"]/div[@class="bili-video-card__wrap"]/a'))
        url = url_.attr('href')
        # print(url)
        title = info.ele((By.XPATH, './/div[@class="bili-video-card"]/div[@class="bili-video-card__wrap"]/div/div/a/h3')).attr('title')
        dic = {
            'title': title,
            'url': url,
        }
        lst.append(dic)
    print('-' * 160)
    print(f'第{page}页:{lst}')

webdriver.quit()

学了数据库,可以试试redis去重然后存入mysql或者MongDB中,这里就有一点需要注意,要在url中找规律,如果在第一页用动作点击下一页这样翻页获取挺麻烦的,因为这样翻页会刷新网页导致只能抓取前两页

小结

本文很简单,大家可以试试用接口的那种,那种更快,加油加油

相关推荐
海宇AI6 小时前
零信任架构实战:基于海宇个人风险报告构建自动化分期商城信用额度初审网关
运维·人工智能·架构·自动化
QXWZ_IA11 小时前
公路边坡裂缝的自动化监测布设
大数据·人工智能·自动化
码林拾遗WJ13 小时前
告警分级的自动化实测:模型判断 vs 人工拍板
人工智能·算法·自动化
VisionDataLab14 小时前
机器视觉运维困局:人员高频流动,如何降低产线视觉系统的运维依赖
自动化·视觉检测
第九序言T15 小时前
Python 数据处理进阶(二十四)把脚本变成工具:argparse、logging 与定时任务
python·自动化·pandas
小豆庄19 小时前
会议录屏忘打码后的技术复盘:本地自动化隐私脱敏方案
运维·opencv·目标检测·自动化·视频·纹理贴图
正飞信息技术21 小时前
llms.txt部署指南:给AI爬虫一张清晰的网站地图
人工智能·爬虫
鬼手点金21 小时前
Skills:领域能力的可组合单元
java·人工智能·笔记·自动化·1024程序员节
海宇服务1 天前
零信任架构实战:基于海宇全能小微企业报告构建自动化园区商户免押租赁资信核验网关
大数据·人工智能·架构·自动化