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中找规律,如果在第一页用动作点击下一页这样翻页获取挺麻烦的,因为这样翻页会刷新网页导致只能抓取前两页

小结

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

相关推荐
hughnz7 小时前
钻井自动化案例研究
运维·自动化
ZC跨境爬虫7 小时前
Scrapy实战爬取5sing网站:Pipeline优化+全流程踩坑复盘,从报错到数据落地
前端·爬虫·python·scrapy
我科绝伦(Huanhuan Zhou)8 小时前
分享一个MySQL自动化部署平台
mysql·adb·自动化
skywalk81638 小时前
使用官方提供的 bump-pydantic 工具 来自动化部分迁移pydantic代码
运维·自动化
码农很忙9 小时前
爬虫与反爬虫攻防战:技术解析与实战指南
爬虫
TK云大师-KK9 小时前
2026年4月TikTok矩阵运营系统横向评测TOP5
大数据·网络·人工智能·矩阵·自动化·新媒体运营
大數據精準工單獲取9 小时前
【数据抓取】 编写爬虫基本请求:使用爬虫框架发送 HTTP 请求,获取网页内容
爬虫·网络协议·http
ZGi.ai9 小时前
用Agent编排实现合同审查自动化:完整实现过程
运维·人工智能·自动化
IP老炮不瞎唠10 小时前
为什么Python爬虫需要代理 IP?原理与应用详解
爬虫·python·tcp/ip
齐潇宇10 小时前
Rsync+sersync 实现数据实时同步故障排查
linux·自动化·rsync·排障·数据同步排障