一、項目簡介
本項目是一個基于影刀RPA的小紅書筆記批量采集工具,能夠通過兩種模式獲取小紅書平臺的軟文數據:搜索內容抓取和自定義鏈接抓取。工具使用Chrome瀏覽器自動化技術,實現了從網頁數據采集、解析到Excel導出的完整流程。支持獲取筆記標題、作者信息、內容、點贊收藏數據、評論等多維度信息,并提供數據表格導出功能。
二、項目結構
主要目錄結構
xbot_robot/
├── .dev/ # 開發相關資源文件
├── __pycache__/ # Python編譯緩存
├── main.py # 程序入口
├── package.py # 項目配置與公共接口
├── utils.py # 工具函數
├── process1-9.py # 各功能流程模塊
├── selectorsV2.xml # 網頁元素選擇器配置
├── package.json # 項目元數據與配置
└── settings.json # 應用設置
核心流程模塊
- main.py: 程序入口,提供流程選擇對話框
- process1.py: 搜索信息配置
- process4.py: 獲取作者詳情
- process5.py: 數據導出功能
- process6.py: 自定義鏈接配置
- process8.py: 小紅書首頁內容抓取
- process9.py: 小紅書詳情內容抓取
- utils.py: 數據處理工具函數
三、項目特點和核心代碼
主要特點
- 雙模式采集:支持關鍵詞搜索和自定義鏈接兩種采集方式
- 多維度數據:獲取標題、作者、內容、點贊、收藏、評論等完整信息
- 智能分頁:自動滾動加載并檢測頁面底部
- 數據導出:支持導出為Excel格式
- 元素定位:通過XML配置文件管理網頁元素選擇器
核心代碼示例
1. 數據處理工具函數(utils.py)
def deal_data(response_body_list):note_id_list=[]for response in response_body_list:r = json.loads(response['body'])adinfos = r.get('data', {}).get('items', [])has_more = r.get('data', {}).get('has_more')if has_more:for info in adinfos:note_id= info.get('id','')xsec_token = info.get('xsec_token','')note_id_list.append({'id':note_id,'xsec_token':xsec_token})note_url_list = [f'https://www.xiaohongshu.com/explore/{i.get("id")}?xsec_token={i.get("xsec_token")}&xsec_source=pc_search' for i in note_id_list if len(i.get('id'))<=24]return note_url_list
2. 網頁內容抓取(process8.py)
# 監聽網絡請求獲取數據
xbot_visual.web.browser.start_monitor_network(browser=web_page, url="https://edith.xiaohongshu.com/api/sns/web/v1/search/notes", use_wildcard=False, resource_type="Fetch|XHR")
# 輸入搜索內容并提交
xbot_visual.web.element.input(browser=web_page, element=package.selector("小紅書-搜索內容輸入框"), text=glv['search_content'])
# 滾動加載更多內容
while True:xbot_visual.win32.wheel_mouse(wheel_direction="down", wheel_times="5")# 檢測是否到達頁面底部if web_element_list[-1] == 最后一個元素文本內容:break
四、適用場景
- 市場調研:批量采集特定關鍵詞的小紅書筆記,分析熱門內容趨勢
- 競品分析:監控競爭對手的小紅書賬號及內容表現
- 內容創作:獲取行業熱門話題和用戶關注點
- 輿情監控:追蹤特定品牌或產品在小紅書的討論情況
- 學術研究:社交媒體內容分析與數據挖掘
五、常見問題與建議
常見問題
- 瀏覽器兼容性:僅支持Chrome瀏覽器,請確保已安裝最新版本
- 登錄問題:程序需要小紅書賬號登錄狀態,未登錄會導致采集失敗
- 反爬限制:頻繁采集可能觸發小紅書風控機制,導致賬號限制
- 元素定位失敗:網頁結構變更可能導致選擇器失效
使用建議
- 安裝影刀插件:確保Chrome瀏覽器已安裝影刀插件
- 控制采集頻率:避免長時間連續采集,建議設置適當間隔
- 定期更新選擇器:當網頁結構變化時,需要更新selectorsV2.xml中的元素配置
- 使用代理IP:高頻率采集時建議使用代理IP池
- 及時保存數據:定期導出數據,避免程序異常導致數據丟失
六、源碼下載
- 通過影刀RPA客戶端應用市場獲取。
- 私聊
七、后續擴展方向
- 定時任務:支持設置定時采集任務
- 云同步:增加數據云存儲和多設備同步功能
- AI內容分析:集成自然語言處理,實現情感分析和關鍵詞提取
- 代理池管理:內置代理IP池,提高反爬能力