• WEBSCRAPER关于Element的问题


    关注 码龄 粉丝数 原力等级 -- 被采纳 被点赞 采纳率 xiaa123404 2024-08-08 10:03 采纳率: 0% 浏览 3 首页/ 前端 / WEBSCRAPER关于Element的问题 html WEBSCRAPER中 Element 选择的集 ,其他页面的值会变动,这个怎么处理啊比如 这个页面的是.datatable tr:nth-of-type(3),另外个页面又变成了tr.trBgBlue。 收起 写回答 好问题 0 提建议 追加酬金 关注问题 微信扫一扫 点击复制链接 分享 邀请回答 编辑 收藏 删除 结题 收藏 举报 追加酬金 (90%的用户在追加酬金后获得了解决方案) 当前问题酬金 ¥ 0 (可追加 ¥500) ¥ 15¥ 20¥ 50¥ 100¥ 200 支付方式 扫码支付 二维码出错 点击刷新 支付金额 15 元 提供问题酬金的用户不参与问题酬金结算和分配 支付即为同意 《付费问题酬金结算规则》 结题 再想想 删除 再等等

    1条回答 默认 最新

    • 一直免费一直爽 2024-08-11 21:50
      关注

      以下回复参考:皆我百晓生券券喵儿等免费微信小程序作答:

      在进行Web Scraping时,尤其是涉及到动态网页的情况(如数据表格等),选择器可能会因为页面内容的变化而失效。为了应对这种情况,我们可以采用一些策略来确保我们的网页爬虫能够捕获到变化的数据:

      1. 缓存机制:可以考虑将网页抓取的结果保存在一个临时文件夹或者数据库中,这样即使网站内容发生改变,我们也可以通过访问这些存储的副本来获取最新的信息。

      2. 使用CSS预处理器:例如Sass、Less或Stylus,它们可以帮助你在编写HTML时就考虑到CSS样式的变化,并自动调整选择器以适应新的布局结构。

      3. 利用JavaScript API:当遇到动态加载的数据表时,可以尝试利用JavaScript库(如jQuery)来动态地更新元素。这可以通过设置事件监听器或者使用Ajax请求的方法来实现。

      4. 使用浏览器插件:有些浏览器插件提供了实时解析网页的能力,可以在一定程度上减少因页面刷新导致的选择器失效的风险。

      5. 自动化测试:对于频繁变化的页面,可以考虑使用自动化测试工具(如Selenium)来定期检查和验证网页的状态,从而保持网页数据的一致性。

      6. 分页处理:对于包含大量数据的页面,可以考虑使用分页功能,每次只抓取部分数据,然后等待服务器返回更多的数据。

      7. 手动干预:在某些情况下,手动控制网页的行为可能是必要的。例如,如果某个元素的属性发生了变化,可以直接在浏览器中编辑其HTML源代码并重新加载页面,或者在后台使用JavaScript脚本来执行相应的操作。

      请注意,虽然上述方法能有效提高网页爬取的稳定性,但仍然可能受到服务器行为、反爬策略等因素的影响。因此,在实际应用中,还需要结合业务场景和目标,灵活选择合适的策略。

      评论 编辑记录
      编辑
      预览

      报告相同问题?

    • 相关阅读:
      智慧矿山系统中的猴车安全监测与识别
      图论17-有向图的强联通分量-Kosaraju算法
      JSON基本使用
      rlwrap安装配置,sql命令回退、上下翻
      实用技巧:嵌入式人员使用http服务模拟工具模拟http服务器测试客户端get和post请求
      Python源码格式转换
      [CC2642r1] 移植EDEBUG并替换TI自带LOG -- JLINK(RTT)-- XDS110(UART),添加ATCMD,快速实现单例测试
      前端必备的25个CLI命令行
      Maven 自动化部署
      Go语言开发小技巧&易错点100例(十三)
    • 原文地址:https://ask.csdn.net/questions/8135803