[Python程序设计] 用Scrapy爬取学堂在线计算机类课程页面的信息

爬虫仅供学习交流使用,请勿用于商业用途,请勿高频爬取数据。由使用爬虫产生的纠纷笔者概不负责。

实验报告原文节选

2.2 遇到障碍:JS动态渲染页面

  • 编写spider.py时遇到了诡异的问题,xpath可以找到符合//*[@id = 'app']的一个标签,但是其是空的,内部没有任何内容。

  • 打印response.text,格式化html,得到的内容如下

    <!DOCTYPE html>
    <html>
      
      .....
        
      <body ondragstart="return!1">
        <div id="app"></div>
        <script>var hostName = window.location.hostname,
          _mtac = {
          
            performanceMonitor: 1,
            senseQuery: 1
          }; !
          function() {
          
            var e = document.createElement("script");
            e.src = "//pingjs.qq.com/h5/stats.js?v2.0.4",
            e.setAttribute("name", "MTAH5"),
            -1 != hostName.indexOf("jsmh.xuetangx.com") || -1 != hostName.indexOf("www.bnuonline.com") ? e.setAttribute("sid", "500693653") : (e.setAttribute("sid", "500676615"), e.setAttribute("cid", "500679396"));
            var t = document.getElementsByTagName("script")[0];
            t.parentNode.insertBefore(e, t)
          } 
  • 14
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值