Python 源代码 您所在的位置:网站首页 视频号网页版怎么回复评论 Python 源代码

Python 源代码

2024-05-27 03:40| 来源: 网络整理| 查看: 265

欢迎关注公众号「月小水长」,唯一笔者是 BuyiXiao,又名小布衣、肖不已。 BuyiXiao,何许人也?本衡州一乡野村夫,身高八尺不足,年方二十有余;弱冠之年曾求学于潭州,为谋生计,背井离乡,远赴京畿,我本南人,不习北土,兼有故友,威逼利诱,急于星火,遂下岭南,打工未半,中道创业,所为何业?赛博朋克,智能硬件;假工程师之名,行农民工之实,满腹经纶,无用书生,善于自黑,贻笑大方。 另外,文末点下「赞」和「在看」,这样每次新文章推送,就会第一时间出现在你的订阅号列表里。

当时的重点只是讲 hook 这种方法,并不是采集抖音评论,有点为了这瓶醋包了这碗饺子的意思在里面。

而且收到不少反馈说配置麻烦,于是就有了今天这期使用纯 Python 采集抖音评论,配置相对简单。

目标站点还是抖音网页版,其实抖音网页评论没啥反爬,访问接口时携带登录 cookie 和适当休眠时间即可获取到数据,然后使用返回数据里面的 cursor 获取下一页的偏移量(一般是 20)来控制翻页。

下面就以下面这个视频为例,简述下如何获取 cookie

https://www.douyin.com/video/7314079677939830068

1、在 Chrome 浏览器中打开上面这个视频地址。

2、F12 或者右键检(审)查打开网页开发者工具,切换到 Network 栏。

3、点开视频评论区,在 Network 栏下找到请求 web/comment/list/,点击,复制请求的 Headers(Cookie) 和 Payload(Params)。

虽然已经说了很多次,但是考虑到新手友好,这个请求 cookie 的复制我还是多说一嘴,如果觉得上面流程不明白的,建议先百度学习下 F12 开发者工具的使用,5 分钟就能搞定。

走完上面流程,你应该得到的 headers 和 params 格式如下:

代码语言:javascript复制headers = { 'authority': 'www.douyin.com', 'accept': 'application/json, text/plain, */*', 'accept-language': 'zh-CN,zh;q=0.9,en-CN;q=0.8,en;q=0.7,es-MX;q=0.6,es;q=0.5', 'cookie': '替换成你自己的 cookie', 'referer': 'https://www.douyin.com/user/MS4wLjABAAAAlfFujj6wKxN1TqrqqJu4XBaZqek6XwvvA_afAojNvWr1E4ZO_nadPC1Ku7XMpzfj?modal_id=7316808340519030055', 'sec-ch-ua': '"Not_A Brand";v="8", "Chromium";v="120", "Google Chrome";v="120"', 'sec-ch-ua-mobile': '?0', 'sec-ch-ua-platform': '"Windows"', 'sec-fetch-dest': 'empty', 'sec-fetch-mode': 'cors', 'sec-fetch-site': 'same-origin', 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36', } params = { 'device_platform': 'webapp', 'aid': '6383', 'channel': 'channel_pc_web', 'cursor': '0', 'count': '20', 'item_type': '0', 'insert_ids': '', 'whale_cut_token': '', 'cut_version': '1', 'rcFT': '', 'pc_client_type': '1', 'version_code': '170400', 'version_name': '17.4.0', 'cookie_enabled': 'true', 'screen_width': '1707', 'screen_height': '960', 'browser_language': 'zh-CN', 'browser_platform': 'Win32', 'browser_name': 'Chrome', 'browser_version': '120.0.0.0', 'browser_online': 'true', 'engine_name': 'Blink', 'engine_version': '120.0.0.0', 'os_name': 'Windows', 'os_version': '10', 'cpu_core_num': '16', 'device_memory': '8', 'platform': 'PC', 'downlink': '10', 'effective_type': '4g', 'round_trip_time': '150', 'webid': 'xxx替换', 'msToken': 'yyy替换', 'X-Bogus': 'zzz替换', }

一般来说,只需要替换代码中 headers 的 cookie 和 params 中的xxx、yyy、zzz ,其余部分可保持不变。

有了 headers 和 params,就可以很方便地请求数据了,核心请求+翻页逻辑代码如下:

代码语言:javascript复制while True: root_params['cursor'] = cursor response = requests.get('https://www.douyin.com/aweme/v1/web/comment/list/', params=root_params, headers=headers) resp_json = response.json() save_comments(resp_json, result_file) cursor = str(resp_json['cursor']) has_more = int(resp_json['has_more']) if has_more


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有