尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
闲鱼API
用 pyxianyu 打通闲鱼商品、搜索、消息能力GitHub 仓库DoLovya/pyxianyu前言闲鱼自动化先别急着写业务先把签名、登录态和接口入口封稳定。一、问题直接调闲鱼 Web 端接口基本都会卡在这 3 个点请求参数里有sign不能裸调Cookie 会刷新常驻进程容易失效商品、搜索、消息能力分散业务代码很快写乱目标做一个可复用的 Python 库把签名、请求、鉴权、业务 API统一起来。二、方案1. 统一签名和请求所有业务 API 都走同一套签名链路这层一定先收口。importtimeimportrequestsfrompyxianyu.utils.xianyu_utilsimportgenerate_signclassXianyuClient:def__init__(self,cookies,device_id):self.sessionrequests.Session()self.session.cookies.update(cookies)# 登录态注入self.device_iddevice_iddefbuild_mtop_params(self,api):return{jsv:2.7.2,appKey:34839810,t:str(int(time.time())*1000),sign:,api:api,type:originaljson,dataType:json,}defbuild_signed_form(self,params,data_val):tokenself.session.cookies.get(_m_h5_tk,).split(_)[0]params[sign]generate_sign(params[t],token,data_val)# 生成 signreturn{data:data_val}defensure_api_success(self,payload):retpayload.get(ret)or[]ifretandnotret[0].startswith(SUCCESS):raiseRuntimeError(ret[0])# 统一失败出口returnpayload后面所有接口只管组装data不用重复处理签名和异常。2. 业务 API 模块化登录态、商品、搜索、媒体分模块对外只暴露一个入口。classXianyuApis:def__init__(self,cookies,device_id):self.clientXianyuClient(cookies,device_id)self.auth_apiAuthApi(self.client)self.item_apiItemApi(self.client)self.search_apiSearchApi(self.client)defget_token(self):returnself.auth_api.get_token()defget_item_info(self,item_id):returnself.item_api.get_item_info(item_id)defsearch_items(self,keyword,page_number1,rows_per_page20):returnself.search_api.search_items(keyword,page_numberpage_number,rows_per_pagerows_per_page)调用层只面向XianyuApis不用关心底层 URL 和签名细节。3. 先安装再调用1.0.0版本开始对外入口已经统一为xianyu命名直接安装即可。# 方式1安装正式版pipinstall-Upyxianyu# 方式2uv 安装uv pipinstall-Upyxianyu如果你是本地调试仓库源码也可以直接安装当前项目cdthird_party/pyxianyu pipinstall-e.环境变量准备exportXIANYU_COOKIE你的完整Cookie可直接运行的示例importosfrompyxianyu.xianyu_apisimportXianyuApisfrompyxianyu.utils.xianyu_utilsimportgenerate_device_id,trans_cookiesdefmain():cookie_stros.environ[XIANYU_COOKIE]# 完整 Cookiecookiestrans_cookies(cookie_str)user_idcookies.get(unb,0)# 从 Cookie 中拿当前用户标识device_idgenerate_device_id(user_id)apiXianyuApis(cookies,device_id)token_resultapi.get_token()nav_resultapi.get_user_page_nav()print(token ok:,bool(token_result.get(data)))print(nav_result)# 直接看接口原始返回if__name____main__:main()运行方式python demo.py这个示例只依赖XIANYU_COOKIE更适合先验证登录态和基础调用链路如果字段结构有变化先看print(nav_result)的原始结果最稳。完整功能清单模块功能方法鉴权获取登录 tokenget_token()鉴权刷新登录态refresh_token()商品获取商品详情get_item_info(item_id)商品获取用户商品分页列表get_user_items(user_id, ...)商品自动翻页拉取全部商品get_all_user_items(user_id, page_size20)商品下架商品downshelf_item(item_id)商品发布前校验prepublish_check(item_idNone)商品获取发布/编辑预置参数preget(item_idNone, source_idNone, publish_sceneNone, bizcodeNone)商品获取商品编辑详情get_item_edit_detail(item_id)商品编辑商品edit_item(payload)商品发布全新商品publish_item(payload)商品构造重新上架 payloadbuild_reshelf_payload(edit_detail_result, item_idNone, source_idNone)商品一步重新上架商品reshelf_item(item_id, source_idNone)搜索按关键词搜索商品search_items(keyword, page_number1, rows_per_page20, ...)用户获取当前登录用户信息get_user_page_nav()媒体上传图片/视频/音频upload_media(media_path)消息创建单聊会话create_chat(ws, toid, item_id)消息发送文本/图片消息send_msg(ws, cid, toid, message)消息单次发送消息send_msg_once(toid, item_id, send_message)消息拉取指定会话历史消息list_all_conversations(cid)消息WebSocket 初始化注册init(ws)消息心跳保活heart_beat(ws)消息HTTP 登录态保活user_alive()消息启动消息监听主循环main()消息处理收到的消息handle_message(message, websocket)消息类型构造文本消息make_text(text)消息类型构造图片消息make_image(url, width0, height0)消息类型构造音频消息make_audio(url, duration_ms0)如果只想记住一件事XianyuApis负责 HTTP 能力聚合XianyuLive负责 WebSocket 消息收发。三、踩坑⚠️sign依赖_m_h5_tkCookie 缺这个字段就会直接失败。⚠️get_token()要限制重试次数别把“令牌过期”写成死循环。⚠️ 编辑商品时部分布尔值是字符串提交前要先归一化。⚠️XIANYU_COOKIE走环境变量别写死在代码里。四、总结pyxianyu先解决的是签名、请求、鉴权不是先堆接口数量。模块拆开对外聚合成XianyuApis业务代码会干净很多。底层库先封稳后面接 MCP、机器人、运营脚本才省事。
RELATED

相关推荐

为何卓艺美仿石漆能成为《仿石涂料应用技术规程》参编单位、《建筑外墙仿石涂料工程施工及验收规程》参编单位

为何卓艺美仿石漆能成为《仿石涂料应用技术规程》参编单位、《建筑外墙仿石涂料工程施工及验收规程》参编单位

在仿石涂料行业,有一句话广为流传:"仿石漆,看福建"。作为中国仿石漆产业的发源地与核心集聚区,福建诞生了一批推动行业标准化、规范化发展的中坚力量。卓艺美仿石漆便是其中的代表,凭借二十余年的行业深耕与…

📅 2026/9/10 13:43:28
Godot PCK文件深度解析:独立工具开发与自动化资源打包实战

Godot PCK文件深度解析:独立工具开发与自动化资源打包实战

1. 项目概述:为什么我们需要一个独立的PCK文件处理工具?如果你在Godot引擎里做过项目发布,尤其是涉及到DLC、热更新或者Mod支持,那你肯定对PCK文件不陌生。官方文档里把它叫做“资源包”,本质上就是一个.pck后缀的压缩…

📅 2026/9/11 20:29:21
储能孤岛系统设计与Matlab仿真实践

储能孤岛系统设计与Matlab仿真实践

1. 项目概述:储能孤岛系统的现实意义与技术挑战 在新能源电力系统领域,孤岛系统正成为解决偏远地区供电和电网弹性的重要方案。这类系统不依赖主电网运行,而是通过本地发电单元(如光伏、风电)配合储能装置实现自给自足…

📅 2026/9/14 4:28:33
MORE NEWS

更多资讯

📰

WebMail发信交互监听:CDP+前端Hook深度追踪HTTP事务链

简介:本资源是一份面向网络安全与信息内容安全方向学习者的实践型实验报告,聚焦WebMail发信交互过程的网络层监听与敏感信息提取,适用于高校信息安全、网络工程专业学生及初级安全研究人员。报告基于Libnids开发包实现TCP流捕获与重组&#x…

📰

2026上海紧固件专业展:从一颗螺丝看懂产业升级风向

做制造业这行久了,你会发现一个规律:越是看起来不起眼的小东西,越能反映一个产业的底色。螺丝、螺栓、螺母、垫圈,这些零件在图纸上常常被一笔带过,但大到风电塔筒、小到手机铰链,都离不开它们。2026年6月2…

📰

Mac mini + Mano-P:构建本地GUI Agent的实战指南

1. 为什么Mac mini突然成了GUI Agent的“隐形主力”最近在几个技术社群里,频繁看到有人晒出Mac mini跑Mano-P的截图——不是远程桌面连着一台Linux服务器,也不是用Docker套壳模拟图形环境,而是真正在M1/M2芯片的Mac mini上,本地启…

📰

Pandas MultiIndex构造方法详解:from_tuples、from_arrays、from_product、from_frame实战指南

做数据处理时间长了你会发现,真正让 pandas 从“Excel 替代品”变成“数据处理利器”的,不是眼花缭乱的 API,而是它对于索引(Index)的设计。尤其是多层索引 MultiIndex,当你的数据维度从一维升到二维、三维…

📰

同态滤波原理与工业图像光照校正实战

简介:本资源是一套面向图像处理初学者与计算机视觉实践者的MATLAB同态滤波图像增强代码包,聚焦解决光照不均导致的图像细节丢失问题,适用于医学影像预处理、工业质检图像校正及课程实验等实际场景。压缩包共9个文件,含8个核心.m脚…

📰

法律智能问答系统落地:检索优先的双塔语义匹配实践

简介:该项目是一套基于神经网络的法律智能问答系统,面向希望学习自然语言处理与智能问答的初学者和进阶者,适合作为毕业设计、课程设计或项目实训。系统围绕法律领域常见场景构建,覆盖劳动合同、工伤保险、劳动法、员工权益、维权…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬