登录
首页 >  文章 >  python教程

抖音视频爬虫如何自动完成翻页?

来源:php

时间:2024-10-29 08:31:47 356浏览 收藏

最近发现不少小伙伴都对文章很感兴趣,所以今天继续给大家介绍文章相关的知识,本文《抖音视频爬虫如何自动完成翻页?》主要内容涉及到等等知识点,希望能帮到你!当然如果阅读本文时存在不同想法,可以在评论中表达,但是请勿使用过激的措辞~

抖音视频爬虫如何自动完成翻页?

解决 python 爬虫抖音视频翻页问题

在爬取抖音博主全部视频时,遇到翻页问题,如何通过程序自动完成翻页并加载后续视频链接?

翻页方式

抖音视频翻页有两种方式:

  • 页码索引(page index):例如:https://segmentfault.com/u/ponponon/articles
  • 最大 id(max_id):例如:https://segmentfault.com/questions/subscribed

解决方法

使用最大 id 方式实现翻页:

获取初始页面中的视频链接后,提取页面中最新的视频 id(max_id)。

在随后的请求中,将 max_id 作为查询参数,获取下一页的视频链接。

不断重复此过程,直到获取所有视频链接。

代码实现

在你的代码中,在 get_video_url() 函数中添加以下内容:

if not video_url:
    return

max_id = None
while True:
    try:
        url_new = 'https://www.douyin.com/user/MS4wLjABAAAAp3rtDfotN7-mHjDIr0XR2XJ5g0C1DIVAuJYgBHJYX-xJLZgoHvfN0r0yAWTLybn7'
        if max_id:
            url_new += f'?max_cursor={max_id}'
        r = requests.get(url=url_new, headers=headers)
        html = BeautifulSoup(r.text, 'html.parser')
        result = html.find_all('a', 'B3AsdZT9 chmb2GX8 UwG3qaZV')
        if not result:
            print("Finished")
            break
        
        for item in result:
            get_video(item['href'])
        max_id = item['href'][-19:]
    except Exception as e:
        print("解析失败")
        print(e)
        break

这样,代码将自动翻页,并获取该抖音博主全部视频链接。

到这里,我们也就讲完了《抖音视频爬虫如何自动完成翻页?》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于的知识点!

声明:本文转载于:php 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>