当前位置: 首页 > news >正文

获取小红书某个用户列表

from playwright.sync_api import sync_playwright
import time


cookie=[]  #用自己的cookie

def capture_response(response, url_to_capture, api_response_data):
# 检查响应的 URL 是否匹配
if url_to_capture in response.url:
# 检查是否是 JSON 格式
if 'application/json' in response.headers.get('content-type', ''):
api_response_data.append(response.json())  # 将 JSON 数据添加到列表中
p = sync_playwright().start()
browser = p.chromium.launch(headless=True)
context = browser.new_context()
context.add_cookies(cookie)
page = context.new_page()

api_response_data = []
url_to_capture = 'https://edith.xiaohongshu.com/api/sns/web/v1/search/usersearch'
page.on('response', lambda response: capture_response(response, url_to_capture, api_response_data))

page.goto("https://www.xiaohongshu.com/search_result/?keyword=%25E5%25B0%258F%25E4%25B9%258C%25E8%258B%258F&source=web_explore_feed&type=51")
page.wait_for_load_state('load')
page.locator('//div[text()=" 用户"]').click()
page.wait_for_event('response')
#page.wait_for_timeout(3000)
while True:
page.mouse.wheel(0, 1000)
#page.wait_for_timeout(1000)
try:
page.wait_for_selector('//div[text()=" - THE END - "]',timeout=50)
print("下拉结束")
break
except Exception as e:
print("继续下拉")
pass
page.wait_for_load_state('load')
#print(page.content())
print(len(api_response_data))
#browser.close()

for k in api_response_data:
for i in k['data']['users']:
print(i['name'])
print(i['sub_title'])
print(i['image'])
print("====================================")

http://www.xdnf.cn/news/1378729.html

相关文章:

  • 【LeetCode 热题 100】32. 最长有效括号——(解法二)动态规划
  • 集成电路学习:什么是TensorFlow
  • AI实时故障诊断系统(实时采集信号)
  • Python 正则表达式完全指南:从基础语法到实战案例
  • 【从0带做】基于Springboot3+Vue3的呱呱同城(微服务项目)
  • 实现微信小程序的UniApp相机组件:拍照、录像与双指缩放
  • ARM相关的基础概念和寄存器
  • PCIe 5.0 SSD连续读写缓存用完速度会骤降吗?
  • 2024年09月 Python(三级)真题解析#中国电子学会#全国青少年软件编程等级考试
  • 帕累托优化:多目标决策的智慧与艺术
  • 【重学 MySQL】九十二、 MySQL8 密码强度评估与配置指南
  • 关于virtual camera
  • 【C++游记】模板升级
  • 【半导体制造流程概述】
  • windows 子系统 wsl 命令的用法
  • vue3 字符 居中显示
  • SpringBoot整合Redis:从入门到实战的完整指南
  • 关于DTO、DO、BO、VO
  • 工业 DCS 全面科普:从入门到 AI 赋能的未来
  • mybatis-plus实现苍穹外卖项目-分类操作,不定期更新-day2
  • 【和春笋一起学C++】(三十七)类的析构函数
  • 死锁产生的条件是什么? 如何进行死锁诊断?
  • leetcode 974 和可被K整除的子数组
  • 集成电路学习:什么是YOLO一次性检测器
  • 关于国产 RAC 和分布式研讨
  • 【Python学习笔记】whl包打包
  • Day14——JavaScript 核心知识全解析:变量、类型与操作符深度探秘
  • Redis实战-优惠券秒杀解决方案总结大全
  • XC6SLX75-2FGG484C Xilinx Spartan-6 LX FPGA
  • 电子电气架构 --- 软件项目复杂性的驾驭思路