| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 621 人关注过本帖, 1 人收藏
标题:如何将"新浪热榜”新闻标题下载下来
只看楼主 加入收藏
王咸美
Rank: 1
等 级:新手上路
帖 子:848
专家分:3
注 册:2018-1-4
结帖率:97.45%
收藏(1)
已结贴  问题点数:20 回复次数:7 
如何将"新浪热榜”新闻标题下载下来
如何将"新浪热榜”新闻标题下载下来?请高手赐教,万分感谢!
图片附件: 游客没有浏览图片的权限,请 登录注册
搜索更多相关主题的帖子: 标题 新浪 新闻 
6 天前 08:59
yiyanxiyin
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:9
帖 子:313
专家分:2302
注 册:2023-6-29
收藏
得分:0 
学习一下爬虫技术 有一整套方案和可行办法
6 天前 14:34
nbwww
Rank: 8Rank: 8
等 级:贵宾
威 望:11
帖 子:382
专家分:937
注 册:2021-1-9
收藏
得分:4 

一种办法是解析HTML   截取想要的
一种是分析一下从API下载JSON中取得,网址里面时间戳是动态的     https://feeds.*%22%2C%22timestamp%22%3A1762675903947%2C%22net%22%3Anull%2C%22channel%22%3A%22131250%22%7D&cateid=1o&zhiding=1&tm=1489716199&filters=url%2Cwapurl%2Cthumbs%2Cthumbscount%2Ctitle%2Cintro%2Cstyle%2Cmedia%2Ctype%2Cvideos%2Cpicscount%2Cdataid%2Cshowtags%2Ccommentcount
6 天前 16:20
王咸美
Rank: 1
等 级:新手上路
帖 子:848
专家分:3
注 册:2018-1-4
收藏
得分:0 
怎么把新闻标题爬下来,VFP代码如何写?难度可能较大,还请高手赐教!
5 天前 14:09
sam_jiang
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:14
帖 子:1055
专家分:1622
注 册:2021-10-13
收藏
得分:0 
爬哪个标题?
下面这些吗?

图片附件: 游客没有浏览图片的权限,请 登录注册
4 天前 11:22
王咸美
Rank: 1
等 级:新手上路
帖 子:848
专家分:3
注 册:2018-1-4
收藏
得分:0 
对!
4 天前 12:04
sam_jiang
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:14
帖 子:1055
专家分:1622
注 册:2021-10-13
收藏
得分:16 
效果图:
图片附件: 游客没有浏览图片的权限,请 登录注册

图片附件: 游客没有浏览图片的权限,请 登录注册


代码如下:
程序代码:
*!* 本程序用来向新浪新闻抓取"时尚热榜"的标题列表*!*
*!* 首先要先上网浏览准备抓取的网页,查看它的源代码,*!*
*!* 看看标题列表在哪个地方*!*
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
       



4 天前 14:29
王咸美
Rank: 1
等 级:新手上路
帖 子:848
专家分:3
注 册:2018-1-4
收藏
得分:0 
谢谢!谢谢🙏
4 天前 17:30
快速回复:如何将"新浪热榜”新闻标题下载下来
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019220 second(s), 11 queries.
Copyright©2004-2025, BC-CN.NET, All Rights Reserved