i# dZddlZddlZddlmZddlmZeejjdz dz dz Z iZ e e dd 5Z ej e Z dddn #1swxYwYed ee d n #e$rZed eYdZ[ndZ[wwxYwde DZgdZdZdZdZedkreedSdS)uM P2-7 任务:使用小红书核实陕西国保单位开放情况(Playwright + Cookies) 基于山东成功经验复用,真实爬取小红书数据 判断标准: - 笔记数 ≥ 5 篇 → 高置信度开放 - 笔记数 1-4 篇 → 中置信度(需交叉验证) - 笔记数 = 0 → 低置信度(可能关闭/遗址) N)Path)sync_playwrightzbeijing-exhibitionsconfigzxiaohongshu_cookies.jsonrutf-8encodingu'✓ 已加载小红书 cookie 配置: 个u!⚠ 加载 cookie 配置失败:c"g|] \}}||ddd S)z.xiaohongshu.com/)namevaluedomainpath).0r rs F/root/.openclaw/workspace/travel/scripts/verify_shaanxi_xiaohongshu.py rs9eE-?MM)5u 西安城墙u 大雁塔u 小雁塔u钟楼u鼓楼u 西安碑林u西安清真寺u化觉巷清真大寺u 大兴善寺u 青龙寺u 八仙宫u 水陆庵u 兴教寺塔u 香积寺塔u 华严寺塔u 牛头寺u 卧龙寺u 广仁寺u 宝庆寺塔u 荐福寺u 慈恩寺u 都城隍庙u 高家大院u化觉巷清真寺u大学习巷清真寺u小皮院清真寺u大皮院清真寺u 营里寺u五星街教堂u 秦始皇陵u 兵马俑u大明宫遗址u 半坡遗址u汉长安城遗址u唐长安城遗址u阿房宫遗址u 丰镐遗址u 姜寨遗址u老牛坡遗址u杨官寨遗址u汉武帝茂陵u唐太宗昭陵u唐高宗乾陵u汉昭帝平陵u杜陵u霸陵u阳陵u西安事变旧址u八路军西安办事处旧址u西安交通大学早期建筑u西北大学早期建筑u易俗社剧场u 人民剧院c ^g}d} ddlm}||}d|d}td|ddd||d d |d gd }g}|D]>} || }|r%td| dt |dn?t |}|dkr\|} |d} | ddD](} | } td| )|ddD]} | d}|r&| nd}| d}|r&| nd}|r-t |dkr| ||pdd#t$r}td|Yd}~d}~wwxYwn)#t$r}td|Yd}~nd}~wwxYw||fS)uK搜索小红书笔记(复用 page 对象,避免重复启动浏览器)r)quotez2https://www.xiaohongshu.com/search_result?keyword=z&source=web_search_result_notesu 搜索 URL: NPz... networkidlei`) wait_untiltimeouti@)zsection.note-itemz div.note-cardzdiv.search-result-itemz article.notez[data-type="note"]u 使用选择器:u , 找到 r z(.result-count, .search-count, span.countu 计数元素:z a.title spanzdiv.nameu未知)titleuseru 提取笔记失败:u 爬取失败:) urllib.parserprintgotowait_for_timeoutquery_selector_alllencontent inner_textquery_selectorstripappend Exception)keywordpageresults note_countrencoded_keywordurl selectorsnotessel page_contentcount_patternsptextnotetitle_elr user_elr!es rsearch_xiaohongshur?;sGJ;'&&&&&&%..s?sss ,s3B3x,,,--- #- ??? d###     C++C00E KSKK3u::KKKLLL ZZ  ??<<>>L!445_``N#BQB' 2 2||~~0$001111"1"I  D ..~>>9AI++--33555r--j997>Fw))++11333BSZZ!^^NN!& $ 0$$   333444  & ''' %!%%&&&&&&&&' J sCD#H*B-GH G>"G94H9G>>H H( H##H(cd|d}t||\}}|dkrd}d}n|dkrd}d}nd}d }|||||d d d d S)u核实单个景点u西安 u 开放r高u ✅ 开放中低u⏸️ 待核实Nru小红书实时搜索)sitestatus confidence notes_count notes_samplesource)r?) site_namer/r.r5 total_countrGrFs r verify_siterMs+ ***G+GT::E;a      # "bqb )   rc dtdtdtdtdg}t5}|jddddg}|}|t |}ttd D]\}}td |d ttd |t||}| |td |dd|dd|ddd|dzz}tj||dddn #1swxYwYt!t"jdz dz } | jdt)| dd5} t+j|| dddddn #1swxYwYtd| tdtd tdt|} t/d!|D} t/d"|D} t/d#|D}t/d$|D}t/d%|D}td&| d'td(| d)| | z d*zd+d,td-| d)| | z d*zd+d,ttd.td/|d)|| z d*zd+d,td0|d)|| z d*zd+d,td1|d)|| z d*zd+d,ttd2d3S)4NzF======================================================================u4P2-7-1:陕西国保核实 - 西安市(103 处)u9方法:Playwright + 小红书 Cookies(真实爬取)Tz/usr/bin/google-chromez---disable-blink-features=AutomationControlledzI--user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36)headlessexecutable_pathargsrBz [r z] u 状态:rFu (置信度:rGu, 笔记数:rH)rdatazshaanxi_xi_an_guobao.json)exist_okwrrFr) ensure_asciiindentu ✓ 结果已保存到:zG ======================================================================u📊 核实统计c3.K|]}d|dv dVdS)u✅rFrBNrrrs r zmain..s0DD1u( /C/CQ/C/C/C/CDDrc3.K|]}d|dv dVdS)u⏸️rFrBNrrYs rrZzmain..s0JJa(ak2I2I2I2I2I2IJJrc32K|]}|ddkdVdS)rGrArBNrrYs rrZzmain..s0GG!a o.F.FA.F.F.F.FGGrc32K|]}|ddkdVdS)rGrCrBNrrYs rrZzmain..0FFQ|_-E-E1-E-E-E-EFFrc32K|]}|ddkdVdS)rGrDrBNrrYs rrZzmain..r^ru总计核实:u 处u ✅ 开放:u 处 (dz.1fz%)u⏸️ 待核实:u🔍 置信度分布:u 高置信度:u 中置信度:u 低置信度:uE✓ 注:结果基于小红书实时搜索(Playwright + Cookies)r)r#rchromiumlaunch new_context add_cookies XHS_COOKIESnew_page enumerate XI_AN_GUOBAOr'rMr,timesleepcloser__file__parentmkdiropenjsondumpsum) all_resultsr9browsercontextr/irEresult sleep_time output_filefverified_count open_count unknown_count high_confmid_conflow_confs rmainrs (OOO @AAA EFFF (OOOK   a*##4?[$  %%''K(((!! q11 # #GAt 777C --7777 8 8 8 t,,F   v & & & |x 0|||@T||djkxdy||| } } }a!eJ Jz " " " " 7<x..'&03NNKd+++ k3 1 1 1@Q +quQ????@@@@@@@@@@@@@@@ 5 5 5666 /  (OOO%%NDD DDDDDJJJ;JJJJJMGG{GGGGGIFFkFFFFFHFFkFFFFFH 0N 0 0 0111 Q* Q QJ~,Ec,I Q Q Q QRRR ] ] ]]>5QRU5U ] ] ] ]^^^ GGG $%%% Ty T T .0H0L T T T TUUU Rx R Rx/Fs/J R R R RSSS Rx R Rx/Fs/J R R R RSSS GGG QRRR 1s% D'FFFG<<HH__main__)__doc__rpripathlibrplaywright.sync_apirrlrm CONFIG_FILEXHS_COOKIES_DICTrorzloadr#r'r-r>itemsrerhr?rMr__name__exitrrrrs   //////d8nn#*-BBXMPjj 3 k3 1 1 1(Q$49Q<<((((((((((((((( E OCC8H4I4I O O OPPPP333 E 1a 1 1222222223'--//  ,BBBJ6F F F R zDLLLLLs;BA# B#A''B*A'+BB$ BB$