zoukankan      html  css  js  c++  java
  • 再论pyquery

    发现对于QQ群

    空间文件的抓取毫无办法。

    QQ空间的代码可圈可点:

    做了一个js的“客户端”,第一次加载时,将文件的列表信息全部抓取出来,然后基于js进行翻页和排序。

    因此,想要抓取js渲染的dom,是不可能的,此处只能用js或者jq来操作了。

    对于这种情况,得用js写“爬虫”逻辑。

    附上qq空间群文件的抓取逻辑,如下:

    var getDom = function(cls){return document.getElementsByClassName(cls);};
    var clickPage = function(index){
       pages = getDom("ui_mr5");
       for(j=0;j<pages.length;j++){
           if(pages[j].innerText==(''+index))
              pages[j].click();	
       }
    };
    var showAllResource =function(page_count){
    	for(p = 1; p<=page_count; p++){
    		clickPage(p);
    		names = getDom("td_name");
    		sizes= getDom("td_size");
    		authors = getDom("td_uploaded_author");
    		times = getDom("td_time");
    		for(i =0 ;i<names.length;i++){console.log(names[i].title+","+sizes[i].innerText+","+authors[i].innerText+","+times[i].innerText);}
    	}
    };
    

     

    调用方法,直接在浏览器的console里面执行以上代码后调用:showAllResource(最大的页码); 

    转载请注明,本文来自:http://www.cnblogs.com/Tommy-Yu/p/4009765.html,谢谢!

  • 相关阅读:
    spring-security原理
    win10忘记密码,重置密码
    ELK环境搭建
    Centos8.2安装docker
    pgsql重启
    什么是网站跳出率
    随记
    javascript中apply、call和bind的区别
    Android与Mysql服务器通信
    CentOS 7 最小化安装之后安装Mysql
  • 原文地址:https://www.cnblogs.com/Tommy-Yu/p/4009765.html
Copyright © 2011-2022 走看看