效果图:
图片附件: 游客没有浏览图片的权限,请
登录 或
注册
图片附件: 游客没有浏览图片的权限,请
登录 或
注册
代码如下:

程序代码:
*!* 本程序用来向新浪新闻抓取"时尚热榜"的标题列表*!*
*!* 首先要先上网浏览准备抓取的网页,查看它的源代码,*!*
*!* 看看标题列表在哪个地方*!*
CLEAR
ohttp=CREATEOBJECT("WinHttp.WinHttpRequest.5.1")
ohttp.Open("get","https://news./")
ohttp.Send()
cstr=STRCONV(ohttp.ResponseBody,11) &&将utf-8编码的字符串转换成双字节
npos=AT_C("时尚热榜",cstr) &&记录时尚热榜在字符串中的位置
*!* 注意到所有的标题列表包裹在<ul>里面*!*
i=1
DO WHILE .t.
npos_ul=AT_C("<ul",cstr,i)
IF npos_ul<npos &&如果在时尚热榜之前,则不是我们要找的
i=i+1
loop
ELSE
EXIT
ENDIF
ENDDO
cfindstr=STREXTRACT(cstr,"<ul","</ul>",i)
*!* ?cfindstr 调试查看内容是否正确
*!* 查看每个标题前后的标签是否有规律,发现是包含在k"> 和</a> 之间*!*
DO WHILE .t.
cnewstitle=STREXTRACT(cfindstr,'k">',[</a>],1)
IF EMPTY(cnewstitle)
EXIT
ELSE
?cnewstitle &&查看输出的内容
cfindstr=STRTRAN(cfindstr,'k">'+cnewstitle+[</a>],"") &&去掉已经搜索到的内容
loop
ENDIF
ENDDO
RELEASE ohttp