抖音视频爬虫如何自动完成翻页?
解决 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
这样,代码将自动翻页,并获取该抖音博主全部视频链接。
以上就是抖音视频爬虫如何自动完成翻页?的详细内容,更多请关注其它相关文章!