xxcvb 发表于 2009-2-11 18:34:02

QQ城市达人采集 规则 原创

今天求人求了一天,没人帮我下,论坛介绍的方法太复杂,我现在发布一超级简单的方法

http://city.qzone.qq.com/json.php?mod=sososearch&act=page&type=city&jsontype=str&callback=searchProCb&cd=330300&pg=1

直接用火车采集这个地址,330300是城市参数,具体你在http://city.qzone.qq.com/达人首页搜索的时候会看到,pg=1是页数,采集分页的时候直接pg=(*)表示
http://city.qzone.qq.com/json.php?mod=sososearch&act=page&type=city&jsontype=str&callback=searchProCb&cd=城市ID参数&pg=页码

原创,请加分,超简单采集QQ城市达人数据

xxcvb 发表于 2009-2-11 18:34:57

本帖最后由 xxcvb 于 2016-1-8 16:24 编辑

转载请注明出处   

rq204 发表于 2009-2-11 18:41:22

这个是很久前别人发过的了...

飛越無限 发表于 2009-2-11 18:59:04

影视资源交流群 怎么跑出个火车头交流群了呢。

xxcvb 发表于 2009-2-11 18:59:17

我看了那个帖子   他发的不是这样的地址   
我和他的不一样

xxcvb 发表于 2009-2-11 19:10:10

这个网站用火车效率有点慢,我用迅雷批量下载
然后写正则用批处理提取成功

一会发正则上来

xxcvb 发表于 2009-2-11 21:43:16

把数据保存本地为txt
然后用下面批处理搞定
@echo off & SETLOCAL EnableDelayedExpansion

set _TxtFile=getQQ.txt
set _OutFile=QQ.txt
set _GetLine=
set _GetChar=

:main
      if exist %_OutFile% copy %_OutFile% %_OutFile%.bak & del /q /f %_OutFile%
      fsutil file Createnew %_OutFile% 0
      for /f "Tokens=* " %%i in (%_TxtFile%) do (
                set "_GetLine=%%i"
                set "_OutLine="
                set "_GetLine=!_GetLine:http://city.qzone.qq.com/html/user/guest.htm#uin=☆!"
                set "_GetLine=!_GetLine:TA=★!"
                call :READINFILE
                echo !_OutLine! >>%_OutFile%
                )
goto :END
:READINFILE
set ReadFlag=false
      for /l %%i in (0,1,255) do (
                set _GetChar=!_GetLine:~%%i,1!
                if "!_GetChar!"=="" goto :EOF
                if "!_GetChar!"=="★" set ReadFlag=false
                if "!ReadFlag!"=="true" set _OutLine=!_OutLine!!_GetChar!
                if "!_GetChar!"=="☆" set ReadFlag=true
                )
      goto :EOF
:END

xxcvb 发表于 2009-2-11 21:44:48

火车老大我的代码怎么自动插入了:这句代码

xxcvb 发表于 2009-2-11 22:23:21

"QQ":"^*$"这个怎么匹配不出来

xxcvb 发表于 2009-2-11 23:59:51

最后得到的QQ号码一般都是推广发群邮件用
所以我在给个批处理,自动生成邮件地址
由于VB C++等学的不精通写不出来全自动工具

echo off
set n=0
setlocal enabledelayedexpansion
for /f "delims=" %%a in (1.txt) do set /a n+=1 & set c!n!=%%a
for /l %%a in (1 1 !n!) do (
if not %%a==1 (echo !c%%a!@QQ.com>>1.txt) else (echo !c%%a!@QQ.com>1.txt)
)
pause
页: [1] 2
查看完整版本: QQ城市达人采集 规则 原创