找回密码
 立即注册

微信登录

只需一步,快速开始

QQ登录

只需一步,快速开始

查看: 4|回复: 0

[心得] aardio简单网页爬虫

[复制链接]
  • TA的每日心情
    开心
    9 小时前
  • 签到天数: 35 天

    连续签到: 1 天

    [LV.5]常住居民I

    23

    主题

    39

    回帖

    513

    积分

    高级会员

    积分
    513
    来自: 中国贵州贵阳
    发表于 4 小时前 | 显示全部楼层 |阅读模式 来自: 中国贵州贵阳
    非业余 - aardio 编程语言 - 非官方问答社区
    风行者三期培训:Aardio+Python+Flutter,1000集课程让你成为全栈开发高手!https://mp.weixin.qq.com/s/_WOoHFtITUyLk2k7BXYGkg
    Aardio培训大揭秘,轻松上手打造个人项目!https://mp.weixin.qq.com/s/cr47qhp_Cpz0p57lbbPwug
    aardio风行者第二期培训班https://mp.weixin.qq.com/s/uB6XHUDnGSk0JlWuiBE9AA
    aardio风行者第三期培训班https://mp.weixin.qq.com/s/cdZcvFiAWhlYTaSrQGCPvA
    本帖最后由 XWCXF 于 2025-5-12 14:58 编辑

    今天学了超神奇的网页爬虫!之前一直觉得网络上的信息密密麻麻,想要啥都得自己手动翻找,没想到用代码就能让程序帮忙自动采集。

    第一:向网页“要”内容
    就像去店里买东西得先告诉老板你想要啥,程序想拿到网页上的信息,也得先发个“请求”。在 aardio 里,用 http.get 函数就能发请求。我试着给一个示例网址 https://www.example.com 发请求,代码是这样的:

    [AAuto] 纯文本查看 复制代码
    import console;  
    import inet.http;
    
    var http = inet.http();
    var data,err,errCode = http.get( "https://www.example.com");
    
    if( http.statusCode ==200 ){ 
      console.log(data);
    }
    elseif(http.statusCode ){
        console.log( http.lastResponse(), "HTTP错误代码:" + http.statusCode )
    }else{
        console.log( err,errCode );
      }
    http.close();
    console.pause();


    运行后发现,要是请求成功(状态码是 200),程序就会把网页内容打印出来;要是失败了,也会告诉我是哪里出了问题。

    第二:从网页里“挑”信息
    拿到网页内容后,里面全是密密麻麻的代码,怎么才能找到自己想要的东西呢?这就像在一堆水果里挑出苹果,得用专门的工具。在 aardio 里,html 库就是这个“工具”。

    [AAuto] 纯文本查看 复制代码
    import console;  [/color][/align][align=left][color=rgb(63, 63, 63)]
    import inet.http;
    import string.html;
    
    var http = inet.http();
    var data,err,errCode = http.get( "https://www.example.com");
    
    if( http.statusCode ==200 ){
        var htmlDoc = string.html(data)
        var doc = htmlDoc.queryEles( tagName = "body" );
        var links = doc[1].queryEle(tagName = "a"); 
        console.log(links.href)
        
    }else{
        console.log( err,errCode );
      }
    http.close();
    console.pause();



    这段代码能帮我从网页里找到所有的链接标签 <a>,然后把链接地址打印出来,感觉自己马上就能当“信息小侦探”了!

    总结
    通过今天对网页爬虫的学习,我了解到在 aardio 中,先是使用 http.get 函数向网页发送请求获取内容,依据状态码判断请求是否成功。接着,利用 html 库对获取到的网页内容进行解析,能够精准提取像链接标签 <a> 等所需信息。这让我感受到编程在处理网络信息方面的强大能力,原本繁琐的手动查找信息的方式被高效的代码采集所替代。虽然目前只是初步接触,但已经打开了一扇通往高效信息获取的大门。后续我会继续深入学习相关知识,不断练习,提升自己运用 aardio 进行网页爬虫的技能,更好地探索网络信息的世界。




    非业余 - aardio 编程语言 - 非官方问答社区
    风行者三期培训:Aardio+Python+Flutter,1000集课程让你成为全栈开发高手!https://mp.weixin.qq.com/s/_WOoHFtITUyLk2k7BXYGkg
    Aardio培训大揭秘,轻松上手打造个人项目!https://mp.weixin.qq.com/s/cr47qhp_Cpz0p57lbbPwug
    aardio风行者第二期培训班https://mp.weixin.qq.com/s/uB6XHUDnGSk0JlWuiBE9AA
    aardio风行者第三期培训班https://mp.weixin.qq.com/s/cdZcvFiAWhlYTaSrQGCPvA
    回复

    使用道具 举报

    *滑块验证:
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    Archiver|手机版|小黑屋|非业余 - aardio 编程语言 - 非官方问答社区 知道创宇云防御

    GMT+8, 2025-5-12 19:29 , Processed in 0.120152 second(s), 31 queries .

    Powered by Discuz! X3.5

    © 2001-2025 Discuz! Team.

    快速回复 返回顶部 返回列表